Return-Path: Delivered-To: apmail-perl-modperl-archive@www.apache.org Received: (qmail 47974 invoked from network); 8 Mar 2006 05:05:55 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 8 Mar 2006 05:05:55 -0000 Received: (qmail 94951 invoked by uid 500); 8 Mar 2006 05:05:49 -0000 Delivered-To: apmail-perl-modperl-archive@perl.apache.org Received: (qmail 94925 invoked by uid 500); 8 Mar 2006 05:05:48 -0000 Mailing-List: contact modperl-help@perl.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: List-Id: Delivered-To: mailing list modperl@perl.apache.org Received: (qmail 94913 invoked by uid 99); 8 Mar 2006 05:05:48 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 07 Mar 2006 21:05:48 -0800 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=HTML_MESSAGE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: domain of willfould@gmail.com designates 64.233.184.195 as permitted sender) Received: from [64.233.184.195] (HELO wproxy.gmail.com) (64.233.184.195) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 07 Mar 2006 21:05:47 -0800 Received: by wproxy.gmail.com with SMTP id i31so98056wra for ; Tue, 07 Mar 2006 21:05:26 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:mime-version:content-type; b=Xtp2Xk5jPemA4BJ8MLNiHO07K7s+Tr8EbWpE1IHjTHZFzSRAmzHjiaxy8TzqeFDQUMHe2L8b9ZM7rMxgP99gLxN6sUnirbBUIzUYJBdu3UCCZDXhJq2JUS7wmdrO8DyqGXjiApUFeijO6MSHJy3l7/hlwSmYeBNlVTZsfp3HhP8= Received: by 10.35.36.13 with SMTP id o13mr361357pyj; Tue, 07 Mar 2006 21:05:26 -0800 (PST) Received: by 10.35.71.15 with HTTP; Tue, 7 Mar 2006 21:05:26 -0800 (PST) Message-ID: <4b3372230603072105l30e34a28v6861ddd209597f0c@mail.gmail.com> Date: Tue, 7 Mar 2006 21:05:26 -0800 From: "Will Fould" To: modperl@perl.apache.org Subject: changing global data strategy MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_10593_29927286.1141794326668" X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N ------=_Part_10593_29927286.1141794326668 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline an old issue: "a dream solution would be if all child processes could *update* a large global structure." we have a tool that loads a huge store of data (25-50Mb+) from a database into many perl hashes at start up: each session needs access to al= l these data but it would be prohibitive to use mysql or another databases fo= r multiple, large lookups (and builds), at each session: there are quite a few structures, each are very big. if the data never changed, it would be trivial; load/build just at start-up. but since the data changes often, we use a semaphore strategy to determine when childern should reload/rebuild the structures (after updates have been made). this is painful. there has got to be a better way of doing this - I've seen posts on memcache and other, more exotic animals. can someone point me in the right direction: a reference/read, or a stable modules that exist for our situation? thanks in advance, william ------=_Part_10593_29927286.1141794326668 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline
an old issue:
   "a dream solution would be if all child process= es could *update* a large global structure."
 
we have a tool that loads a huge store of data (25-50Mb+) from a = database into many perl hashes at start up: each session needs access&= nbsp;to all these data but it would be prohibitive to use my= sql or another databases for multiple, large lookups (and builds), at = each session:  there are quite a few structures, each are very big.
 
if the data never changed, it would be trivial; load/bu= ild just at start-up. 
 
but since the data changes often, we use a semaphore strategy&nbs= p;to determine when childern should reload/rebuild the structures (aft= er updates have been made).
 
this is painful. there has got to be a better way of doing this - = ;I've seen posts on memcache and other, more exotic animals.
 
can someone point me in the right direction: a reference/read, or a&nb= sp;stable modules that exist for our situation?
 
 
thanks in advance,
william
------=_Part_10593_29927286.1141794326668--