Java Mailing List Archive

http://www.junlu.com/

Google
Google
Mailing List
Home
Forum Home
JBoss - Java Application Server
Struts - A MVC web framework
Tomcat - JSP/Servlet container
iText - An open source PDF Java Library
JDOM - JDOM XML Parser
J2EE - A mailing list for Java(tm) 2 Platform, Enterprise Edition
J2EE Pattern - An interest list for Sun Java Center J2EE Pattern Catalog
Servlet - A mailing list for discussion about Sun Microsystem's Java Servlet API Technology
JSP - A mailing list about Java Server Pages specification and reference
Struts & Hibernate
Subjects
JSP editor plugin for eclipse ?
org apache jasper JasperException: Unable to compile class for JSP
Tomcat: Connection reset by peer: socket write error
Cannot retrieve definition for form bean null
Struts Tiles Tutorial (free Struts training)
Where do I download Tomcat 4 0 6?
Data Access Object (DAO) pattern, example DAO 's
Where to download Tomcat v 4 1 24 from?
Tomcat 5 0 16 Requested resource not available
Oracle Connection Pooling in 3 2 2
Servlet : Session invalidate
Servlet action is currently unavailable
Tomcat/Struts Unicode Encoding/Decoding problems
Tomcat and webapplication specific java library path
Running a Simple JMS Example
Mapping in workers2 properties
org apache jasper JasperException
Cannot find message resources under key org apache struts action
   MESSAGE
problem with html:text bean throwing exception
Cannot find message resources under key org apache struts action MESSAGE
invalid direct reference problem with solution
Tool for jsp debug Try Sysdeo Eclipse Plugin
Tomcat 5 Cannot load JDBC driver class 'null ' SQL state: null
weblogic ejbc
java properties file
Jboss 3 2 3 Coyote Can 't re
Tomcat 5, Apache2 and mod jk2 integration problem
JBoss example problem new to J2EE
url string for connecting jboss to oracle
Value attribute of <html:checkbox
javax servlet ServletException: BeanUtils populate
HTTP Status 404 The requested resource is not available
5 0 18: Windows XP Pro vs Windows 2000
 
Shared cache best practices?

Shared cache best practices?

2004-01-08       - By Pradeep Kumar

 Back
Reply:     1     2     3     4     5     6     7     8     9     10     >>  

If you have the option to periodically update the cache, the best thing to do
is to have a low priority thread that will wake up at regular interval and
then invalidates and update the cache.

-- --Original Message-- --
From: Erik Beijnoff [mailto:erik@(protected)]
Sent: Wednesday, January 07, 2004 9:04 PM
To: J2EE-INTEREST@(protected)
Subject: Shared cache best practices?

Im facing a situation where my web server holds a rather extensive cache that
is retrieved from a database. I'm seeking a way to be able to connect as many
web servers as I'd like to that database and let each server be notified of
the updates to the database so that they can keep their caches up to date.
I'm looking for best practices in this area.

I'm aware of that one of the possibilities would be to put the cache on a
common machine that all web servers access. However, this is not quite the
solution I am looking for. The cache does not need to be same for all
servers. On the contrary actually. The system is structured in such a fashion
that each web server only holds in it's cache the information that is
requested on that particular server for the moment. This could mean that each
web server has completely different things in their caches. What I'm looking
for is a signaling system that tells all web servers that are using that
particular database that the data has changed in the database so that they
can invalidate that particular portion of their caches so that it can be
reread at the next request.

I suppose that keeping a separate cache server going also would create a
somewhat rather large amount of overhead, granted, it would though be easier
to gurantee consistency.

One of the options that I'm pondering would be a registration and
deregistration process in a table in the database whenever a new web server
connects to the it, and then let the servers signal updates to all the others
through http or RMI or some other suitable method.

Or is this one of those magic moments where EJB actually would make sense?

Regards Erik Beijnoff

===========================================================================
To unsubscribe, send email to listserv@(protected) and include in the body
of the message "signoff J2EE-INTEREST". For general help, send email to
listserv@(protected) and include in the body of the message "help".



DISCLAIMER:
This message (including attachment if any) is confidential and may be
privileged. Before opening attachments please check them for viruses and
defects. MindTree Consulting Private Limited (MindTree) will not be responsible
for any viruses or defects or any forwarded attachments emanating either from
within MindTree or outside. If you have received this message by mistake please
notify the sender by return  e-mail and delete this message from your system.
Any unauthorized use or dissemination of this message in whole or in part is
strictly prohibited.  Please note that e-mails are susceptible to change and
MindTree shall not be liable for any improper, untimely or incomplete
transmission.

===========================================================================
To unsubscribe, send email to listserv@(protected) and include in the body
of the message "signoff J2EE-INTEREST".  For general help, send email to
listserv@(protected) and include in the body of the message "help".


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft
-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http:
//www.w3.org/TR/REC-html40">

<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859 (See http://iso-8859.ora-code.com)-1">


<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 9">
<meta name=Originator content="Microsoft Word 9">
<link rel=File-List href="cid:filelist.xml@(protected)">
<!--[if gte mso 9]><xml>
<o:OfficeDocumentSettings>
 <o:DoNotRelyOnCSS/>
</o:OfficeDocumentSettings>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:WordDocument>
 <w:Zoom>0</w:Zoom>
 <w:DocumentKind>DocumentEmail</w:DocumentKind>
 <w:EnvelopeVis/>
</w:WordDocument>
</xml><![endif]-->
<style>
<!--
/* Font Definitions */
@(protected)
       {font-family:Tahoma;
       panose-1 (See http://ose-1.ora-code.com):2 11 6 4 3 5 4 4 2 4;
       mso-font-charset:0;
       mso-generic-font-family:swiss;
       mso-font-pitch:variable;
       mso-font-signature:553679495 -2147483648 8 0 66047 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
       {mso-style-parent:"";
       margin:0in;
       margin-bottom:.0001pt;
       mso-pagination:widow-orphan;
       font-size:12.0pt;
       font-family:"Times New Roman";
       mso-fareast-font-family:"Times New Roman";}
p.MsoAutoSig, li.MsoAutoSig, div.MsoAutoSig
       {margin:0in;
       margin-bottom:.0001pt;
       mso-pagination:widow-orphan;
       font-size:12.0pt;
       font-family:"Times New Roman";
       mso-fareast-font-family:"Times New Roman";}
span.EmailStyle15
       {mso-style-type:personal-reply;
       mso-ansi-font-size:10.0pt;
       mso-ascii-font-family:Arial;
       mso-hansi-font-family:Arial;
       mso-bidi-font-family:Arial;
       color:navy;}
@(protected) Section1
       {size:8.5in 11.0in;
       margin:1.0in 1.25in 1.0in 1.25in;
       mso-header-margin:.5in;
       mso-footer-margin:.5in;
       mso-paper-source:0;}
div.Section1
       {page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1027"/>
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
 <o:idmap v:ext="edit" data="1"/>
</o:shapelayout></xml><![endif]-->
</head>

<body bgcolor=white lang=EN-US style='tab-interval:.5in'>

<div class=Section1>

<p class=MsoNormal><span class=EmailStyle15><font size=2 color=navy face=Arial>
<span
style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:Arial'>If you
have the option to periodically update the cache, the best thing to do is to
have a low priority thread that will wake up at regular interval and then
invalidates and update the cache.<o:p></o:p></span></font></span></p>

<p class=MsoNormal><span class=EmailStyle15><font size=2 color=navy face=Arial>
<span
style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:Arial'><![if
!supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></font></span></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=black
face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma;color:black'>----
-Original
Message-- --<br>
<b><span style='font-weight:bold'>From:</span></b> Erik Beijnoff [mailto:erik
@(protected)]<br>
<b><span style='font-weight:bold'>Sent:</span></b> Wednesday, January 07, 2004
9:04 PM<br>
<b><span style='font-weight:bold'>To:</span></b> J2EE-INTEREST@(protected)<br>
<b><span style='font-weight:bold'>Subject:</span></b> Shared cache best
practices?</span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=3 face="Times New Roman"
><span
style='font-size:12.0pt'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p><
/span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial;color:black'>Im
facing a situation where my web server holds a rather extensive cache that is
retrieved from a database. I'm seeking a way to be able to connect as many web
servers as I'd like to that database and let each server be notified of the
updates to the database so that they can keep their caches up to date. I'm
looking for best practices in this area.</span></font><font color=black><span
style='color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=3 color=black
face="Times New Roman"><span style='font-size:12.0pt;color:black'>&nbsp;</span>
</font><font
color=black><span style='color:black;mso-color-alt:windowtext'><o:p></o:p><
/span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial;color:black'>I'm
aware of that one of the possibilities would be to put the cache on a common
machine that all web servers access. However, this is not quite the solution I
am&nbsp;looking for. The cache does not need to be same for all servers. On the
contrary actually. The system is structured in such a fashion that each web
server only holds in it's cache the information that is requested on that
particular server for the moment. This could mean that each web server has
completely different things in their caches. What I'm looking for is a
signaling system that tells all web servers that are using that particular
database
that the data has changed in the database so that they can invalidate that
particular portion of their caches so that&nbsp;it can be&nbsp;reread at the
next request. </span></font><font color=black><span style='color:black;
mso-color-alt:windowtext'><o:p></o:p></span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=3 color=black
face="Times New Roman"><span style='font-size:12.0pt;color:black'>&nbsp;</span>
</font><font
color=black><span style='color:black;mso-color-alt:windowtext'><o:p></o:p><
/span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial;color:black'>I
suppose that keeping a separate cache server going also would create a somewhat
rather large amount of overhead, granted, it would though be easier to gurantee
consistency.</span></font><font color=black><span style='color:black;
mso-color-alt:windowtext'><o:p></o:p></span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=3 color=black
face="Times New Roman"><span style='font-size:12.0pt;color:black'>&nbsp;</span>
</font><font
color=black><span style='color:black;mso-color-alt:windowtext'><o:p></o:p><
/span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial;color:black'>One of
the options that I'm pondering would be a registration and deregistration
process in a table in the database whenever a new web server connects to the
it, and then let the servers signal updates to all the others through http or
RMI or some other suitable method.</span></font><font color=black><span
style='color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=3 color=black
face="Times New Roman"><span style='font-size:12.0pt;color:black'>&nbsp;</span>
</font><font
color=black><span style='color:black;mso-color-alt:windowtext'><o:p></o:p><
/span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial;color:black'>Or is
this one of those magic moments where EJB actually would make sense?</span><
/font><font
color=black><span style='color:black;mso-color-alt:windowtext'><o:p></o:p><
/span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=3 color=black
face="Times New Roman"><span style='font-size:12.0pt;color:black'>&nbsp;</span>
</font><font
color=black><span style='color:black;mso-color-alt:windowtext'><o:p></o:p><
/span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial;color:black'>Regards
Erik Beijnoff</span></font><font color=black><span style='color:black;
mso-color-alt:windowtext'><o:p></o:p></span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=3 color=black
face="Times New Roman"><span style='font-size:12.0pt;color:black'>&nbsp;</span>
</font><font
color=black><span style='color:black;mso-color-alt:windowtext'><o:p></o:p><
/span></font></p>

</div>

<p></p><p>DISCLAIMER:<br>This message (including attachment if any) is
confidential and may be privileged. Before opening attachments please check
them for viruses and defects. MindTree Consulting Private Limited (MindTree)
will not be responsible for any viruses or defects or any forwarded attachments
emanating either from within MindTree or outside. If you have received this
message by mistake please notify the sender by return  e-mail and delete this
message from your system. Any unauthorized use or dissemination of this message
in whole or in part is strictly prohibited.  Please note that e-mails are
susceptible to change and MindTree shall not be liable for any improper,
untimely or incomplete transmission.</body>

</html>
===========================================================================
To unsubscribe, send email to listserv@(protected) and include in the body
of the message "signoff J2EE-INTEREST".  For general help, send email to
listserv@(protected) and include in the body of the message "help".
<p>
===========================================================================
To unsubscribe, send email to listserv@(protected) and include in the body
of the message "signoff J2EE-INTEREST".  For general help, send email to
listserv@(protected) and include in the body of the message "help".
<p>

©2008 junlu.com - Jax Systems, LLC, U.S.A.