> I'm being asked about the possibility of creating an extension that will
> cache some data from a MySQL DB in-memory. I've been reading various
> online resources regarding building extensions and cannot find an answer
> to the following question... Is there a way to create a hashtable in the
> extension which will be available to all of the Apache children without
> resorting to shared memory?
>
You want to *share* something in *memory* between two processes. Yep, ya
pretty much need shared memory...
> It's important that only one instance of the data exists for two
> reasons... 1) It's a fairly large amount of data and 2) it will change as
> the application runs. I've created a small test extension using
> MODULE_GLOBALS the results of which suggest that these variables are per
> process. I'm just looking for some confirmation that shared memory is the
> way to go before I jump down that particular black hole.
>
Yes, Module Globals are per-process (or per-thread if your under a threaded
sapi). In either case, these are specifically designed to *prevent*
concurrent requests from accessing the same data.
-Sara