《中台架构与实现 DDD和微服务》核心思想
传统数字化转型需要解决的几个问题
1.技术体系落后
可扩展能力不强,高可用能力不强,面对突发高频访问的业务场景,不能实现自动弹性伸缩,发展到一定规模后,数据库性能和容量成为业务发展的瓶颈。
2.单体架构问题
将很多功能放到一个应用中,日积月累,这个应用编程一个庞大的怪物,随着人员的更替,时间一长很少人能完全搞懂这些代码的逻辑关系。一些人担心遗留代码,不敢修改之前的代码,宁愿复制一份代码出来重新修改,导致应用越来越复杂,最终陷入恶性循环。单体也存在模块耦合度高,弹性扩容资源利用不高。
3.研发和运维能力落后的问题
云平台和自动化运维工具对单体应用的生态支撑有限,部署和运维相对复杂,应用出现问题基本靠人肉排查,运维和研发难以快速定位。
4.IT能力重复建设问题
传统企业已经建立了一套单体核心系统,为了在移动互联网开拓业务,又建立了一套移动互联网应用,出现了一些业务同质化问题。为了解决这个问题就需要提升技术能力和重构业务模型入手,实现企业级业务的能力复用。
微服务虽好,但它只是手段不是目的,微服务是为了解决业务和应用扩展能力,也是了更好上云。微服务实施需要一定的前置条件。技术能力提升了,传统应用和移动应用才有统一的基础;应用统一了,才会有业务模型的统一;业务模型统一了,才能实现业务能力共享和复用,企业才会有实施中台战略的技术基础。
为什么会面临单体架构问题?
团队小的时候,单体的开发效率最高
当时团队技术能力不足,研发人员不够重视
服务器经费不足
业务发展不允许,业务上需要快速的实现功能,没有过多的时间去设计系统的扩展性和高可用等。
所以单体架构可能是很多团队不得不面临的一个问题,当企业发展后,单体向微服务的迁移也是一个不得不面临的问题。