No, if you want to stick it to that thats okay too.

But I guess if there is something like topic.addListner() it makes it more
intuitive. I know that apart from may be readability and that too in my
subjective opinion this is same.

On Wed, Nov 16, 2016 at 6:01 AM, Michael Stolz <[email protected]> wrote:

> 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/apac
>>>>>>>> he-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