buaazp / zimg

A lightweight and high performance image storage and processing system.
http://zimg.buaa.us
BSD 3-Clause "New" or "Revised" License
2.69k stars 402 forks source link

SSDB长连断开zimg崩溃 #136

Open boin opened 8 years ago

boin commented 8 years ago

hi, 我们正在试用zimg服务。目前的架构是 zimg 直连 ssdb。

目前观测到的问题是,ssdb长连超时一到会自动断开。然后断开后有任何请求zimg就会崩溃,日志停留在算完md5阶段。

所以问下是否能实现断开自动重连机制?

2016/02/03 21:33:48:279735 [DEBUG] zimg_lua: zimg using lua script.
2016/02/03 21:36:42:082630 [DEBUG] Method: 2
2016/02/03 21:36:42:082721 [DEBUG] evblen = 532
2016/02/03 21:36:42:082749 [DEBUG] rmblen = 532
2016/02/03 21:36:42:082782 [DEBUG] boundary Find. boundary = ----WebKitFormBoundaryOGLsXM6BB5l2dZzl
2016/02/03 21:36:42:082808 [DEBUG] boundaryPattern = ------WebKitFormBoundaryOGLsXM6BB5l2dZzl, strlen = 40
2016/02/03 21:36:42:082842 [DEBUG] File[5af3631677b3e0907217e798f8be1069.png]
2016/02/03 21:36:42:082867 [DEBUG] fileType[png]
2016/02/03 21:36:42:082891 [DEBUG] compare png - jpg.
2016/02/03 21:36:42:082914 [DEBUG] compare png - jpeg.
2016/02/03 21:36:42:082937 [DEBUG] compare png - png.
2016/02/03 21:36:42:082961 [DEBUG] header_value 75 form-data; name="userfile"; filename="5af3631677b3e0907217e798f8be1069.png
2016/02/03 21:36:42:082985 [DEBUG] header_value 9 image/png
2016/02/03 21:36:42:083013 [DEBUG] Begin to Caculate MD5...
2016/02/03 21:36:42:083038 [DEBUG] md5: 6050d945bf7040ca8bfb8ae572b6cb4c
liangjixunz commented 8 years ago

@buaazp 我也发现了这个问题,请问这个问题有没有解决方法

boin commented 8 years ago

我现在临时的做法是每30秒做一次轮训,请求一个不存在的图片,以维持数据库的连接。

发自我的 iPhone

在 2016年2月25日,11:06,liangjixunz notifications@github.com 写道:

@buaazp 我也发现了这个问题,请问这个问题有没有解决方法

— Reply to this email directly or view it on GitHub.

liangjixunz commented 8 years ago

@boin 效果怎么样呢,那能提供下相关代码吗,我也试试这个方案,谢谢啦

buaazp commented 8 years ago

前几天我也看到一个说法,可以用定时去ping一下redis来维持长链接,跟 @boin 的思路类似,我目前也没找到能自动保活的redis库。

http://io.upyun.com/2016/01/28/how-to-use-redis-pool-in-go/

liangjixunz commented 8 years ago

@buaazp 准备是用shell30秒一次发送请求保持连接,具体效果有待验证

shidenggui commented 8 years ago

@liangjixunz 你用 shell 发送连接有用吗?作者貌似没时间处理这个 bug 了,如果不行的话我估计要把 zimg 的后端改成 文件系统,不知道会不会有这个问题