1
ipconfiger 2014-09-03 09:53:14 +08:00
用一个计时器来记录alive的时间,超过时间就主动断掉重连
|
2
laoisaudi OP @ipconfiger 这个方法可以考虑,但是不知道为什么上面的方法会不管用
|
3
linKnowEasy 2014-09-03 09:56:18 +08:00
怎么做到网页变色的。。。
|
4
laoisaudi OP @linKnowEasy 本来就是这个颜色的。。估计nodejs版的风格吧。。
|
5
WildCat 2014-09-03 10:17:15 +08:00
|
6
WildCat 2014-09-03 10:17:48 +08:00
|
7
WildCat 2014-09-03 10:18:05 +08:00
|
8
WildCat 2014-09-03 10:18:47 +08:00 1
跪了。。。不玩了
|
11
RangerWolf 2014-09-03 10:31:46 +08:00
我遇到跟你一样的情况,然后我就把DAO层全部换成MYSQL,世界就美好很多了~
|
12
WildCat 2014-09-03 10:31:49 +08:00
|
14
laoisaudi OP @RangerWolf souga
|
15
odirus 2014-09-03 10:49:20 +08:00
楼主,你的代码是针对接收到 close 事件再断线重连,但是只有当 TCP 最后一次握手成功或者是直接 socket.destroy 的时候才会触发该事件。假设 mongoose 接收到 error 事件并正处于最后的握手等待期,写数据的时候就会出现 socket 错误,倘若这个时候你没有捕获错误,程序就会崩溃。我一直都是用的 mongodb 模块,当传输数据的时候如果发生错误,它不仅会断线重连,而且还会缓存这部分命令,直到缓存池中有可用连接的时候再发送。
|
16
laoisaudi OP @odirus 嗯嗯,多谢,我修改了代码,加了一个捕获error的回调,使得出错的时候先断掉连接,然后让他触发close的回调
|
19
WildCat 2014-09-03 11:13:24 +08:00 via iPhone
@laoisaudi 你有申请到AWS的预览名额?我很早就申请了,很久之后他们客户经理给我打电话,问我是干嘛的,我说大学生,他说只提供给着急迁移到AWS的大客户,让我等年底正式商用
|
24
julor 2014-09-03 14:30:51 +08:00
可以考虑使用收费的私有mongodb。
我用的是: http://cnodejs.org/topic/52e0f31a78990b0411b585d9 |