1
GoPython 2018-07-14 06:09:08 +08:00 via Android
我来说下,我做过的吧。
并不仅仅是模块化,应该说更重要是可以不再单机部署,可以容器部署到多台机器,分布式协调运行(我们一般用 RPC 内部调用)。 不仅仅是业务代码可以拆分,数据库也可以拆分,然后分别部署到不同的机器,解决单机性能不足的问题。 然后说的,权限服务,其他各种服务的互相调用,这个用 RPCI 互相调用不是问题。 |
2
artandlol 2018-07-14 08:20:27 +08:00 via iPhone
部署下 fabric8 就能理解了
|
3
karllynn 2018-07-16 21:19:52 +08:00
微服务是为了应对大规模软件系统的…模块化在单体应用里也能实现
微服务会引入很多新的问题,最典型的就是事务问题,分布式事务代价太大。 不要为了微服务而微服务。 |
4
zhazi OP 这两天学习了一下相关领域的知识,说一下自己新的理解,微服务以充血模型和事物驱动为实现,以 ddd 思想为设计理念,ddd 的设计思想重点是领域的划分,bc 的规划。
微服务跟大规模小规模没啥太大关系。 我觉得微服务的特点是高度自制,目的是去中心化,提高可扩展性,可靠性。 和模块化的概念出发点不太一样,模块化是为了提高可复用性。 顺便推荐一本书《领域驱动设计》。对软件开发设计的思想很涨见识。 |