个人随笔
目录
架构设计思考20240826:架构是否到达了需要重构的地步思考
2024-08-26 22:46:56

对于一个项目,具体用什么样的架构,其实是根据需求的迫切程度,用户量,成本等各种因素柔和在一起考虑的,并没有说什么样的架构是最好的,架构没有对不对,只有合不合适,你总不能搞个个人网站上个微服务吧。

其实我觉得,用户量是一个非常重要的指标,刚开始用户量少,就几十上百人访问,然后业务也不要求多少个9稳定,那么最快的解决方案可能就是Nginx+springboot单点加mysql就好了。

后续的演变都可以根据你的用户量来叠加,毕竟用户量上来了,那么钱肯定赚的多了,那么服务器资源也就更加充裕了,人手也够了,那么就可以在单点下进行扩展,无非就是如下几种应对策略:集群、缓存、异步、搜索等。

当我们加上缓存,集群,保证每一个都没有单点问题后,那么理论上可以面对大部分的需求了。只不过,当项目规模达到一定程度后,就得考虑重构了,毕竟所有业务逻辑都在一个springboot上,这每次改动都挺麻烦的。此时我们可以将公用的逻辑功能抽取出来,或者说微服务化的改造。不过我觉得可以用伪微服务的模式,我们只是把相同的业务功能抽取出来独立为一个项目代码功能,但是数据库,缓存还是同一个,没有必要完全遵照微服务的概念,每个服务有自己的数据库。

如果后续有多个项目都有很多类似的功能,比如都有文件上传,权限认证,这些那么,我觉得这里可以进行平台化重构,也就是把公共的功能抽取出来让每个项目都用。当然如果项目很多,那么可考虑按业务进行拆分,也就是进行中台化重构。不过我觉得除非是大型公司,否则很少需要到中台化重构的地步。

 18

啊!这个可能是世界上最丑的留言输入框功能~


当然,也是最丑的留言列表

有疑问发邮件到 : suibibk@qq.com 侵权立删
Copyright : 个人随笔   备案号 : 粤ICP备18099399号-2