On Wed, Feb 20, 2008 at 10:14:14AM +0100, Artur Grabowski wrote: > Geoff Steckel <[EMAIL PROTECTED]> writes: > > > Any argument to experience must be from similar actual > > implementations using "threads" and another model, such as multiple > > processes with interprocess communications. > > Sure. I'll pick up the challenge. > > At work we have a server that uses around 4GB RAM and runs on an 4 cpu > machine. It serves millions of tcp connections per hour. sharing the > memory without sharing pointer values is too inefficient since a big > amount of the memory used is a pre-computed cache of most common query > results. The service needs 4x4GB of RAM on the machine to be able to > reload the data efficiently without hitting disk, since hitting the > disk kills performance in critical moments and leads to > inconsistencies between the four machines that run identical instances > of this service.
While this kind of setup is well beyond my pay-grade, looking just at the issue of, in effect, using threads to share a cache to avoid hitting the disk, I wonder why using a memory filesystem as the common cache wouldn't work. No threads, shared data via the filesystem but that filesystem is in memory and quite fast. Doug.