我们希望在Java应用程序中进行一些处理,将结果存储在我们的memcache服务器池中,并使用PHP中的memcache将其读回。
这很容易尝试,但我会问,看看是否还有其他人这样做过。
只要Java和PHP客户端都连接到同一个memcache服务器池,两个客户端都会散列到同一服务器位置,从而可以从PHP中进行检索吗?
答案 0 :(得分:4)
没有。并非所有客户端都以相同方式散列。作为证据,您会看到一些客户提供“一致性散列”,而其他客户则不然。
简而言之,memcached客户可以使用任何哈希算法。没有官方标准。
PHP客户端支持a variety of hashing algorithms - 因此可以将其配置为使用Java库使用的相同算法(看起来有几个 - 你使用哪些?)。但显然你会想要大量测试。
答案 1 :(得分:1)
允许跨语言访问的另一种可能性是不依赖于语言序列化,而是以JSON格式存储对象,如文本字符串。
就个人而言,我使用Gson表示Java,使用json_encode,使用PHP中的json_decode。
答案 2 :(得分:0)
pylibmc
import pylibmc
mc = pylibmc.Client(["127.0.0.1"], binary=True,
behaviors={"tcp_nodelay": True,
"ketama": True})
key="someKey"
i=0
while True:
#mc.set(key, str(i))
value = mc.get(key)
print(value)
sleep(1)
i+=1