首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java或Spymemcached客户端无法获得由C# Enyim客户端设置的键值

Java或Spymemcached客户端无法获得由C# Enyim客户端设置的键值
EN

Stack Overflow用户
提问于 2018-01-15 21:03:27
回答 1查看 356关注 0票数 0

Java XmemcachedSpymemcached客户端无法从C# Enyim客户端通过密钥获取memcached的正确值。

我们已经尝试过将C# MemcachedProtocol.Binary设置为Text来存储基本的字符串格式数据,但是Java客户端和Spymemcached客户端都无法获得数据。错误如下:

代码语言:javascript
复制
2018-01-11 11:08:06.655 [ERROR] [main] BaseSerializingTranscoder: Failed to decompress data
java.util.zip.ZipException: Not in GZIP format
at java.util.zip.GZIPInputStream.readHeader(GZIPInputStream.java:165) ~[?:1.8.0_144]
at java.util.zip.GZIPInputStream.(GZIPInputStream.java:79) ~[?:1.8.0_144]
at java.util.zip.GZIPInputStream.(GZIPInputStream.java:91) ~[?:1.8.0_144]
at net.rubyeye.xmemcached.transcoders.BaseSerializingTranscoder.gzipDecompress(BaseSerializingTranscoder.java:274) [xmemcached-2.4.0.jar:?]
at net.rubyeye.xmemcached.transcoders.BaseSerializingTranscoder.decompress(BaseSerializingTranscoder.java:219) [xmemcached-2.4.0.jar:?]
at net.rubyeye.xmemcached.transcoders.SerializingTranscoder.decode(SerializingTranscoder.java:87) [xmemcached-2.4.0.jar:?]
at net.rubyeye.xmemcached.XMemcachedClient.fetch0(XMemcachedClient.java:657) [xmemcached-2.4.0.jar:?]
at net.rubyeye.xmemcached.XMemcachedClient.get0(XMemcachedClient.java:1085) [xmemcached-2.4.0.jar:?]
at net.rubyeye.xmemcached.XMemcachedClient.get(XMemcachedClient.java:1043) [xmemcached-2.4.0.jar:?]
at net.rubyeye.xmemcached.XMemcachedClient.get(XMemcachedClient.java:1065) [xmemcached-2.4.0.jar:?]

如果使用StringTranscoder(),错误将是解码字符串错误:

代码语言:javascript
复制
Exception in thread "main" java.lang.RuntimeException: Decode String error
at net.rubyeye.xmemcached.transcoders.StringTranscoder.decode(StringTranscoder.java:35)
at net.rubyeye.xmemcached.transcoders.StringTranscoder.decode(StringTranscoder.java:11)
at net.rubyeye.xmemcached.XMemcachedClient.fetch0(XMemcachedClient.java:657)
at net.rubyeye.xmemcached.XMemcachedClient.get0(XMemcachedClient.java:1085)
at net.rubyeye.xmemcached.XMemcachedClient.get(XMemcachedClient.java:1043)
at net.rubyeye.xmemcached.XMemcachedClient.get(XMemcachedClient.java:1065)
EN

回答 1

Stack Overflow用户

发布于 2018-01-16 17:44:12

通过编写自定义转码器和忽略GZIP/ZIP标志部分,已经解决了这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48270625

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档