得根据软件的特性来,像微信这种软件,一旦成功,它的功能不会少,用户规模也不会小,数据量大,对于实时性的要求也高。”
“我们从一开始就把系统功能划分出来,表示层、业务逻辑层、数据访问层等等,这样结构清晰,也比较容易维护和扩展,不同层次还可以用不同团队来开发和维护。”
“我不知道微信这样的软件能不能取得市场上的成功,但我认为,还是得考虑提高系统的并发处理能力吧,分布式架构能够满足这样的需求。”
“这要说起来又得长篇大论,俞总,我今天晚上把这些全部整理成一份报告,明天给你。”
“总而言之,我认为,葛智杰的想法太超前了,市面上其它的架构,单体的容易开发和部署,但是,微信功能一多,代码复杂度就得急剧上升,后期修改功能有可能影响系统的稳定性,还不容易满足高并发场景下的需求。”
“如果用主从架构,它的数据同步可能出现延迟,这不利于微信的实时性聊天,而要是做简单的分层架构吧,它没有分布式的支持,一旦需要处理高并发和大规模用户数据,恐怕很快就会出现性能瓶颈。”
俞兴消化这些信息,思索之后问道:“照你这么说,要是只做分层架构,按现在的常规情况,多大规模的用户体量会碰见性能瓶颈?”
“这和业务逻辑复不复杂有关,唔……”谭睿泽在心里琢磨了一会,说道,“模糊点来看,可能30-50万就容易碰见瓶颈了,即时通讯的需求就是这样,系统就是得具有短时间里同时处理大量请求的能力。”
他认真的说道:“不然,两款产品,qq用着不卡,咱们的用着卡,这还怎么竞争呢?”
俞兴听着谭睿泽的这话,被激活了一些模糊的记忆,当年的米聊是不是也碰见过这样的问题?
它比微信更早上线了语音功能,也因此很吸粉,但经常宕机