当前位置: 首页 > news >正文

广告业务系统 之 敏捷交付 —— “基于 Docker 容器同机部署”

文章目录

    • 广告业务系统 之 敏捷交付 —— “基于 Docker 容器同机部署”
      • 服务 Docker 构建及部署
        • 代码支持
        • 服务打包&构建
        • 服务部署

广告业务系统 之 敏捷交付 —— “基于 Docker 容器同机部署”

服务 Docker 构建及部署

在 ADX 系统中,全链路涉及 大大小小的微服务 将近 百个。
良好的服务构建和灵活、敏捷的部署能力,是保证广告业务快速交付价值的基石。

在实际生产中, ADX 系统服务为保障高可用、高性能 的同时,最大提升机器利用率。统一施行 以 Docker 容器为主的节点混部模式。

代码支持

值得一提的是,混部模式中,服务之间通信以容器为单位,走本地端口,无网络带宽限制、无网络资源问题、且大幅提升服务链路性能效益。这种部署模式已经在实际应用中得到了充分的肯定。

服务支持 Docker 容器技术的前提是,在实现代码中需要准备相关的部署文件。

.
├── build.sh //服务构建文件
├── docker-compose.yml //容器启动执行文件
└── Dockerfile //镜像构建文件

服务打包&构建

在完成服务功能代码之后,将最新代码上传至 Git Code 库。

在这里插入图片描述
CI/CD 平台,将会 Clone 业务代码,并依据其中的 build.sh 及 Dockerfile 分布进行构建 和 镜像打包工作。同时,会将完整的镜像及代码 Push 到专用的远程库之中,后续用于业务服务部署。

服务部署

服务部署前,会在团队分配的机器资源池中,依据现阶段各机器使用率及所属机房、高低配置,挑选合适的服务机器。

服务部署节点遵循 多机房部署、考量容灾、备份、高低同权重 …等等策略。其中重要的一点是,需要依据选出的节点合理的承接即将部署服务的流量规模,尤其需要评估出适量的冗余度,一般在 1.0 左右。【视各自服务场景而定】

在这里插入图片描述
CI/CD 平台将依据 代码中的 Docker-dompose.yml 文件进行相对的 部署逻辑。在部署顺序上,有着严格的次序:首先需要启动新服务,完成后再停止旧服务。

这样的次序可以保证服务功能迭代无损变更。

上述的“ 打包-构建-部署 ” 的流程可通过平台动态自主触发的形式进行落地。这样每次 Code 库存在更新,便自动触发流程,完成 “打包-构建”。最终服务功能开发完成,交付时间可压缩至秒级。

灵活、自主的构建、部署能力 使团队在日益竞争加剧的环境下,具备绝对的敏捷优势。


见后续文章!

推荐阅读:
暨 广告、推荐、搜索 三大顶级复杂业务之 “广告业务系统详叙”
广告业务系统 之 承前启后 —— “消息中心”
广告业务系统 之 数据中转站 —— “日志中心-实时服务监控”
广告业务系统 之 数据桥梁 —— “日志中心-曝光数据流转结算”
广告业务系统 之 核心通道 —— “日志中心-s2s监测上报”
广告业务系统 之 辅助决策 —— “ AB 实验平台”
广告业务系统 之 框架沉淀 —— “数据消费型服务框架”
广告业务系统 之 智能保险丝 —— “智能流控”


三行代码搞定 —— 反转链表…
Kafka 高吞吐、高性能核心技术及最佳应用场景…
HTTPS 如何保证数据传输安全 —— TLS 协议…
五分钟搭建基于 Prometheus + Grafana 实时监控系统…

相关文章:

  • 空间一个数据库可以做几个网站/国外独立网站如何建站
  • 天权网站建设/营销方式有哪几种
  • 从化建设局网站关停/专业全网优化
  • 郑州电子商务网站建设/厦门人才网个人版
  • 网站建设与维护工作内容/营销方式有哪几种
  • 做网站建设推广好做吗/做网站
  • 简单步骤比别人抢红包快一步
  • 和涤生大数据的故事
  • 一个另类博主的辩白
  • 《Buildozer打包实战指南》第一节 在虚拟机中安装Ubuntu系统
  • c++通讯录管理系统
  • 算法记录Day49|leetcode121. 买卖股票的最佳时机 、122.买卖股票的最佳时机II
  • 项目管理平台,如何助力CMMI3-5级高效落地?
  • 自从我学会了Jenkins的自动构建,我再也没有每次都打包上传到服务器然后发布Java服务了
  • LeetCode 62. 不同路径
  • 如何实现外网远程登录访问jupyter notebook?
  • 2021年帆软杯一等奖作品 |《基于数据可视化的中国编程岗位需求分析》
  • C语言综合练习6:制作贪吃蛇