3 Replies Latest reply on Feb 27, 2013 8:07 AM by rhusar

    Infinispan possible replication topologies

    gnanagurus

      Hello Infinispan Team,

       

      I am using Infinispan for caching. The objective is to write the application data(Key Value pairs) to the Infinispan cache. I want to understand the possibility of replication among the cluster of Infinispan nodes.

       

      Please comment the possibility of all the three topologies listed below.

       

      Infinispan_Cluster_One.png

      1) Can the application write data(Key value pairs) to the embedded infinispan which comes with EAP6/AS7 ? If that is possible, Can the embedded infinispan be configured with standalone data grid platform to achieve replication. Such that data is not lost .

       

      Infinispan_Cluster_Two.png

      2) Can an application running on EAP6 write its data directly to a cache running on Data grid platform ? Is there any configuration option  or example available for this ? ( Without the use of REST/HOTROD/MEMCACHED Protocols )

       

      Infinispan_Cluster_Three.png

       

      3) I am very sure that this topology is possible. Any application can send data to the clustered standalone data grid platforms. For achieving this clustering topology, which file is to be configured in JBDG ?

       

      Sorry for the basic questions, I got confused with the product structure of Infinispan Community edition & JBoss Data Grid Platform. I couldnt get any straight forward approach to cluster JBDG Platform.

       

      It would be great If you can point out some example or quickstarts to test clustering in JBDG.

       

      I have created diagrams to make it understandable. Please correct me if my approach is wrong.

       

       

      Regards

      Guru

      @gnanagurus

        • 1. Re: Infinispan possible replication topologies
          rhusar

          Awesome diagrams. For the sake of making the topology clearer/more obvious I suggest to use at least 2 Application (AS/EAP) nodes. Moreover, sometimes its clearer to picture nodes as JVM so that its clear what is running where.

           

          Just in terms of AS and Infinispan, lets separate the use case into:

           

          1. remote access - this is 3) and actually 2), from your application node you access the Infinispan cluster using hotrod/memcached/rest/etc
          2. embedded access - this is only possible if the cache is running in the same JVM as the AS with the application. You can do this with AS by connecting multuple instances in a cluster, running the application only on the few of them, but have a custom cache running on all the nodes. With a process callled 'trimming' you can trim down the AS instances only to run core subsystems and jgroups + infinispan subsystems.

           

          However, if you are actually talking about enterprise EAP and JDG (not JBDG) offering please ask at the enterprise customer portal for what exactly is supported and how (e.g. JDG and EAP run different versions of Infinispan).

           

          If by any chance, you meant running standalone community Infinispan cluster (in a  datagrid fashion) and JBoss AS, I would actually recommend going the trimming approach since its easier to manage the same software just with different configuration.

          • 2. Re: Infinispan possible replication topologies
            gnanagurus

            That was a great suggestion on my diagrams. Let me look into the trimming option.

             

            By the way I sucessfully used remote cache store with in-memory infinispan, I have pasted the configuration below which may help any other JBoss folks.

             

            <infinispan xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

            xsi:schemaLocation="urn:infinispan:config:5.2 http://www.infinispan.org/schemas/infinispan-config-5.2.xsd">

              <namedCache name="foo">

              <loaders>

              

               <loader class="org.infinispan.loaders.remote.RemoteCacheStore" fetchPersistentState="true"

                                                                      ignoreModifications="false" purgeOnStartup="false">

              <properties>

              <property name="hotRodClientPropertiesFile" value="hotrod-client.properties"/>

              <property name="useDefaultRemoteCache" value="true"/>

              </properties>

            </loader>

              </loaders>

            </namedCache>

            </infinispan>


            Thanks

            Guru

            @gnanagurus

            gnanaguru.com

            • 3. Re: Infinispan possible replication topologies
              rhusar

              Please check what is supported and recommended for JDG/EAP deployments, here is a link to the customer support portal https://access.redhat.com/support/.