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)
> 
> 
> 

Reply via email to