美文网首页
无损发布(web服务)

无损发布(web服务)

作者: 赫灵 | 来源:发表于2018-12-17 20:48 被阅读0次

1、何为无损发布?

无损发布就是在应用进行发布升级的时候,不会影响到正在使用系统的用户,比如用户正在进行资料更新,如果这个时候进行升级,系统升级往往需要重启,重启会导致用户的资料更新失败。如何做到升级不影响用户的使用,就是今天我们讨论的无损发布。不会因为系统重启导致系统数据的丢失。

2、如何做到无损发布?

2.1、首先我们来看看web应用的无损发布,也即Nginx+Tomcat的架构模式,如下图:

2.2、无损发布的基本思路:

2.2.1、首先Nginx 动态修改 upstream,请求不再路由到Tomcat1

2.2.2、等待Tomcat1上面的请求处理完毕

2.2.3、对Tomcat1进行升级

2.2.4、检查Tomcat1是否升级成功

2.2.5、再修改Nginx 的upstream,把请求路由到Tomcat1上面

2.2.6、循环上面的步骤,直到所有的Tomcat都升级完毕

2.3、需要解决的技术问题:

2.3.1、Nginx 动态修改 upstream:

2.3.1.1、ngx_http_dyups_module模块能动态修改upstream

或者

2.3.1.2、通过lua动态更改upstream

(修改之后,路由到被踢掉的Tomcat上面的请求是否还能继续处理,待验证?)

2.3.2、识别Tomcat上面的请求处理完毕(只有等到Tomcat上面的请求处理完毕以后,才能对Tomcat进行进行重启,这样才能做到无损发布,否则还是会有部分请求会失败):

2.3.2.1、通过监控Tomcat的处理请求的线程的状态,来判断现在是否还有请求没有处理完毕

相关文章

  • 无损发布(web服务)

    1、何为无损发布? 无损发布就是在应用进行发布升级的时候,不会影响到正在使用系统的用户,比如用户正在进行资料更新,...

  • 无损发布

    转载:https://www.sohu.com/a/228710646_178889[https://www.so...

  • 公司saas架构总结

    架构特征:服务组件化,docker化 , 组件化可以无损发布 以及根据流量动态扩展 按业务组织团队 ,业务服务都在...

  • tomcat 如何做一个自己的个人网站

    使用tomcat发布 tomcat 网站的服务器,专业叫法:web服务器、web容器、web中间件 暂时可理解为指...

  • 周二学习

    第一种方法1.java项目中发布web service服务。@Web service讲一个类发布成一个ws服务。2...

  • 如何将web application发布到网上

    WEB Application与Native Application的区别 Web Apps发布在服务器上 使用D...

  • web服务(同域和跨域)

    web服务请求数据更新界面的步骤 1. 服务器把数据汇集起来,通过一个web服务对外发布。 2. 浏览器加载web...

  • myeclipse_发布应用

    通过MyEclipse发布web应用 前置条件:web项目,配置好Tomcat服务 点击sever--->Tomc...

  • LabVIEW web服务发布流程

    本文利用NI自带的WEB服务器,将程序面板通过嵌入式网络服务器来发布网页,可以在局域网中通过网页查看VI面板,...

  • Rsync项目案例

    节点名称 用途 IP地址 网站发布路径 Web1 服务节点1 192.168.1.11 /web1/wwwroot...

网友评论

      本文标题:无损发布(web服务)

      本文链接:https://www.haomeiwen.com/subject/vcuckqtx.html