Categories: BOINC

FOLLOW-UP: The evils of ‘Returning Results Immediately’

Miw of PrimeGrid has raised some interesting points regarding my thoughts in this thread:
http://www.primegrid.com/orig/forum_thread.php?id=432&sort=5

First off let me say that Miw is right about the per TCP connection overhead. It applies to file uploads, file downloads, scheduler requests, trickles, forum requests, and now AMS requests.

I also agree with him that if a public facing BOINC project on a single server it would keel-over after an outage because of the file upload requests.

The thing about both the upload and download servers is that their can be any number of them for a project. As a matter of fact all the components except for the scheduler and database can exist on any number of machines. So most of the time we are involved in scale-up vs scale-out debates when brainstorming about future optimizations.

I’ll have to check on the scheduler again to be sure though, as I have a funny feeling I remember some code from Carl C. of CPDN that fiddled around with the feeder query and he may have introduced a way to run multiple schedulers.

The basic gist I want to get across though is that most, if not all, of the components in a BOINC server farm can scale for a project with unlimited funds. Only the database server proves to be difficult to change out as S@H experienced during their database server upgrade. In BOINC’s defense on that issue, I would like to point out that the database file formats changed when switching from Solaris to Linux, so the database had to be dumped to a flat file and reloaded on the new machine.

I believe that the file upload and download servers are used as dams most of the time to keep the rest of the system from keeling over, for instance if the those servers were not keeping the hoards of machines at bay and everything was gated on the database then after an outage nobody would be able to use the website, or read/post in the forums.

By far the easiest servers to replace in a BOINC server farm are the upload/download servers, all you need is a Linux box and Apache. File uploads are handled with a small CGI program.

I’ll talk to David tomorrow and see if accepting 2 or 3 files during an upload request makes since, it sounds good on the surface but I’m concerned about the increased disk bandwidth requirements. S@H for instance has a shared disk array for file uploads and downloads, when that array is bogged down then the whole pipeline boggs down.

Thanks for all the great feedback.

—– Rom

References:
http://en.wikipedia.org/wiki/TCP/IP
http://httpd.apache.org/
http://en.wikipedia.org/wiki/Common_Gateway_Interface

Original Article:
BOINC Client: The evils of ‘Returning Results Immediately’

This post was last modified on December 15, 2020 11:59 am

Rom Walton

Share
Published by
Rom Walton

Recent Posts

ROMWNET Upgrades (2020)

2020 turns out to be a hardware refresh year for ROMWNET.   I've upgraded the network…

3 years ago

Blog Migration (Cont’d)

After a bit of research and experimentation, I figured out how to fix my permalink…

3 years ago

Blog Migration

After a seriously long time, I've finally upgraded my blogging platform to WordPress. Dasblog was…

3 years ago

FOLLOWUP: New BOINC Manager Design

Original post: New BOINC Manager Design Project: BOINC Sentinels Some time back, I started BOINC…

10 years ago

New project name needed

So I have been working on a little side project on and off for a…

14 years ago

BOINC Screen Saver Issue

Well I believe I have found and fixed the screen saver issue that has been…

15 years ago