微服务重构 - Kubernetes
单体版Petclinic
单体版:业务逻辑都在一套代码当中,运行时可以跑在一个POD里面。
Petclinic单体版源码地址: https://github.com/spring2go/spring-petclinic-mono
微服务版Petclinic
单体版Petclinic重构后,微服务架构,解耦拆分如上图。
重构以后,petclinic业务逻辑部分重构成3个微服务vets-svc(兽医服务), visits-svc(访问服务记录), customers-svc(客户服务,宠物主人)。
web UI界面成为独立服务,调用和聚合后台服务的数据,实现页面展示逻辑。
需要一个微服务网关gateway,或是反向代理,来实现API的路由转发功能,比如ingress。
实际上,每个服务都是由两部分组成,一个是服务应用本身的pod,另一个是服务前置的反向代理service。
petclinic微服务源码: