spring cloud微服务框架 第七天
2016-12-01 15:00
274 查看
第七天,spring boot自动部署方案, 现在主流的自动部署方案大都是基于Docker的了,但传统的自动部署方案比较适合中小型公司,下面的方案就是比较传统的自动部署方案。
基于微服务的架构,自动部署显得非常重要。因为每一个服务都需要部署。如果是手动部署,那么有M个服务,那么至少需要部署M次,如果每个同样的服务部署N个实例,那么就需要部署M*N次。所以自动部署对于微服务架构几乎是必须的,这一点不同于传统应用。
自动部署一般都是通过以下步骤进行的。首选由持续性集成工具进行自动编译产生项目的输出,对于我们来说也就是jar包。然后该jar经过测试就可以分发到各个服务器,各个服务器的监控脚本监控到该新版本,自动停止旧实例重新运行新实例。
上面只是一个大概的步骤,真实的实现还需要更详细的步骤,如下:
Jenkins编译的结果需要暂时存放,以便于测试人员拉取进行测试。这里存放在maven库中。测试通过后也需要手动推送到生产环境,因为不可能每个版本都推送到生产环境。生产环境需要一台FTP或GIT、SVN Server作为中转机,暂存打包的应用,然后生产的服务器通过脚本轮询该中转机获得新的版本。获得新的版本后,自动停止旧的版本,运行新的版本。
1、为什么需要自动部署
基于微服务的架构,自动部署显得非常重要。因为每一个服务都需要部署。如果是手动部署,那么有M个服务,那么至少需要部署M次,如果每个同样的服务部署N个实例,那么就需要部署M*N次。所以自动部署对于微服务架构几乎是必须的,这一点不同于传统应用。
2、如何实现自动部署
自动部署一般都是通过以下步骤进行的。首选由持续性集成工具进行自动编译产生项目的输出,对于我们来说也就是jar包。然后该jar经过测试就可以分发到各个服务器,各个服务器的监控脚本监控到该新版本,自动停止旧实例重新运行新实例。上面只是一个大概的步骤,真实的实现还需要更详细的步骤,如下:
Jenkins编译的结果需要暂时存放,以便于测试人员拉取进行测试。这里存放在maven库中。测试通过后也需要手动推送到生产环境,因为不可能每个版本都推送到生产环境。生产环境需要一台FTP或GIT、SVN Server作为中转机,暂存打包的应用,然后生产的服务器通过脚本轮询该中转机获得新的版本。获得新的版本后,自动停止旧的版本,运行新的版本。
相关文章推荐
- spring cloud微服务框架 第七天
- spring cloud微服务框架 第九天
- 微服务架构的基础框架选择:Spring Cloud还是Dubbo?
- 微服务框架Spring Cloud介绍 Part4: 使用Eureka, Ribbon, Feign实现REST服务客户端
- 微服务架构框架选择:Spring Cloud 和 Dubbo对比
- 微服务框架Spring Cloud: 在微服务系统中使用Hystrix, Hystrix Dashboard与Turbine
- 微服务架构的基础框架选择:Spring Cloud还是Dubbo? - 推酷
- SpringCloud系列四:Eureka 服务发现框架(定义 Eureka 服务端、Eureka 服务信息、Eureka 发现管理、Eureka 安全配置、Eureka-HA(高可用) 机制、Eureka 服务打包部署)
- 微服务框架选择:Spring Cloud还是Dubbo?
- 微服务架构的基础框架选择:Spring Cloud还是Dubbo?
- 微服务架构的基础框架选择:Spring Cloud还是Dubbo?
- 微服务架构的基础框架选择:Spring Cloud还是Dubbo?
- 微服务架构的基础框架选择:Spring Cloud还是Dubbo?
- 微服务架构的基础框架选择:Spring Cloud还是Dubbo?
- 微服务架构的基础框架选择:Spring Cloud还是Dubbo?
- 微服务架构的基础框架选择:Spring Cloud还是Dubbo?
- Spring Cloud + Kubernetes 微服务框架原理和实践
- 微服务架构的基础框架选择:Spring Cloud还是Dubbo?
- SpringCloud-Eureka服务框架(Eureka服务配置)
- 微服务架构的基础框架选择:Spring Cloud还是Dubbo