JDG Remote Client-Server Mode Usage Example: Difference between revisions
Jump to navigation
Jump to search
(4 intermediate revisions by the same user not shown) | |||
Line 5: | Line 5: | ||
=Overview= | =Overview= | ||
The example is deployed in a wrapper servlet, to facilitate interaction. | The example is deployed in a wrapper servlet, to facilitate interaction with the EAP JEE container. | ||
=GitHub= | =GitHub= | ||
Line 48: | Line 48: | ||
cb.tcpNoDelay(true) | cb.tcpNoDelay(true) | ||
.connectionPool() | |||
.numTestsPerEvictionRun(3) | |||
.testOnBorrow(false) | |||
.testOnReturn(false) | |||
.testWhileIdle(true) | |||
.addServer() | |||
.host(JDG_SERVER_IP_ADDRESS) | |||
.port(JDG_SERVER_IP_PORT); | |||
Configuration c = cb.build(); | Configuration c = cb.build(); | ||
Line 61: | Line 61: | ||
=Create a RemoteCacheManager and a Cache= | =Create a RemoteCacheManager and a Cache= | ||
<pre> | |||
import org.infinispan.client.hotrod.RemoteCacheManager; | |||
import org.infinispan.commons.api.BasicCache; | |||
... | |||
RemoteCacheManager remoteCacheManager = new RemoteCacheManager(c); | |||
BasicCache cache = remoteCacheManager.getCache(); | |||
... | |||
</pre> | |||
=Features= | =Features= | ||
==Basic API== | ==Basic API== | ||
<pre> | |||
cache.put("some-key", "some value"); | |||
String s = cache.get("some-key"); | |||
</pre> | |||
==Transactions== | ==Transactions== | ||
Not available in remote client/server mode. |
Latest revision as of 17:19, 4 May 2017
Internal
Overview
The example is deployed in a wrapper servlet, to facilitate interaction with the EAP JEE container.
GitHub
Maven
<dependency> <groupId>org.infinispan</groupId> <artifactId>infinispan-remote</artifactId> <version>8.3.0.Final-redhat-1</version> <scope>provided</scope> </dependency>
If support for remote client-server JDG is deployed within the target EAP (preferred), declare the dependency <scope>provided</scope> and configure the jboss-deployment-structure.xml as shown:
<?xml version="1.0" encoding="UTF-8"?> <jboss-deployment-structure> <deployment> <dependencies> <module name="org.infinispan.client.hotrod" slot="jdg-7.0"/> </dependencies> </deployment> </jboss-deployment-structure>
Otherwise, all required dependencies it with your deployment, by not declaring them "provided".
HotRod Client Configuration
import org.infinispan.client.hotrod.configuration.Configuration; import org.infinispan.client.hotrod.configuration.ConfigurationBuilder; ... ConfigurationBuilder cb = new ConfigurationBuilder(); cb.tcpNoDelay(true) .connectionPool() .numTestsPerEvictionRun(3) .testOnBorrow(false) .testOnReturn(false) .testWhileIdle(true) .addServer() .host(JDG_SERVER_IP_ADDRESS) .port(JDG_SERVER_IP_PORT); Configuration c = cb.build();
Create a RemoteCacheManager and a Cache
import org.infinispan.client.hotrod.RemoteCacheManager; import org.infinispan.commons.api.BasicCache; ... RemoteCacheManager remoteCacheManager = new RemoteCacheManager(c); BasicCache cache = remoteCacheManager.getCache(); ...
Features
Basic API
cache.put("some-key", "some value"); String s = cache.get("some-key");
Transactions
Not available in remote client/server mode.