Please add Edy Sardilli (copied here) to this distribution list, thanks. Michael Vos Pivotal Media Specialist 310-804-7223 | m...@pivotal.io
> On Nov 15, 2016, at 7:57 AM, Michael Stolz <mst...@pivotal.io> wrote: > > You can still have a near cache embedded into your app using the > client/server model of GemFire. Just declare the Region on the client side to > be CACHING_PROXY and it will keep a local cache that can be updated from > changes on the servers. > > -- > Mike Stolz > Principal Engineer, GemFire Product Manager > Mobile: 631-835-4771 > > On Tue, Nov 15, 2016 at 12:47 AM, Amit Pandey <amit.pandey2...@gmail.com > <mailto:amit.pandey2...@gmail.com>> wrote: > Also for clarification I was planning to do it for a couple of replicated > caches. > > > > On Tue, Nov 15, 2016 at 10:58 AM, Amit Pandey <amit.pandey2...@gmail.com > <mailto:amit.pandey2...@gmail.com>> wrote: > Thanks John and Michael. > > I can use client/server no problem. > > However my reason to use an embedded Geode was that based on my experience > with other memory Grids its always faster to have it embedded. And I have > some requirements for extremely low latency so I thought it would have saved > some time and given better latency than having the client/server model. > > On Tue, Nov 15, 2016 at 9:15 AM, John Blum <jb...@pivotal.io > <mailto:jb...@pivotal.io>> wrote: > @Mike - correct me if I am wrong, and I wouldn't recommend this, but... > > You could emulate a pub/sub system even with peers by taking advantage of a > Subscription > <http://geode.incubator.apache.org/docs/guide/reference/topics/cache_xml.html#subscription-attributes> > [1] policy on peer Regions (REPLICATE or PARTITION, either or). I.e. a > Region's Subscription policy controls what data is replicated between them, > which in effect, could serve a similar purpose to topics and what data events > a peer Region receives. Then a CacheListener registered on the Region could > process events when entries (of interests expressed through the Region > Subscription policy) are updated. > > Of course, this is a superficially limited approach and not advisable for any > practical use of a Region's Subscription policy, IMO. First, you would need > to pre-populate the Region with keys (for events) you are interested in. > Then, you would set the Subscription interest-policy to "cache-content" where > your peer would then be notified of updates from any other peer also defining > the same Region and, as well, also storing the same key/value. So, as you > can see, this is not a intended use of this feature, but it is doable. You > can read additional information here > <http://geode.incubator.apache.org/docs/guide/developing/events/configure_p2p_event_messaging.html> > [2]. > > As @Mike points out, a better approach it to use the client/server topology > <http://geode.incubator.apache.org/docs/guide/topologies_and_comm/cs_configuration/chapter_overview.html> > [3] and Register Interests > <http://geode.incubator.apache.org/docs/guide/developing/events/configure_client_server_event_messaging.html> > [4], or better yet, use CQs > <http://geode.incubator.apache.org/docs/guide/developing/continuous_querying/chapter_overview.html> > [5]. > > Hope this helps. > > Cheers, > John > > > [1] > http://geode.incubator.apache.org/docs/guide/reference/topics/cache_xml.html#subscription-attributes > > <http://geode.incubator.apache.org/docs/guide/reference/topics/cache_xml.html#subscription-attributes> > [2] > http://geode.incubator.apache.org/docs/guide/developing/events/configure_p2p_event_messaging.html > > <http://geode.incubator.apache.org/docs/guide/developing/events/configure_p2p_event_messaging.html> > [3] > http://geode.incubator.apache.org/docs/guide/topologies_and_comm/cs_configuration/chapter_overview.html > > <http://geode.incubator.apache.org/docs/guide/topologies_and_comm/cs_configuration/chapter_overview.html> > [4] > http://geode.incubator.apache.org/docs/guide/developing/events/configure_client_server_event_messaging.html > > <http://geode.incubator.apache.org/docs/guide/developing/events/configure_client_server_event_messaging.html> > [5] > http://geode.incubator.apache.org/docs/guide/developing/continuous_querying/chapter_overview.html > > <http://geode.incubator.apache.org/docs/guide/developing/continuous_querying/chapter_overview.html> > > > On Mon, Nov 14, 2016 at 2:57 PM, Michael Stolz <mst...@pivotal.io > <mailto:mst...@pivotal.io>> wrote: > Ok Got it. > But Peer caches can't do pub/sub unless they go to the extra trouble of > setting up a pool, whereas clients get a pool automatically. > > -- > Mike Stolz > Principal Engineer, GemFire Product Manager > Mobile: 631-835-4771 <tel:631-835-4771> > On Mon, Nov 14, 2016 at 3:02 PM, John Blum <jb...@pivotal.io > <mailto:jb...@pivotal.io>> wrote: > Well, what I think Amit means (correct me if I am wrong) is the Geode > embedded peer cache use case, meaning the application is also a peer cache in > the cluster, while not the most common UC (nor maybe recommended in most > UCs), it is a valid UC none-the-less. > > It is to have your application participate a peer in the Geode cluster by > simply constructing a peer Cache using the CacheFactory > <http://geode.incubator.apache.org/releases/latest/javadoc/org/apache/geode/cache/CacheFactory.html> > [1], and setting the locators property have your application join existing > cluster, something like so... > > Cache peerCache = new CacheFactory().set("locators", > "<host>[<port>]").set(..)...create(); > > You can also do this in SDG with... > > <util:properties id="geodeProperties"> > <prop key="name">MyApplication</prop> > <prop key="mcast-port">0</prop> > <prop key="log-level">${geode.log.level:config}</prop> > <prop key="locators">${geode.locators.host-port:localhost[10334]}</prop> > <prop key="start-locator">${geode.locator.embedded.host-port:}</prop> > </util:properties> > > <gfe:cache properties-ref="geodeProperties"/> > > The <gfe:cache> element created a "peer" cache (as opposed to the > <gfe:client-cache> element). > > You are then free to create Regions used by your application as necessary. > > I have examples of both GemFire peer and client/server configurations here > <https://github.com/jxblum/pivotal-gemfire-clientserver-examples> [2] and > here <https://github.com/jxblum/contacts-application/tree/apache-geode> [3] > (see configuration examples). > > Hope this helps. > > Cheers, > John > > [1] > http://geode.incubator.apache.org/releases/latest/javadoc/org/apache/geode/cache/CacheFactory.html > > <http://geode.incubator.apache.org/releases/latest/javadoc/org/apache/geode/cache/CacheFactory.html> > [2] https://github.com/jxblum/pivotal-gemfire-clientserver-examples > <https://github.com/jxblum/pivotal-gemfire-clientserver-examples> > [3] https://github.com/jxblum/contacts-application/tree/apache-geode > <https://github.com/jxblum/contacts-application/tree/apache-geode> > > > On Mon, Nov 14, 2016 at 11:28 AM, Michael Stolz <mst...@pivotal.io > <mailto:mst...@pivotal.io>> wrote: > Geode clients have the ability to registerInterest(key) which works a lot > like a topic. > > Not sure what you mean by using Geode embedded and with a cluster of external > processes, but what I THINK you're asking is, can you use the Geode > client/server model where the client is embedded into your application > process and the servers that are responsible for holding all the data are in > a separate cluster. The answer is YES, that is the most common configuration > for Geode usage. > > > > -- > Mike Stolz > Principal Engineer, GemFire Product Manager > Mobile: 631-835-4771 <tel:631-835-4771> > > On Sat, Nov 12, 2016 at 12:41 PM, Amit Pandey <amit.pandey2...@gmail.com > <mailto:amit.pandey2...@gmail.com>> wrote: > Hi Guys, > > Is there any example of public subscribe with geode? Hazelcast and Ignite > seem to have topics, is there any such thing in Geode. > > Also I want to use Geode embedded. Can I use it with a cluster of external > processes as well. > > Regards > > > > > -- > -John > 503-504-8657 <tel:503-504-8657> > john.blum10101 (skype) > > > > > -- > -John > 503-504-8657 <tel:503-504-8657> > john.blum10101 (skype) > > >