Does this mean you want a different name for "registerInterest(key)"?
This mechanism is the topic subscription mechanism in GemFire client.

--
Mike Stolz
Principal Engineer, GemFire Product Manager
Mobile: 631-835-4771

On Tue, Nov 15, 2016 at 3:31 PM, Amit Pandey <[email protected]>
wrote:

> Hey Michael,
>
> Great thanks. I will try out near cache.
>
> Also is it too much to ask you or John to consider adding a Topic
> abstraction in Geode. Since the mechanics are already there I guess it can
> be done relatively easily.
>
> Regards
>
> On Tue, Nov 15, 2016 at 9:27 PM, Michael Stolz <[email protected]> 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 <[email protected]>
>> 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 <[email protected]
>>> > 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 <[email protected]> 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/t
>>>>> opics/cache_xml.html#subscription-attributes
>>>>> [2] 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
>>>>> [4] 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
>>>>>
>>>>>
>>>>> On Mon, Nov 14, 2016 at 2:57 PM, Michael Stolz <[email protected]>
>>>>> 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
>>>>>>
>>>>>> On Mon, Nov 14, 2016 at 3:02 PM, John Blum <[email protected]> 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:}</pr
>>>>>>> op>
>>>>>>> </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/javado
>>>>>>> c/org/apache/geode/cache/CacheFactory.html
>>>>>>> [2] https://github.com/jxblum/pivotal-gemfire-clientserver-examples
>>>>>>> [3] https://github.com/jxblum/contacts-application/tree/apache-geode
>>>>>>>
>>>>>>>
>>>>>>> On Mon, Nov 14, 2016 at 11:28 AM, Michael Stolz <[email protected]>
>>>>>>> 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
>>>>>>>>
>>>>>>>> On Sat, Nov 12, 2016 at 12:41 PM, Amit Pandey <
>>>>>>>> [email protected]> 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
>>>>>>> john.blum10101 (skype)
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> -John
>>>>> 503-504-8657
>>>>> john.blum10101 (skype)
>>>>>
>>>>
>>>>
>>>
>>
>

Reply via email to