从理论上讲,我理解微服务是如何工作的,以及为什么它们可以在各种情况下提供帮助,但我仍然不明白它在实践中是如何工作的。
假设有一个基于CMS作为整体应用程序的在线商店。
现在需要在MIcroservices架构中运行在线商店。
这种微服务架构在技术上与当前的整体架构有何不同?
例如,我选择了productsearch.php。如果我想扩展这个功能,通常我必须设置一个新的服务器,并将整个CMS资源文件夹复制到其中以实现负载平衡。
有了微服务,我猜productsearch.php将是一个单一的微服务,我将不得不复制这个php文件来进行扩展,而不需要复制其他资源?
发布于 2017-07-14 04:41:14
我试着用这个虚构的CMS图来解释它。使用微服务架构,我们可以独立地扩展每个微服务。每个微服务可能由不同的团队开发,甚至可能使用不同的技术开发。但我们巨大的灵活性带来了巨大的维护开销,我相信这是值得的,因为大部分都可以自动化。
简而言之,单个应用程序中的每个模块都是微服务的潜在候选者。然而,微服务可以比传统模块更细粒度。

这为解释如何分解单片应用程序提供了一个很好的工作。http://microservices.io/patterns/decomposition/decompose-by-business-capability.html
发布于 2017-07-14 11:05:50
从技术和概念上讲,微服务独立于其他服务(在一个整体中,您将拥有具有相互依赖关系的模块)。
从技术上讲,构建在现代微服务平台(如Node.JS、Spring Boot或.NetCore)上的微服务将更容易利用容器化系统(如Docker),这些系统可能受到服务注册和配置管理技术(如Kubernetes、ZooKeeper、Eureka等)的支持。
容器化的优点是它将更容易向外扩展(添加更多容器)。更进一步,整个微服务/容器化概念和相关技术也有助于实现CI/CD之类的东西。
https://stackoverflow.com/questions/44977364
复制相似问题