title: “单体应用利用ServiceComb实现微服务化和云化之路” lang: en ref: go-to-cloud permalink: /docs/go-to-cloud/ excerpt: “该文档演示:从已有基于spring boot的单体应用利用ServiceComb实现微服务化和云化之路” last_modified_at: 2017-06-24T11:40:00+08:00 author: Tank Tian tags: [Huawei Cloud] redirect_from:
Service Stage:微服务云应用平台,它是面向企业及开发者的一站式DevOps平台服务,支持基于微服务的应用开发、治理、部署及运维监控的全生命周期管理,并提供大规模容器集群管理及中间件服务等平台能力,帮助用户快速构建云分布式应用。
本指导以Acmeair demo为例,演示如何使用ServiceComb (华为微服务框架开源版本)实现应用的微服务化,并利用Service Stage云平台上实现应用的云化。
环境准备:基于Service Stage完成创建集群、添加节点等资源准备工作
微服务开发
微服务的拆分设计
基于ServiceComb框架快速微服务化
制作镜像上传Service Stage软件仓库;
应用上线:通过Service Stage从软件仓库获取版本实现部署上线;
应用运维:通过Service Stage对微服务或应用进行生命周期管理(部署-启动-上线-升级-扩容-停止-下线-删除)、告警、监控、调用链分析和治理等。
请参考创建集群详细指导
![create group]({{ site.url }}{{ site.baseurl }}/assets/images/create-group.png){: .align-center}
请参考为集群添加节点详细指导
![add node]({{ site.url }}{{ site.baseurl }}/assets/images/add-node.png){: .align-center}
![micro service design]({{ site.url }}{{ site.baseurl }}/assets/images/micro-service-design.png){: .align-center}
![micro service structure]({{ site.url }}{{ site.baseurl }}/assets/images/micro-service-structure.PNG){: .align-center}
备注:改造完成的Acmeair Demo如何本地运行,如何本地查看运行效果? 请参考下文“Acmeair本地运行”章节。
对ServiceComb的依赖: ![pom dependence]({{ site.url }}{{ site.baseurl }}/assets/images/pom-dependence.png){: .align-center}
对Service Stage的依赖:
![huaweicloud dependencies]({{ site.url }}{{ site.baseurl }}/assets/images/huaweicloud_dependencies.png){: .align-center}
![config file]({{ site.url }}{{ site.baseurl }}/assets/images/config-file.png){: .align-center}
![code adjust]({{ site.url }}{{ site.baseurl }}/assets/images/code-adjust.png){: .align-center}
![service consumer]({{ site.url }}{{ site.baseurl }}/assets/images/service-consumer.png){: .align-center}
请参考上传镜像详细指导
![image upload 1]({{ site.url }}{{ site.baseurl }}/assets/images/image-upload-1.png){: .align-center}
![image upload 2]({{ site.url }}{{ site.baseurl }}/assets/images/image-upload-2.png){: .align-center}
请参考部署微服务详细指导
![service deploy]({{ site.url }}{{ site.baseurl }}/assets/images/service-deploy.png){: .align-center}
请参考应用调用分析详细指导
![service monitor 1]({{ site.url }}{{ site.baseurl }}/assets/images/service-monitor-1.png){: .align-center}
请参考应用监控详细指导
![service monitor 2]({{ site.url }}{{ site.baseurl }}/assets/images/service-monitor-2.png){: .align-center}
请参考弹性伸缩详细指导
![scaling]({{ site.url }}{{ site.baseurl }}/assets/images/scaling.png){: .align-center}
请参考微服务管理详细指导
![governance]({{ site.url }}{{ site.baseurl }}/assets/images/governance.png){: .align-center}
本章节介绍在windows 64位环境下如何本地运行Acmeair
JDK 1.8
maven 3.x
eclipse
service-center
下载service-center-x.x.x-x-windows-amd64.zip解压到任意目录
mongodb(可选)
Import - - Maven:Existing Maven Projects,选择代码所在的目录,点击finish完成导入
![import project]({{ site.url }}{{ site.baseurl }}/assets/images/import-project.png){: .align-center}
acmeair-booking-service\src\main\resources\microservice.yaml
![booking microservice yaml]({{ site.url }}{{ site.baseurl }}/assets/images/booking-microservice-yaml.png){: .align-center}
acmeair-customer-service\src\main\resources\microservice.yaml
![customer microservice yaml]({{ site.url }}{{ site.baseurl }}/assets/images/customer-microservice-yaml.png){: .align-center}
acmeair-website\src\main\resources\microservice.yaml
![website microservice yaml]({{ site.url }}{{ site.baseurl }}/assets/images/website-microservice-yaml.png){: .align-center}
![compile]({{ site.url }}{{ site.baseurl }}/assets/images/compile.png){: .align-center}
找到service-center-0.1.0-m1-windows-amd64解压目录,双击start.bat
![servcie center]({{ site.url }}{{ site.baseurl }}/assets/images/servcie-center.png){: .align-center}
![service center start success]({{ site.url }}{{ site.baseurl }}/assets/images/service-center-start-success.png){: .align-center}
AcmeairApplication:Run As - - Run Configurations…
![start booking]({{ site.url }}{{ site.baseurl }}/assets/images/start-booking.png){: .align-center}
watching microservice 2 successfully,服务注册成功
![booking start success]({{ site.url }}{{ site.baseurl }}/assets/images/booking-start-success.png){: .align-center}
CustomerServiceApplication:Run As - - Run Configurations…
![start customer]({{ site.url }}{{ site.baseurl }}/assets/images/start-customer.png){: .align-center}
watching microservice 4 successfully,服务注册成功
![customer start success]({{ site.url }}{{ site.baseurl }}/assets/images/customer-start-success.png){: .align-center}
将acmeair-website\target\ROOT.war复制到tomcat webapps文件夹下,启动tomcat
![start website]({{ site.url }}{{ site.baseurl }}/assets/images/start-website.png){: .align-center}
输入http://localhost:8080
![home page]({{ site.url }}{{ site.baseurl }}/assets/images/home-page.png){: .align-center}
点击网页最下端Acme航空配置
![init data]({{ site.url }}{{ site.baseurl }}/assets/images/init-data.png){: .align-center}