web应用优化 //todo

nginx 

proxy_connect_timeout 

proxy_read_timeout

proxy_write_timeout

max_fails + fail_timeout  (满足后,等fail_timeout再次发送请求)

proxy_pass  upstream   负载均衡

tomcat(springboot)

集群部署

max-threads: 2000  最大线程数

min-spare-threads: 30     初始会建立的线程数,并且确保最少会有这么多个线程数可用 初始化线程数  

MaxKeepAliveRequests 最大连接数  为了确保服务不会被过多的http长连接压垮,我们需要对tomcat设定个最大连接数,超过这个连接数的请求会拒绝,让其负载到其它机器。达到保护自己的同时起到连接数负载均衡的作用

acceptCount  传入连接请求的最大队列长度

 connectionTimeout="20000"   请求超时 

max-http-post-size: 100MB #请求参数长度

uri-encoding: UTF-8 # tomcat的URI编码

mysql

JDBC

# 初始连接数
initialSize: 5
# 最小连接池数量
minIdle: 10
# 最大连接池数量
maxActive: 200
# 配置获取连接等待超时的时间
maxWait: 60000
# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
timeBetweenEvictionRunsMillis: 60000
# 配置一个连接在池中最小生存的时间,单位是毫秒
minEvictableIdleTimeMillis: 300000
# 配置一个连接在池中最大生存的时间,单位是毫秒
maxEvictableIdleTimeMillis: 900000

redis

#配置redis
redis:
  cluster:
    nodes: 10.110.20.214:7001,
            10.110.20.214:7002,
            10.110.20.214:7003,
            10.110.20.214:7004,
            10.110.20.214:7005,
            10.110.20.214:7006
    max-redirects: 3
    #连接超时时间
    timeout: 5000
    password :
  jedis:
    pool:
      max-total: 20
      #连接池最大连接数(使用负值表示没有限制)
      max-active: 10
      #连接池中的最大空闲连接
      min-idle: 1
      #连接池最大阻塞等待时间(使用负值表示没有限制)
      max-wait: -1
      #连接池中的最小空闲连接
      max-idle: 8
      timeBetweenEvictionRunsMillis : 10
      testWhileIdle : true
      testOnBorrow : true
      testOnReturn : true
  # redis key 标识 区分本地跟测试环境
  cache:
     resource: dev

dubbo

<dubbo:reference id="recordAaUsedService" interface="com.wondware.user.service.RecordAbUsedService" timeout="30000" />

dubbo.reference.retries>1   dubbo重试次数默认是2次,所以服务只调用一次需要设置retries =0

DUBBO消费端设置额超时时间不能随心所欲,需要根据业务实际情况来设定,如果设置的时间太短,导致复杂业务本来就需要很长时间完成,导致在设定的超时时间内无法完成正常的业务处理。

如果消费端达到超时时间,那么dubbo会进行重试机制(如果配置了dubbo.reference.retries>1)

hive

h2

oracle

# 初始连接数
initialSize: 5
# 最小连接池数量
minIdle: 10
# 最大连接池数量
maxActive: 2000
# 配置获取连接等待超时的时间
maxWait: 300000
# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
timeBetweenEvictionRunsMillis: 60000
# 配置一个连接在池中最小生存的时间,单位是毫秒
minEvictableIdleTimeMillis: 300000
# 配置一个连接在池中最大生存的时间,单位是毫秒

猜你喜欢

转载自blog.csdn.net/qq_24271537/article/details/113349959
今日推荐