1. 概述

在部署的时候一些系统的配置调整,避免在上线的时候频繁遇到性能问题。

2. 日志调整

日志可以记录程序的运行信息,但是如果日志的级别太低,会记录大量日志,产生大量的IO,导致程序性能下降。因此需要对日志级别进行调整。

2.1 微服务日志调整

在开发模式下,我们的日志模式一般使用调试模式,在生产环境下,我们希望使用ERROR模式,这个时候我们可以在运行时指定 log4j 的配置文件。具体的使用方法如下:

logback-spring.xml拷贝到 jar包相同的路径。

然后使用如下命令启动微服务:

java -jar -Xbootclasspath/a:. jpaas-user.jar –nacos.address=localhost:8848
使用 -Xbootclasspath/a:. 指定资源文件路径,这样我们只需要修改 logback-spring.xml 的模式为 ERROR。这样也方便我们直接改成 DEBUG 模式。

2.2 mybatis 日志开关

在代码 DefaultMybatisPlusConfig 中,我们手工设置了mybatis 日志相关的配置。

@Value(value = “${redxun.dblog:true}”)
private boolean showLog=true;

if(showLog){
configuration.setLogImpl(StdOutImpl.class);
}
else{
configuration.setLogImpl(NoLoggingImpl.class);
}
这个日志输出默认是 true,即默认输出日志,当然用户可以在 nacos-config-dev.properties 通过设置 redxun.dblog 关闭输入SQL的日志。

2.2. 修改nacos 日志

<root>
        <level value="INFO"/>
        <appender-ref ref="rootFile"/>
    </root>

这个修改成 ERROR.

2.3 修改 seata 配置

找到 conf/logback.xml 文件

<root level="INFO">
        <appender-ref ref="ALL"/>
        <appender-ref ref="WARN"/>
        <appender-ref ref="ERROR"/>
        <appender-ref ref="CONSOLE"/>
    </root>

默认为 INFO ,生产修改为 ERROR

2.5 修改 ROCKETMQ配置

默认为 INFO ,生产修改为 ERROR

3.微服务线程调整

我们的微服务应用一般是打包成jar 包,默认的jar包是内置的tomcat在运行。一般情况我们可以在 *.yml 属性文件中对tomcat的最大线程数,空闲线程数进行调整,但是这样有个问题。如果将这些数据配置到 yml文件,程序打成包后,如果需要调整这些个参数,就必须重新打包。

实际上我们可以将这些参数配置到 nacos 的文件中。

3.1 全局配置

顾名思义,就是我们配置有个地方,所有的微服务都会使用这个配置。

修改 nacos-config-dev.properties

增加配置:

# 等待连接数
server.tomcat.accept-count=1000
# 最大连接数
server.tomcat.max-connections=1000
# 最大线程数量
server.tomcat.max-threads=1000
# 最小线程数
server.tomcat.min-spare-threads=22

关于这些线程的调整,我们可以参考以下文章。

https://www.cnblogs.com/crazymakercircle/p/11748214.html

3.2 对某个微服务单独配置

有些情况下,我们想对某一个微服务应用进行单独设置,这个时候我们可以做如下配置。

我们可以 使用

  1. 微服务名 +”-dev.properties”
  2. 微服务名称 +”.properties”

其中优先第一条,如果没有配置则获取 第二条,再获取全局的配置。

比如我们想对 jpaas-system 服务设置,我们可以做如下的配置:

修改 jpaas-system-dev.properties

# 等待连接数
server.tomcat.accept-count=100
# 最大连接数
server.tomcat.max-connections=500
# 最大线程数量
server.tomcat.max-threads=500
# 最小线程数量
server.tomcat.min-spare-threads=19

这样就会优先这个配置,具体测试,我们可以使用 普罗米修斯进行验证。

4. 前端启用压缩

现在的程序使用单页面应用,因此程序会在一开始就会加载页面JS。如果带宽不够,那么会影响页面下载速度。

我们可以使用NGINX 进行压缩,加快文件下载。

编辑 nginx.conf

gzip  on;
    gzip_min_length 1k;
    gzip_buffers 4 16k;
    gzip_http_version 1.0;
    gzip_comp_level 3;
    gzip_types text/plain application/javascript application/css  text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
    gzip_vary off;
    gzip_disable "MSIE [1-6]\.";

gzip_comp_level 是压缩等级,可以使用 1-9 ,值越大,压缩比越高,但是对CPU的消耗也就越高。压缩比达到了 3倍.

文档更新时间: 2022-01-13 14:26   作者:zyg