1、上交所容器技术微服务架构技术实践零、内容一我们二目标三方向四实践五思考六展望一、我们上交所技术公司技术开发总部 历史 职责 主业1990年2016年系统运行总部技术开发总部综合管理部市场总部规划部一、我们上交所技术公司技术开发总部 历史 为上交所提供核心技术服务 职责 为市场参与者提供技术和创新 主业产品服务一、我们上交所技术公司技术开发总部 历史 职责交易类高并发交易 主业业务类数据类日常业务操作市场服务实时监察数据仓库大数据二、目标实现 技术体系完备化 软件过程标准化 服务发布高效化 系统架构 技术储备二、目标实现开发交付 技术体系完备化 软件过程标准化 方案 规范 服务发布高效化 工具部
2、署资源运维二、目标实现 技术体系完备化 软件过程标准化 服务发布高效化 精益 自动化三、方向方向 微服务 Docker DevOps优点 易开发 易运维 易扩展局限 分布式 集成复杂 部署问题三、方向方向 微服务 Docker DevOps优点 轻量级虚拟化 标准化运行时 易于测试集成局限 运行环境限制 使用场景限制三、方向方向 微服务 Docker DevOps优点QualityAssurance 降低风险 快速发布 强自动化局限DevOps 协作方式 环境氛围四、实践技术体系完备化软件过程标准化服务发布高效化四、实践技术体系完备化 基于Docker的PaaS平台架构 微服务架构四、实践技术
3、体系完备化 基于Docker的PaaS平台架构应用层应用程序软件过程运行依赖数据处理持续集成RedisSparkStorm中间件KafkaRabbitMQZookeeperTomcatJavaPaaS层持续交付环境部署弹性能力应用商店监控中心数据存储网络管理资源层持续部署四、实践技术体系完备化 微服务架构服务服务服务DatabaseDatabaseDatabaseNginx注册中心配置中心RabbitMQAPI网关负载均衡认证检查HtmlJSCSS身份认证用户授权API网关DatabaseRedis客户端前端接入层接入控制层后端服务层中间件四、实践软件过程标准化 基于Docker的环境管理 微
4、服务架构规范 微服务与Docker的结合 基于微服务架构的持续集成四、实践软件过程标准化 基于Docker的环境管理镜像管理镜像部署运行监控运维人员镜像仓库资源与调度开发人员测试人员四、实践软件过程标准化 微服务架构规范a.接口管理 路由-API网关 格式-RESTfulb.数据格式c.服务鉴权d.技术栈规约四、实践软件过程标准化 微服务架构规范a.接口管理 HTTP Status+ResponseBody HTTP Status+BizCodecode:12,message:xxxxxb.数据格式c.服务鉴权d.技术栈规约四、实践软件过程标准化 微服务架构规范a.接口管理b.数据格式c.服务
5、鉴权d.技术栈规约四、实践软件过程标准化 微服务架构规范a.接口管理b.数据格式c.服务鉴权d.技术栈规约 组件名 组件版本 持续验证 持续更新四、实践软件过程标准化 微服务与Docker的结合a.服务端口管理 服务端口可动态配置 组件端口可动态配置 端口清单b.镜像仓库管理c.环境发布管理d.服务依赖保护四、实践软件过程标准化 微服务与Docker的结合a.服务端口管理 归档 清理b.镜像仓库管理c.环境发布管理 告警d.服务依赖保护四、实践软件过程标准化 微服务与Docker的结合a.服务端口管理 一键发布 环境分配b.镜像仓库管理c.环境发布管理 环境回收d.服务依赖保护四、实践软件过程
6、标准化 微服务与Docker的结合a.服务端口管理b.镜像仓库管理c.环境发布管理 熔断d.服务依赖保护 隔离 限流四、实践软件过程标准化 基于微服务架构的持续集成前端代码前端构建Nginx部署提交触发拉取触发API网关前端开发数据库脚本服务服务服务服务服务后端构建部署DBDBDBDBDB后端代码提交注册中心配置中心后端开发SVNJenkins四、实践服务发布高效化 软件过程精益化 软件过程自动化 基于微服务与Docker的持续交付平台自动精益标准DevOps四、实践服务发布高效化 软件过程精益化用例管理用例执行自动化测试平台自动化框架需求开发单元测试接口测试UI测试功能测试安全测试验收测试发
7、布监控运维快速持续集成一键环境构建快速发布基于容器云的解决方案四、实践服务发布高效化 软件过程自动化容器云环境(开发/集成/测试/生产)开发过程版本库需求自动部署交付仓库自动测试持续集成自动化四、实践服务发布高效化 基于微服务与Docker的持续交付平台Redis用户管理LDAP代码统计代码评审测试管理软件发布单元测试代码检查软件集成DatabaseDatabaseJenkins任务Review Board代理Review Board静态资源API网关用例执行主控用例执行机Sonar代理SonarRabbitMQRabbitMQSVNJenkins代理Jenkins任务镜像仓库容器云软件部署报表统计配置中心注册中心五、思考 敏捷的组织架构-环境a.产品导向b.快速敏捷 微服务最佳实践-方法 开发运维工程师-人员 DevOps工具储备-工具五、思考 敏捷的组织架构-环境 微服务最佳实践-方法a.不同场景b.配套方案 开发运维工程师-人员 DevOps工具储备-工具五、思考 敏捷的组织架构-环境 微服务最佳实践-方法 开发运维工程师-人员 DevOps工具储备-工具五、思考 敏捷的组织架构-环境 微服务最佳实践-方法 开发运维工程师-人员 DevOps工具储备-工具