SpyMemcached的Transcoder

2016-09-06  本文已影响0人  blowyourheart
  1. Transcode的作用是把一个Object转换成CachedData(flag, byte[]) 二元组,以方便使用memcache协议将数据存储到服务器端。

  2. SpyMemcached提供了默认的Transcode实现, SerializingTranscoder.
    对基本类型,boolean, byte, int, long, float, double, date, byte[]进行了二进制提取处理,
    2.1 boolean编码为byte的1,0.
    2.2 数字类型会转换成对应的字节长度,并对开头的0进行剔除,以尽量节省空间。
    2.3 Date类型使用Date.getTime()然后按照long转换成byte[]

  3. 对于String会提取UTF8字节数组处理。对其他的Object,则使用java提供的默认序列化机制来与byte[]互转。

  4. 最后对于获得的byte[], 如果超过16K,会进行gzip压缩处理。16K这个阈值可以修改。

上一篇下一篇

猜你喜欢

热点阅读