Ticket #121 (new task)

Opened 12 years ago

Last modified 12 years ago

20141009升级Memcache遇到的问题及解决

Reported by: luoyongmin Owned by:
Priority: major Milestone: 2012年6.0版本
Component: 商家后台 Version: 6.0
Keywords: Memcache Cc:
Due Date: 10/10/2014

Description (last modified by luoyongmin) (diff)

升级Memcache步骤见附件:IT商城memcache升级.txt
1、升级后发现编辑报障有个别商情页有报错。
2、查看memcache使用概况。登陆memcache所在服务器,使用命令xmem参看。
未发现memcache异常
3、查看应用日志
发现有memcache异常信息,stderr_m.pconline.log:
[10-09 14:24:32.841] 13404745 [http-m.pconline-8082-39] ERROR com.danga.MemCached?.MemCachedClient? - ++++ exception thrown while trying to get object from cache for key: /company_price_new.jsp?productID=558826&area=全国&pageSize=20&pageNo=1&part=2
[10-09 14:24:32.841] 13404745 [http-m.pconline-8082-39] ERROR com.danga.MemCached?.MemCachedClient? - MemcachedClient? Error! Expect key:/company_price_new.jsp?productID=558826&area=全国&pageSize=20&pageNo=1&part=2, but return key: /company_price_new.jsp?productID=558826&area=??????ú&pageSize=20&pageNo=1&part=2
[10-09 14:24:32.841] java.lang.RuntimeException?: MemcachedClient? Error! Expect key:/company_price_new.jsp?productID=558826&area=全国&pageSize=20&pageNo=1&part=2, but return key: /company_price_new.jsp?productID=558826&area=??????ú&pageSize=20&pageNo=1&part=2
[10-09 14:24:32.843] at com.schooner.MemCached?.AscIIClient.get(AscIIClient.java:735)
[10-09 14:24:32.843] at com.schooner.MemCached?.AscIIClient.get(AscIIClient.java:630)
[10-09 14:24:32.843] at com.schooner.MemCached?.AscIIClient.get(AscIIClient.java:626)
[10-09 14:24:32.843] at com.danga.MemCached?.MemCachedClient?.get(MemCachedClient?.java:1094)
[10-09 14:24:32.843] at cn.com.pconline.enterprise.web.tag.CacheTag?.doStartTag(CacheTag?.java:372)
[10-09 14:24:32.843] at _jsp._yp._company_0pricejsp._jspService(_company_0price__jsp.java:1079)
4、判断是memcache对特殊字符处理出错
5、修复
修改CacheTag.java,对缓存key进行md5转换[key = cn.com.pconline.enterprise.util.MD5.compute(key)]
6、结果
经过md5转换后的key不再抛出异常

总结:
升级memcache要注意key的不同处理方式的兼容性。升级后留意观察日志。

Attachments

IT商城memcache升级.txt Download (747 bytes) - added by luoyongmin 12 years ago.

Change History

Changed 12 years ago by luoyongmin

comment:1 Changed 12 years ago by luoyongmin

  • Description modified (diff)
Note: See TracTickets for help on using tickets.