Re: sync cayenne cache in two web apps

From: Malcolm Edgar (malcolm.edga..mail.com)
Date: Wed Jul 29 2009 - 21:00:07 EDT

  • Next message: Juergen Saar: "The right way to populate meaningful keys"

    You can also use OSCache with Cayenne and have the cached queries
    expire frequently, i.e. after 30 seconds

    regards Malcolm Edgar

    On Thu, Jul 30, 2009 at 6:36 AM, Mike Kienenberger<mkienen..mail.com> wrote:
    > Before you make your own custom solution, you might want to read up on
    > Javagroup.  It might not be a problem to use it in your environment.
    >
    > The main page starts off with this:
    >
    > http://www.jgroups.org/
    > ==================================
    > JGroups is a toolkit for reliable multicast communication.
    > (Note that this doesn't necessarily mean IP Multicast, JGroups can
    > also use transports such as TCP).
    >
    > [...]
    >
    > JGroups comes with a number of protocols (but anyone can write their
    > own), for example
    >    * Transport protocols: UDP (IP Multicast), TCP, JMS
    >
    > ==================================
    >
    > So even if the TCP version doesn't do what you need, you might find it
    > easier to write your own Jgroup protocol than to write your own
    > cayenne event bridge.  It's more likely to be documented and there
    > will be more examples/end users to ask questions of.  There might even
    > be a tomcat shared session protocol out there somewhere.
    >
    >
    > On Wed, Jul 29, 2009 at 4:16 PM, Tobias
    > Schoessler<tobias.schoessle..mail.com> wrote:
    >> well i am reading this from the documentation:
    >>
    >> "... At the minimum, JMS setup requires a JMS server running, and subjects
    >> for each of the DataDomains to be configured. JavaGroups is peer-to-peer
    >> library that is embedded into applications. Default configuration provided
    >> by CayenneModeler will work out of the box, provided that IP multicast is
    >> enabled on the network."
    >>
    >> for the JMS solution the JMS server setup is a problem
    >> for the JavaGroups setup the "IP multicast is enabled on the network."  is a
    >> problem
    >>
    >> so  for the custom tranport mechanism that you mentioned I stumbled upon
    >> this here
    >>
    >> http://jee-bpel-soa.blogspot.com/2009/06/session-sharing-in-apache-tomcat.html
    >>
    >> which seems to describe cross context data sharing on tomcat web contexts
    >>
    >> but is there any code to look at to see how a custom transport mechanism can
    >> be setup?
    >>
    >> Tobias
    >>
    >>
    >> On Wed, Jul 29, 2009 at 8:28 PM, Mike Kienenberger <mkienen..mail.com>wrote:
    >>
    >>> I've never set it up, but it's easily configurable.
    >>>
    >>> If you don't like the javagroups or JMS methodologies, you can define
    >>> your own -- I don't know what tomcat app-data-sharing ability is
    >>> available -- it probably depends on the container, but I don't
    >>> remember reading about any in the past.
    >>>
    >>> However, the docs seem to indicate that using Javagroups is pretty
    >>> painless with no external configuration to deal with.
    >>>
    >>> I have a Cayenne 1.1.x application I wrote that used remote
    >>> notification internally to broadcast events between sessions, so I
    >>> know it's not difficult to set up and define your own event
    >>> broadcaster.  My guess is that doing it for javagroups is pretty easy
    >>> since it sounds like a matter of just filling in the forms on the
    >>> modeler.
    >>>
    >>> On Wed, Jul 29, 2009 at 2:15 PM, Tobias
    >>> Schoessler<tobias.schoessle..mail.com> wrote:
    >>> > Thanks Mike,
    >>> >
    >>> > so the answer is yes, this can only be done using remote notification? is
    >>> > this correct?
    >>> >
    >>> > Isn't there a way to share the cache among two web application scopes
    >>> > without going through the hassle of setting up remote notification?
    >>> >
    >>> > When the two webapps are running on the same physical machine, inside the
    >>> > same application server this seems overkill.
    >>> >
    >>> > Tobias
    >>> >
    >>> > On Wed, Jul 29, 2009 at 6:50 PM, Mike Kienenberger <mkienen..mail.com
    >>> >wrote:
    >>> >
    >>> >> Yes,
    >>> >>
    >>> >> Here's a Cayenne 2.0 document on it:
    >>> >>
    >>> >> http://cayenne.apache.org/doc20/configuring-caching-behavior.html
    >>> >>
    >>> >> For 3.0:
    >>> >>
    >>> >> http://cayenne.apache.org/doc/configuring-caching-behavior.html
    >>> >>
    >>> >> On Wed, Jul 29, 2009 at 12:46 PM, Tobias
    >>> >> Schoessler<tobias.schoessle..mail.com> wrote:
    >>> >> > Hi,
    >>> >> >
    >>> >> > is it possible to sync the cayenne cache of two web applications
    >>> running
    >>> >> in
    >>> >> > the same tomcat?
    >>> >> >
    >>> >> > I observe one web app showing outdated data when the other is
    >>> committing
    >>> >> > updates. Both apps are using the same mapping configuration.
    >>> >> >
    >>> >> > Do I need to use remote notification for this?
    >>> >> >
    >>> >> > thanks
    >>> >> >
    >>> >> > Tobias
    >>> >> >
    >>> >>
    >>> >
    >>>
    >>
    >



    This archive was generated by hypermail 2.0.0 : Wed Jul 29 2009 - 21:00:58 EDT