原文连接架构
迁移到微服务听起来彷佛是一项巨大而复杂的任务。虽然过程可能稍显复杂,但实际上比你想象的更为简单。这篇博客以一个标准的J2EE应用程序为例创建了一个基础迁移路线图,从一体化架构迁移到微服务架构。咱们将从容器化咱们的Java应用程序开始逐步实现最终自动发布到Kubernetes微服务环境。负载均衡
咱们的迁移之旅首先从容器化Java应用程序(.jar,.war或.ear)开始,这涉及到创建一个容器容纳Java运行时及你的应用程序。实现该步骤的时候,记住如下几点:dom
一开始迁移到微服务,你须要为你的Kubernetes环境提供一个负载均衡器,处理来自云负载均衡器的外部请求。NGINX是一个好的选择,花点时间安装并学习NGINX。微服务
在熟悉了NGINX后,将它移到容器中。学习
如今,有趣的地方来了。若是不使用Kubernetes管理你的容器,你迁移到微服务的努力将付诸东流。经过创建第一个Kubernetes集群来学习Kubernetes。从Google和他们的优惠开始。这个向导会教你如何创建你的集群。你须要安装一个Google Command Line Client。固然,也要学习Helm。this
在Kubernetes集群创建以后,是时候考虑一下如何拆分你的应用程序了。DeployHub支持领域驱动设计(DDD)模式来组织,编目,发布以及分享微服务。设计
在开发的早期就定义好你的领域结构相当重要。在一开始就组织好微服务并重用组件能防止以后混乱的发生。3d
在一个仓库中管理你的二进制文件,有助于为容器进行构建。每一次构建都会对应于一个版本号并有一个可追溯的历史。cdn
理由同上。blog
使用DeployHub Team自动部署。DeployHub会追踪你的配置以及版本。
这几乎就是所有内容。不要吧迁移到微服务想的过于复杂。花一点时间来完成每个步骤。在你的CI/CD工做流中会有一些小的改动,可是这些都是可行的。从这个简单的例子中,你能够逐步创建你本身的微服务,并开启了迈向现代化架构的旅程。