zoukankan      html  css  js  c++  java
  • 高性能Web服务器Nginx的配置与部署研究(12)应用模块之Memcached做文件缓存时压缩引起的问题

    在上一篇文章中,提到的Nginx的Memcached模块应用场景,主要是作为文件缓存。然后就发现了一个问题,当以字节数组方式缓存较大的文件时,缓存数据会被压缩,从而在读取的时候出现问题。


    (本文欢迎转载,尊重他人劳动,转载请注明出处:http://blog.csdn.net/poechant/article/details/7177603


    解决方法很简单,就是在MemcachedClient端设置压缩的阈值。如果你使用的是net.spy.memcached的API,则可以如下设置:

    1. int EXPIRE_SECONDS = 18000;  
    2. SerializingTranscoder transcoder = new SerializingTranscoder();  
    3. transcoder.setCompressionThreshold(5242880);  
    4. fileCache.set(key, EXPIRE_SECONDS, value, transcoder);  


    如果你使用的是net.rubyeye.xmemcached的API,则可以如下设置:

    1. int EXPIRE_SECONDS = 18000;  
    2. BaseSerializingTranscoder transcoder = new BaseSerializingTranscoder();  
    3. transcoder.setCompressionThreshold(5242880);  
    4. client = set(key, EXPIRE_SECONDS, value, transcoder);  


    如果你使用的是danga.MemCached的API,则可以如下设置:

      1. int EXPIRE_SECONDS = 18000;  
      2. MemCachedClient.setCompressThreshold(5242880);  
      3. MemCachedClient.set(key, value, new Date(System.currentTimeMillis() + EXPIRE_SECONDS * 1000L)); 
  • 相关阅读:
    GIT 相关
    createFile
    值传递、指针传递、引用传递
    Sightseeing trip
    find the longest of the shortest
    Laurenty and Shop
    Dima and Lisa
    Marina and Vasya
    Kolya and Tanya
    Two Substrings
  • 原文地址:https://www.cnblogs.com/breg/p/4043791.html
Copyright © 2011-2022 走看看