微服务拆分、独立系统、可扩展、可分流;
在项目初期,流量并发并不高,该方式比较好维护,但随着项目流量以及功能越来越多,就应该考虑微服务拆分。
当然微服务拆分也会让开发者的开发模式更为复杂,团队协作沟通成本更高。
机器内核网络配置;
微服务拆分是基于一种框架的解决方案,能降低耦合提升单个服务的处理能力,但不能实质性的提升整体服务的并发处理能力,而服务器内核的网络配置却在一定程度上可以提升并发处理能力。
单机单服务和单机多服务;
单机单服务适合并发较大、功能底层的服务,比如Node.js 做业务网关时,就适合单机单服务。因为网关并发一般较大,需要非常严谨地了解当前承担的并发和性能。而单机单服务则可以非常精准的了解性能数据,不会被外界因素干扰。
单机多服务适合于多个业务服务,但这多个业务并发相对不高,比如应用 Node.js 做一些活动或者通用中台服务时。该情况不利于判断当前服务启用的进程数,需要根据具体的业务判断。
此文章为7月Day06学习笔记,内容来源于极客时间《Node.js开发实战》,强烈推荐该课程!