一天 2 亿 pv 左右 一般需要多少台机器,目前 swoole+redis+mysql

2019-04-18 11:01:54 +08:00
 void1900
一天 2 亿 pv 左右 一般需要多少台机器,目前 swoole+redis+mysql

三台机器,其中两台放着 redis+跑 swoole 服务,mysql 是云上的 1H1G 50G...

目前三台机器负载基本满了,如果换 go 会得到提升吗……

统计业务,redis 计次,定时+某些条件写入 mysql

redis
instantaneous_ops_per_sec:62207
...
9706 次点击
所在节点    程序员
80 条回复
tiaod
2019-04-18 12:32:21 +08:00
2 亿 pv 你来这破站问?
kevinlm
2019-04-18 12:42:42 +08:00
什么站,这么强👍
jimrok
2019-04-18 12:45:56 +08:00
我觉得你想要减少 redis 的写入量的话,加一套 kafuka,让数据先落盘,然后再用流处理,合并一些统计,减少写入的次数。
void1900
2019-04-18 12:58:18 +08:00
@jimrok 我研究下,redis 这 ops 确实有点台高! 谢谢大神!
opengps
2019-04-18 13:01:00 +08:00
只看峰值压力,多层服务配合起来( cdn+缓存+负载均衡等等),最终的机器数才能确定出来
allenhu
2019-04-18 13:07:01 +08:00
加机器吧, 之前的项目,1000w 日 pv 配了 4 台机器
lsylsy2
2019-04-18 13:12:11 +08:00
三台机器,其中两台放着 redis+跑 swoole 服务,mysql 是云上的 1H1G 50G...
假如 2 亿 PV 还只能养得起这种配置的成本,那要考虑下商业模式了
agdhole
2019-04-18 13:31:48 +08:00
换 rust 会有提升(成本巨大
还是加机器 8
sagaxu
2019-04-18 13:32:33 +08:00
@void1900 50w 纬度,不就是 50w 个 key 嘛,每个 key 对应一个 int,每次事件过来,自增几个 int。redis 里能放得下的,进程里面也能放得下。

这种纯统计的业务,我这边单机可以 10 亿日请求,12 核 32g 内存
void1900
2019-04-18 13:36:26 +08:00
@sagaxu 什么语言?单进程?
sagaxu
2019-04-18 13:38:06 +08:00
@void1900 JVM + Vertx
sujin190
2019-04-18 14:11:20 +08:00
看业务复杂度吧,如果只是简单的 redis inc,那么一台都绰绰有余
一般来说,只是 redis inc,每个请求时间顶多 1ms,一个进程每秒 800 到 900 完全可以吧,swoole 8 核 cpu8 进程不要太轻松
zong400
2019-04-18 14:22:41 +08:00
hadoop+spark 怎样
utfqvfhpyygy
2019-04-18 14:35:42 +08:00
这里全部是动态请求,还是包含了静态资源? 2 亿 一天,3 台机器,而且 4 核 8G 真想看看是什么应用
loveCoding
2019-04-18 15:09:01 +08:00
网站发出来看看 , 这么猛的站点
terranboy
2019-04-18 15:24:53 +08:00
这么多的流量 只舍得 3 台机器吗
picone
2019-04-18 15:32:03 +08:00
对实时要求不高,可以加个队列感觉会更好,把波峰削平了。
而且,这种日志分析的,应该算是离线业务,不应该用 streaming,storm 啥的做吗,前端过来直接全部塞进 kafka 就行了。
luw2007
2019-04-18 15:35:01 +08:00
基于 redis 做 uv 一般是 hyperLogLog。
建议可以在程序内缓存一分钟数据,然后通过 pipeline 批量导入 redis。
做好信号处理,监听退出信号,退出前停止接收数据,并强制落盘到 redis。
压力在 redis 上,换 go 不换逻辑提升不明显。
atpking
2019-04-18 15:36:50 +08:00
我司有个 admqr.com 2 亿没试验过 2kw 的 pv 倒是跑过
joesonw
2019-04-18 15:42:37 +08:00
瓶颈肯定不在 swoole 这里吧. 看 IO, 和其他的 overhead (例如楼上说的 nginx 那)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/556315

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX