Heeeey,
我必须为想要从monolith网站转到微服务网站的网站创建路线图。现在我明白你必须一步一步地做,但我不确定在每一步都需要做哪些确切的任务。有人可以帮我定义这些详细的目标吗?
提前致谢
答案 0 :(得分:0)
考虑到这是一个非常广泛的问题,我建议这些指导原则:
不要一次重构所有内容 - 这是不可能的。
将Monolith视为带有一些API的黑盒子。它们不一定是RESTful API - 想办法与它进行交互。
添加新功能时,为每个功能创建单独的(微)服务,并让它们与The Monolith的API进行交互。
一段时间后,您将看到只能通过新API访问Monolith的各个部分。即使它们仍然是整体代码库的一部分。垂直移出功能,将核心功能与其数据分离,并将所有前端应用程序重定向到新的API。
一旦你看到有限的上下文冒出来,就可以方便地将它们砍掉Monolith并让它们作为单独的服务工作。
使用微服务,您将需要比以前更多的自动化。提前考虑持续集成和持续部署(CI / CD),容器和存储库,中央日志记录和监控。
我建议在进入您的具体问题之前先获得一些简明扼要的概念。 This可以是一个好的开始。