如何实现服务器的批量自动发布

本文介绍了如何设计一个自动化发布系统,以解决手动发布过程中的问题。系统通过JSP+Java Bean架构,利用HTTP Server和Shell脚本实现服务器的停止、启动和数据库脚本的执行。操作员通过浏览器界面按步骤进行,每个步骤的执行状态和结果清晰可见,提高了发布效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目前我们每次版本发布时大致流程为:停所有服务器→传war包→刷数据库脚本→启动所有服务器。整个流程经常因为数据库脚本有误、操作员不熟悉操作规范、 安全策略要求使用堡垒机逐个登录各服务器操作等原因而导致发布过程漫长,我们需要开发实现一个自动发布的工具,当进行版本发布时,先将war包、数据库脚 本等上传至服务器指定目录后,操作员可以通过浏览器访问一个页面,输入后续操作需要的用户名密码(如刷数据库脚本时需要的数据库用户名密码)、然后通过傻瓜式的发布向导指引操作员"是否停止服务器"、点击下一步按钮"是否开始上传war包"、再点击下一步按钮"是否开始刷数据库脚本"等。每一步都实现程序自动控制,并且每一步操作都有提示结果返回,以便在操作员发现自动程序出错时改为手动执行,直到整个发布过程结束。

 

总体设计方案:

1、 整个软件架构为:一个部署在某台服务器上的HTTP Server作为总控的客户端,在生产环境各应用服务器上各部署一个简化的HTTP Server作为服务器端。客户端作为Web服务器向操作员提供web操作界面,并接收操作员指令向各服务器端发送命令请求,服务器端执行命令后返回结果,在客户端将其显示以便操作员掌握指令执行情况。

2、 客户端为JSP+Java Bean架构,JDK版本1.5,须运行在J2EE容器之上,可通过部署一个Tomcat或者在应用中内嵌Jetty实现。

3、 服务器端执行客户端的指令请求是通过Java调用本地Shell脚本实现的,并接收脚本执行的输出内容返回客户端。

4、该次版本实现各服务器仅实现停止、启动和重启Weblogic各节点的指令;向数据库刷脚本的操作是由客户端通过调用本地的Oracle客户端实现。

 

页面设计方案:

1、 首页为登录页࿰

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值