Webfunny可以支持千万级别PV的日活量了。
但是,我们默认的部署配置,是无法支持这么高的日活量的,需要我们做一些支持高并发的配置和操作,下面让我们一起看下如何让webfunny支持更高的并发量吧,下图为webfunny高并发架构图:
![](https://img-blog.csdnimg.cn/img_convert/b97ce53383d0cf03853993e1795f5627.png)
一、提升mysql最大连接数
正常情况下,如果我们的日志并发量比较高,我们遇到的第一个并发问题,应该是数据库的最大连接数。
如果给mysql设置一个合理的最大连接数,应该就能够支持一定量的并发了。
1. 如何设置mysql连接数,请参考我的这篇博客:Mysql连接数设置
2. 如何设置连接池数量,默认设置500,如果并发量高的用户,可以提高连接池数量,配置文件: config/db_local.js
pool: {
max: 500, // 此处可提升
min: 0,
acquire: 30000,
idle: 10000
},
二、多点部署
如果你们日活量达到百万、甚至千万的级别,并且你们只部署了一台机器,那么将会遇到另一个瓶颈,就是服务器的TCP连接数不够用了。一旦出现流量高峰,很多日志上报请求都会连接超时,将会丢失大量的日志数据。
此时需要部署多台服务器,来缓解TCP连接数的压力。但是多台服务器的ip不同,如果才能让上报日志分发到不同的服务器上呢?
方式一(推荐):使用阿里云的负载均衡(SLB),将你的上报域名平均分配到多台机器上,即可实现多点部