新项目app上线方案

目录

1       准备工作... 3

1.1             了解需求... 3

1.2             数据库备份... 3

1.3             获取版本... 4

2       现网上线工作... 5

2.1             Tomcat新建... 5

2.2             程序上传... 5

2.3             解压并存放... 5

2.4             替换config文件... 6

2.5             重启tomcat6

2.6             Nginx书写配置虚拟主机... 7

3       域名解析... 8

3.1             阿里云平台域名服务操作... 8

3.2             验证... 9

1  准备工作

1.1   了解需求

  1. 图片等静态文件资源来自项目包中还是nginx静态分离指定目录

  2. 使用数据库为boss,或者新建数据库?

  3. 上线新项目是否改动现网库。

  4. 程序依赖中间件服务?

  5. 程序上线后业务规模,及时调整tomcat与系统调优应对高并发。

1.1   数据库备份

当前终端登录用户为普通用户,请切换root用户:

1、  进入数据备份目录:

spacer.gif

spacer.gif

[此文件为数据库日常备份脚本压缩的数据文件,当天请手动再次备份,以保障数据实时性]

1、  执行数据备份命令

spacer.gif

mysqldump--socket=/data/db/mysql3309/mysql.sock -uroot -h127.0.0.1 -P3309 boss >boss_cnl20170404.sql

数据备份名称应为[项目名称]_[运维人员名字简写][ 日期]yyyymmdd

3、检查数据文件大小是否正常

spacer.gif

 

1.1   获取版本

协调开发,获取增量包

2  现网上线工作

2.1   Tomcat新建

服务器:*.*.*.*
目录:/data/www/tomcat8084

版本:ApacheTomcat/7.0.67

2.2   程序上传

1、  使用rz命令上传war包进入../webapps/ROOT(以全量包为例)

spacer.gif


 

1.1   解压并存放

1、  开始替换项目(全量包)

  说明:鉴于开发提供为全量包,应在备份过后清空ROOT目录,因为包含未知class增减,本文不建议使用cp –f 操作,即覆盖操作。请确认之前备份工作是否完成,使用rm命令清空(本系统已做回收站机制,在/root/.trash见删除过的文件)

   spacer.gif

ROOT目录下面解压war

spacer.gif

1.2   替换config文件

1、在项目中的class目录下,删除config文件(此config文件为开发的环境)

spacer.gif

2、请到备份的项目中,cp 现网config文件至现网的指定config目录

spacer.gif

1.1    重启tomcat

1、使用linux命令kill tomcat进程(现网中由于业务还在运行(和zabbix正在监控此tomcat进程或者其他tcp连接),无法通过shutdown.sh停止tomcat

spacer.gif

1、  启动tomcat并且实时打印tomcat日志,观察报错情况

spacer.gif

出现tomcat启动结果未知,如果出现报错,请运维人员及时通知开发,处理报错问题

spacer.gif

注:如补丁包,请确实是否为classxmlproperties等配置文件,则需要重启

    如只是jspjshtml等静态文件,不需要重启,补丁包关于static文件更新,请在nginx80/static处,静态文件转发地址,请注意同时更新。 

    如果只sql文件,insert等不需要重启tomcat,关于表结构等操作,需要重启tomcat以便生效。

1.2   Nginx书写配置虚拟主机

1、  Nginx优点为,各虚拟主机互不干预,平滑升级。

nginxvhosts文件下新建虚拟主机,并且配置存放accesserror日志存放

wKioL1kAaC2jI30wAAAj8bCz3Mk248.png-wh_50

1、  nginx自检新建的虚拟主机

[root@iZ23z6g1kacZ vhost]# nginx -c/etc/nginx/nginx.conf -t

nginx: the configuration file /etc/nginx/nginx.confsyntax is ok

nginx: configuration file /etc/nginx/nginx.conf testis successful(提示配置文件书写规则正确)

3、重载nginx已完成平滑升级,配置文件生效

[root@iZ23z6g1kacZ vhost]# nginx -c/etc/nginx/nginx.conf -s reload

spacer.gif

1  域名解析

1.1   阿里云平台域名服务操作

1、  进入阿里云域名服务页面,本次为备案解析二级域名,所以在*.cn根域名下添加解析

wKiom1kAaIOBckQ3AACdANalcPk643.png-wh_50


1、  新建一条二级域名解析

wKiom1kAaKvQHTsVAAC3FaFl-1w948.png-wh_50

1.1   验证

wKioL1kAaMGx-MmGAACOehKQgzs388.png-wh_50