百度搜了搜,像微信后台的开发,微信数据库这类的问题都没有确切的答案,真的很好奇,不知道他是靠什么技术支撑 10 多亿活跃用户的并发。
1
singerll 2019-02-16 16:25:54 +08:00 via Android 1
公司部署过本地企业微信,tomcat+mysql
|
2
kmahyyg 2019-02-16 16:57:44 +08:00 via iPad 1
Google Bigtable: 你说啥?
|
3
lhx2008 2019-02-16 17:34:24 +08:00 via Android 2
最简单的就是做分片集群来储存账号信息,然后一个心跳服务维持登录信息,然后一个消息队列来推拉消息,还有一个存档服务储存聊天记录。朋友圈另算。
|
4
namesc 2019-02-16 17:53:40 +08:00 1
维持十万个用户的高可用都不容易,更别说十亿级别的了,能啃下这个需求这个年薪百万不是梦。
想起之前公孙玉龙的子弹短信,一天时间被机器人发了五六十万条广告信息就发公开信说遭遇了一场有组织的大规模垃圾信息攻击,就这水平也好意思说挑战微信,按 2017 年的微信数据,五六十万条信息对微信来说只不过是一秒钟的事情。 |
5
mamahaha OP @namesc 真的是很很厉害,看了一个之前介绍微信开发者张小龙的文章。。。。马化腾更是将张小龙的薪资涨到每年三亿港币,光从公司统一的工资表上看,张小龙的工资甚至远远超越了马化腾,马化腾工资表上的工资是年薪三千多万港币。。。。
|
6
hilbertz 2019-02-16 19:27:45 +08:00 1
即时通讯类应用对服务器压力并不大,单台常规服务器用 java 就可以处理千万级实时连接
|
7
hst001 2019-02-16 19:32:59 +08:00 via Android 1
微服务架构。
很早之前用 MySQL 存消息,现在不知道了。 |
8
mamahaha OP 我觉得可能应该已经不是数据库的概念了,服务器只管牵线搭桥,数据都在终端上。
|
9
gamexg 2019-02-16 20:39:46 +08:00 1
聊天类应该属于比较容易能够横向扩展的,感觉最简单的办法是:
* 按用户 id 分配聊天服务器 * 个别服务器故障造成消息发送失败时,由客户端负责重发 然后其他离线消息、朋友圈等另行处理。 |
11
Yoock 2019-02-16 22:52:29 +08:00 2
|