Java WebAps-整体式体系结构还是微服务体系结构,利弊?

Java WebAps-整体式体系结构还是微服务体系结构,利弊?,java,microservices,monolithic,Java,Microservices,Monolithic,我们正在创建一个新的解决方案,其中包括一些商业实体,如融资商、合同、设备融资和支付。我们主要有5-6个域对象 那么我们应该采用哪种体系结构,哪种体系结构在未来具有更好的适应性和更少的维护。所以这里没有快速明确的答案, 最终决定将取决于一些因素 技术的;例如(但不限于)应用程序将如何扩展?还是需要缩放?如何部署或监控它??预计未来会发生多少变化?有很多团队在做这件事吗 业务,这也是在技术之前,(也不限于)预计有多少用户?业务需求变化有多大 根据我自己的经验,大多数项目一开始不是作为微服务项

我们正在创建一个新的解决方案,其中包括一些商业实体,如融资商、合同、设备融资和支付。我们主要有5-6个域对象


那么我们应该采用哪种体系结构,哪种体系结构在未来具有更好的适应性和更少的维护。

所以这里没有快速明确的答案, 最终决定将取决于一些因素

  • 技术的;例如(但不限于)应用程序将如何扩展?还是需要缩放?如何部署或监控它??预计未来会发生多少变化?有很多团队在做这件事吗

  • 业务,这也是在技术之前,(也不限于)预计有多少用户?业务需求变化有多大

根据我自己的经验,大多数项目一开始不是作为微服务项目启动的,而是作为一个整体或所谓的(SCS)自包含系统启动的(小心使用)

微服务为您提供了良好的可扩展性和分布式功能,并且(可能)提高了总体性能。如果架构良好,它们还适合于拥有大量团队的大型项目,其中每个团队管理一组微服务。但另一方面,它们很难部署和监控,并且需要巨大的基础设施能力才能处理ms项目

另一方面,单块或半单块(如自包含系统),它们看起来更易于部署和快速运行,但对于大量的用户群,从长远来看,您将进行大量重构以提高性能。但它们很容易由一个没有强大基础设施能力的小团队来处理

当然这里有大量的信息和观点,这只是我经历的一小部分