标签:uga 环境 发布 支持 标准 响应时间 id3 sop currently
关于redis连接数过高的解释
对于node.js开发环境里,使用传统的redis或者使用ioredis都是不错的选择,而在处理大数据请求程中,偶尔出现了连接池( redis服务端的最大可用连接数,默认为1万)不够用的情况,一般的提示如下:
It was not possible to connect to the redis server(s); to create a disconnected multiplexer, disable AbortOnConnectFail
在redis-cli上输入info命令也可以进行查看
redis-server.conf里配置了它默认的最大连接数
maxclients 10000
产生它的原因有几个:
大叔建议的作法:
减少单次请求的响应时间,建议把redis从一个大请求中拿出来,因为纯redis还是很快的
正确使用redis组件,用完就关了
正确理解多线程与socket连接,要知道socket连接直接影响你的服务器CPU性能
ioredis代码实例
ioredis是个好东西,它完全支持了redis的cluster,sentinal等新技术
new Redis() // Connect to 127.0.0.1:6379 new Redis(6380) // 127.0.0.1:6380 new Redis(6379, ‘192.168.1.1‘) // 192.168.1.1:6379 new Redis(‘/tmp/redis.sock‘) new Redis({ port: 6379, // Redis port host: ‘127.0.0.1‘, // Redis host family: 4, // 4 (IPv4) or 6 (IPv6) password: ‘auth‘, db: 0 })
同时支持标准的字符连接串
// Connect to 127.0.0.1:6380, db 4, using password "authpassword": new Redis(‘redis://:authpassword@127.0.0.1:6380/4‘)
支持发布与订阅,它会存储在进程里,它不会被持久化,所有会有消息丢失的情况
var Redis = require(‘ioredis‘); var redis = new Redis(); var pub = new Redis(); redis.subscribe(‘news‘, ‘music‘, function (err, count) { // Now we are subscribed to both the ‘news‘ and ‘music‘ channels. // `count` represents the number of channels we are currently subscribed to. pub.publish(‘news‘, ‘Hello world!‘); pub.publish(‘music‘, ‘Hello again!‘); });
好了,下次我们有时间去讲讲ioredis的具体操作!
感谢各位的阅读!
标签:uga 环境 发布 支持 标准 响应时间 id3 sop currently
原文地址:http://www.cnblogs.com/lori/p/6871904.html