【问题标题】:Save object to memcached with Finagle memcached client使用 Finagle memcached 客户端将对象保存到 memcached
【发布时间】:2012-09-01 15:15:02
【问题描述】:

com/twitter/finagle/memcached/客户端扩展 BaseClient[ChannelBuffer]

所以集合定义为

set(key: String, flags: Int, expiry: Time, value: ChannelBuffer): Future[Unit]

我的问题是如何将我的 java 对象转换为 netty ChannelBuffer,或者我有其他方法来设置 String 以外的对象?

谢谢

【问题讨论】:

    标签: serialization memcached netty finagle


    【解决方案1】:

    最后,我使用thrift 来进行序列化。这只是我的情况,因为我大量使用节俭。

    thrift 序列化的缺点:你必须在 IDL 中定义对象的结构。

    优点是:简单

    TSerializer serializer = new TSerializer();
    byte[] bytes = serializer.serialize(obj);
    ChannelBuffer buffer = ChannelBufferUtils.bytesToChannelBuffer(bytes);
    

    【讨论】:

      【解决方案2】:

      这取决于你! 你可以使用任何你想要的序列化库,有很多选择。 memcached 仅将其视为字节数组。

      【讨论】:

        猜你喜欢
        • 2011-06-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-03-10
        • 2010-12-09
        • 2010-10-18
        • 1970-01-01
        相关资源
        最近更新 更多