容器及微服务技术在上交所的实践过程分享

容器及微服务技术在上交所的实践过程分享

1. 上交所容器及微服务技术落地实践 上交所技术公司 黄成
3. 认识我们 • 随上交所建立,2016年成为子 公司,为上交所提供核心技术服 务。 • 技术开发总部承担软件开发的职 责,包括交易、业务、大数据三 条技术主线。 业务处理 •上市公司服务 •证券发行 •日常业务处理 •Java/Web 交易 •10万笔/秒 •基于内存的高并发 •C/Unix/Linux 大数据 •高并发监察 •数据仓库/开源大数据
4. 想解决的问题 环境治理 技术栈 软件过程
5. 环境治理的目标 • • • • • 标准化的环境 标准化的交付 标准化的部署 标准化的资源分配 标准化的运维
6. 基于Docker的环境治理 镜像 仓库 镜像 管理 镜像 部署 资源与调度 开发 可视化 其它材料 测试与运维 运行 监控
7. 基于Docker的PaaS平台 应用程序 软件过程 应用层 运行依赖 数据处理 中间件 Java + Tomcat Redis Spark Storm Kafka RabbitMQ ZooKeeper 持续 集成 PaaS 部署 资源层 弹性能力 应用商店 监控中心 存储与网络 持续 交付 持续 部署
8. 碰到的问题 • • • • 现有规范体系很难适应互联网技术的快节奏 现有监控工具无法直接用于Docker 现有运维架构不能覆盖Docker运维架构 需要高效的持续集成流程配合
9. 『新要求』 云原生应用 无状态 开发 轻架构 微服务 …… 云
10. 『Cloud Native』从无状态开始 • Session • 文件数据 • 配置 Nginx 应用程序 应用程序 应用程序 Redis 单体 分布式 文件处理 应用程序 数据库 文件处理 应用程序 存储 配置中心
11. 分布式通讯框架选型 • RESTful vs 其它 特性 其它 RESTful 接口统一性 行业标准 一般为自发明 Web架构结合 无缝支持 可能需定制 语言特性 灵活 严格 生态环境完备性 较完备 各有所长,需补充
12. 微服务架构方案
13. 微服务架构的持续集成
14. 微服务架构规范 • 接口管理 • 数据格式 – HTTP Status + ResponseBody – HTTP Status + BizCode {code:12, message: ‘xxxxx’} • 鉴权处理 • 技术栈规约
15. 微服务与Docker的结合 • 服务基于自注册的方式,端口需有效管理 • 服务的频繁集成,镜像仓库的有效管理方案 • 应用作为服务的整体如何在不同的环境中整体发布
16. DevOps提升服务发布流水线效率 精益 标准 自动
17. 精益的软件过程
18. 自动化 云环境 开发过程 Prod/INT/QA/Dev Code/API/UT/UI 版本库 持续集成 自动部署 需求 交付仓库 自动测试
19. 基于微服务架构的高效研发质量平台
20. 标准化的要求更高 • • • • • 代码组织结构 服务角色约定 配置、脚本等资源路径约定 测试工具及用例编写 环境发布的方式
21. 展望未来 大数据 平台 IaaS CI/CD 微服务 PaaS Docker

相关幻灯片