Commit 9feba54f authored by zihao21's avatar zihao21

Updates 后端开发/deployment.md

Auto commit by GitBook Editor
parent 3cbe074b
# 部署 # 部署
# tomcat # tomcat
<a href="#tomcat"></a> <a href="#tomcat"></a>
### 1. 关闭 eclipse server `Auto Reload` 特性 ### 1. 关闭 eclipse server `Auto Reload` 特性
* 禁用默认值 * 禁用默认值
<img src="assets/disable_autoreload_all.png" width="50%"/> <img src="/assets/disable_autoreload_all.png" width="50%"/>
* 单独禁用项 * 单独禁用项
<img src="assets/disable_autoreload_1.png" width="50%"/> <img src="/assets/disable_autoreload_1.png" width="50%"/>
* 建议关闭 jar 扫描, 提高启动速度, 减少内存占用 , 修改 `catalina.properties ` * 建议关闭 jar 扫描, 提高启动速度, 减少内存占用 , 修改 `catalina.properties `
```properties ```properties
tomcat.util.scan.StandardJarScanFilter.jarsToSkip=*.jar tomcat.util.scan.StandardJarScanFilter.jarsToSkip=*.jar
``` ```
### 2. 内存设置 ### 2. 内存设置
* Linux 修改 `catalina.sh` ,开始处添加 * Linux 修改 `catalina.sh` ,开始处添加
```bash ```bash
JAVA_OPTS='-Xms512m -Xmx2048m' JAVA_OPTS='-Xms512m -Xmx2048m'
``` ```
* Windows 修改 `catalina.bat` * Windows 修改 `catalina.bat`
```bash ```bash
set JAVA_OPTS=-Xms512m -Xmx2048m set JAVA_OPTS=-Xms512m -Xmx2048m
``` ```
### 3. 启用远程 JMX 连接 ### 3. 启用远程 JMX 连接
修改 catalina.sh , 搜索 `[ "$1" = "start" ]` , 在下方添加 修改 catalina.sh , 搜索 `[ "$1" = "start" ]` , 在下方添加
```bash ```bash
JAVA_OPTS="-Dcom.sun.management.jmxremote \ JAVA_OPTS="-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=1099 \ -Dcom.sun.management.jmxremote.port=1099 \
-Djava.rmi.server.hostname=192.168.1.111 \ -Djava.rmi.server.hostname=192.168.1.111 \
-Dcom.sun.management.jmxremote.ssl=false \ -Dcom.sun.management.jmxremote.ssl=false \
-Dcom.sun.management.jmxremote.authenticate=false $JAVA_OPTS" -Dcom.sun.management.jmxremote.authenticate=false $JAVA_OPTS"
``` ```
> linux 系统可以用 `` `hostname -i` `` 获取 ip > linux 系统可以用 `` `hostname -i` `` 获取 ip
# Weblogic # Weblogic
<a href="#weblogic"></a> <a href="#weblogic"></a>
>感谢融资租赁事业部的技术小伙伴协助! >感谢融资租赁事业部的技术小伙伴协助!
weblogic 上的部署有些特殊,主要注意以下几点: weblogic 上的部署有些特殊,主要注意以下几点:
> **以下设置仅仅针对 weblogic 12 版本,其他版本可能存在通配符等问题** > **以下设置仅仅针对 weblogic 12 版本,其他版本可能存在通配符等问题**
### 1. JNDI 数据源 ### 1. JNDI 数据源
weblogic 上定义好数据源后,在 `config.properties` 中需要修改 jndi 的名字 weblogic 上定义好数据源后,在 `config.properties` 中需要修改 jndi 的名字
```properties ```properties
db.jndiName=hap_dev db.jndiName=hap_dev
``` ```
> tomcat 中是 java:comp/env/jdbc/hap_dev,这点不一样 > tomcat 中是 java:comp/env/jdbc/hap_dev,这点不一样
### 2. jar 冲突问题 ### 2. jar 冲突问题
weblogic 上的一些 jar 和框架中的存在冲突,需要排除掉。 weblogic 上的一些 jar 和框架中的存在冲突,需要排除掉。
修改项目中的 `pom.xml`,留意注释下的配置 修改项目中的 `pom.xml`,留意注释下的配置
```xml ```xml
<dependency> <dependency>
<groupId>com.hand</groupId> <groupId>com.hand</groupId>
<artifactId>hap</artifactId> <artifactId>hap</artifactId>
<type>war</type> <type>war</type>
<version>${hap.version}</version> <version>${hap.version}</version>
<!--排除 jar --> <!--排除 jar -->
<exclusions> <exclusions>
<exclusion> <exclusion>
<groupId>com.google.guava</groupId> <groupId>com.google.guava</groupId>
<artifactId>guava</artifactId> <artifactId>guava</artifactId>
</exclusion> </exclusion>
</exclusions> </exclusions>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.hand</groupId> <groupId>com.hand</groupId>
<artifactId>hap</artifactId> <artifactId>hap</artifactId>
<version>${hap.version}</version> <version>${hap.version}</version>
<classifier>classes</classifier> <classifier>classes</classifier>
<scope>provided</scope> <scope>provided</scope>
<!--排除 jar --> <!--排除 jar -->
<exclusions> <exclusions>
<exclusion> <exclusion>
<groupId>com.google.guava</groupId> <groupId>com.google.guava</groupId>
<artifactId>guava</artifactId> <artifactId>guava</artifactId>
</exclusion> </exclusion>
</exclusions> </exclusions>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.hand</groupId> <groupId>com.hand</groupId>
<artifactId>hap-db</artifactId> <artifactId>hap-db</artifactId>
<version>${hap.version}</version> <version>${hap.version}</version>
<!--排除 jar --> <!--排除 jar -->
<exclusions> <exclusions>
<exclusion> <exclusion>
<groupId>com.google.guava</groupId> <groupId>com.google.guava</groupId>
<artifactId>guava</artifactId> <artifactId>guava</artifactId>
</exclusion> </exclusion>
</exclusions> </exclusions>
</dependency> </dependency>
... ...
<plugin> <plugin>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId> <artifactId>maven-war-plugin</artifactId>
<version>2.6</version> <version>2.6</version>
<configuration> <configuration>
<attachClasses>true</attachClasses> <attachClasses>true</attachClasses>
<overlays> <overlays>
<overlay> <overlay>
<groupId>com.hand</groupId> <groupId>com.hand</groupId>
<artifactId>hap</artifactId> <artifactId>hap</artifactId>
<!--排除 jar --> <!--排除 jar -->
<excludes> <excludes>
<exclude>WEB-INF/lib/guava-15.0.jar</exclude> <exclude>WEB-INF/lib/guava-15.0.jar</exclude>
<exclude>WEB-INF/lib/stax-api-1.0.1.jar</exclude> <exclude>WEB-INF/lib/stax-api-1.0.1.jar</exclude>
<exclude>WEB-INF/lib/xercesImpl-2.10.0.jar</exclude> <exclude>WEB-INF/lib/xercesImpl-2.10.0.jar</exclude>
<exclude>WEB-INF/lib/xml-apis-1.3.04.jar</exclude> <exclude>WEB-INF/lib/xml-apis-1.3.04.jar</exclude>
<exclude>WEB-INF/lib/xml-apis-ext-1.3.04.jar</exclude> <exclude>WEB-INF/lib/xml-apis-ext-1.3.04.jar</exclude>
</excludes> </excludes>
</overlay> </overlay>
</overlays> </overlays>
</configuration> </configuration>
</plugin> </plugin>
``` ```
打包后确保 lib 目录不存在上述 6 个 jar。 打包后确保 lib 目录不存在上述 6 个 jar。
### 3. 新增 weblogic.xml ### 3. 新增 weblogic.xml
在 WEB-INF 目录下新增 weblogic.xml 在 WEB-INF 目录下新增 weblogic.xml
```xml ```xml
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<weblogic-web-app> <weblogic-web-app>
<container-descriptor> <container-descriptor>
<prefer-application-packages> <prefer-application-packages>
<package-name>org.springframework.*</package-name> <package-name>org.springframework.*</package-name>
<package-name>org.hibernate.*</package-name> <package-name>org.hibernate.*</package-name>
<package-name>javax.validation.*</package-name> <package-name>javax.validation.*</package-name>
<package-name>javax.validation.spi.*</package-name> <package-name>javax.validation.spi.*</package-name>
<package-name>org.slf4j.*</package-name> <package-name>org.slf4j.*</package-name>
</prefer-application-packages> </prefer-application-packages>
<show-archived-real-path-enabled>true</show-archived-real-path-enabled> <show-archived-real-path-enabled>true</show-archived-real-path-enabled>
</container-descriptor> </container-descriptor>
</weblogic-web-app> </weblogic-web-app>
``` ```
上述 3 点在部署的时候请留意。 上述 3 点在部署的时候请留意。
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment