项目发布流程&统一接入前端

发布时做了什么(标准Tomcat服务为例)

  • 验证项目名与Tag名, 避免发布错误的项目代码
  • 上传项目包到指定服务器, 并验证完整性
  • 将此服务器从线上移除(会先关闭新请求并尝试等待现有服务完成, 但有超时限制并非无限等待)
  • 备份上一版本后将其移除并替换为新版本的代码
  • 启动Tomcat 并监控心跳检查页面, 待心跳页面可正常访问后接入生产流量.

统一接入前端

统一接入前端,所有外网请求和访问的统计接入层,是7层应用,位于4层负载后面,主要功能有:

  • 负载均衡,多种负载均衡算法,例如:轮询(RR)、权重(weight)、会话保持(session sticky)、哈希算法(IP hash)、最小链接数;
  • 转发规则,多种转发规则,根据uri、user agent、域名、请求IP地址、cookie内容等方面进行转发
  • IP 黑白名单, 根据特定IP 对访问进行限制
  • 流量拦截,通过uri、ip等维度对访问进行访问频次的限制,可以防CC以及整体服务的限流
  • 流量切换,分中心进行流量切换,根据uri对服务进行降级处理
  • 动态后端负载机器热变更,动态的变更后端负载机器,热生效
  • 流量镜像,支持流量镜像,针对线上的流量进行流量复制
  • 灰度发布,支持AB发布,支持不同线上版本的发布,使用header头,加不同的header头转发给后端,区分是A还是B服务
  • 后端服务健康检查,根据定义的健康检查页面,定时探测后端服务的健康状态,识别是否存活后,自动踢负载、加入负载
  • 配置版本控制,配置版本,便于回滚和发布
  • 与软waf的结合,实现安全拦截
  • 支持http和https 服务,支持websocket

你可能感兴趣的:(项目发布流程&统一接入前端)