我创建了一个测试gemfire服务器。
gfsh>start定位器--名称=测试--绑定地址=localhost-端口=40404
我的java代码是:
ClientCacheFactory cf = new ClientCacheFactory().addPoolServer( "localhost", 40404);
ClientCache cache = cf.setPdxReadSerialized( true).create();
ClientRegionFactory rf = cache.createClientRegionFactory(ClientRegionShortcut.PROXY);
Region region = rf.create( "People");但是我试着跑,它没有连接gemfire定位器。我不知道怎么做?
[warn 2017/07/02 06:53:51.363 HKT <poolTimer-DEFAULT-2> tid=0x17] Could not connect to: localhost:40404
java.io.EOFException
at java.io.DataInputStream.readByte(DataInputStream.java:267)
at com.gemstone.gemfire.internal.cache.tier.sockets.HandShake.greet(HandShake.java:1291)
at com.gemstone.gemfire.cache.client.internal.ConnectionImpl.connect(ConnectionImpl.java:111)
at com.gemstone.gemfire.cache.client.internal.ConnectionFactoryImpl.createClientToServerConnection(ConnectionFactoryImpl.java:134)
at com.gemstone.gemfire.cache.client.internal.ConnectionFactoryImpl.createClientToServerConnection(ConnectionFactoryImpl.java:252)
at com.gemstone.gemfire.cache.client.internal.pooling.ConnectionManagerImpl.prefillConnection(ConnectionManagerImpl.java:794)
at com.gemstone.gemfire.cache.client.internal.pooling.ConnectionManagerImpl.prefill(ConnectionManagerImpl.java:737)
at com.gemstone.gemfire.cache.client.internal.pooling.ConnectionManagerImpl$PrefillConnectionsTask.run2(ConnectionManagerImpl.java:888)
at com.gemstone.gemfire.cache.client.internal.PoolImpl$PoolTask.run(PoolImpl.java:1260)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)信息2017/07/02 06:53:51.421 HKT tid=0xc VM正在退出-关闭分布式系统
信息2017/07/02 06:53:51.422 HKT tid=0xc GemFireCacheid = 915500720;isClosing = true;isShutDownAll = false;closingGatewayHubsByShutdownAll = false;created = Sun 702:53:51 HKT 2017;server = false;copyOnRead = false;lockLease = 120;lockTimeout = 60: Now。
信息2017/07/02 06:53:51.436 HKT tid=0xc重置池PS老Gen上的原始MemoryPoolMXBean堆阈值字节0
资讯2017/07/02 06:53:51.467 HKT tid=0xc销毁连接池预设
发布于 2017-07-02 01:04:32
看起来您可能没有创建任何服务器(服务器保存数据,定位器帮助客户端和其他集群成员找到服务器)。如果没有,那么您还需要启动至少一个服务器。请查看文档,但是应该是这样的:"gfsh start server --name=server 1 --dir=workdir --locator=localhost40404 --server-port=1234“
发布于 2017-07-03 02:22:39
我使用java配置bean来连接定位器,它仍然连接失败。但是当我使用CacheFactory创建cache.xml时。举例说明。
clientCacheFactory.set("cache-xml-file", "gemfire-clientCache.xml");它可以连接
<pool name="client"
subscription-enabled="true">
<locator host="172.16.175.145" port="10334"/>
</pool>
<region name="test" refid="PROXY"/>
<region name="test1" refid="PROXY">
</region>但是当我使用clientCacheFactory.addLocators()时,不要设置cache.xml.it不能连接成功
https://stackoverflow.com/questions/44866089
复制相似问题