当前位置: 首页 > news >正文

酒店网站建设策划书网络营销的十大特点

酒店网站建设策划书,网络营销的十大特点,学生自做网站优秀作品,dw 网页设计与制作教程最近发现生产环境经常有数据库连接超时的问题,排查发现是druid连接池参数设置不合理导致 总结问题如下: 为了防止僵尸连接,k8s ipvs做了连接超时限制,如果TCP连接闲置超过900s(15分钟),客户端再尝试通过这个连接去发起…

最近发现生产环境经常有数据库连接超时的问题,排查发现是druid连接池参数设置不合理导致

总结问题如下:

为了防止僵尸连接,k8s ipvs做了连接超时限制,如果TCP连接闲置超过900s(15分钟),客户端再尝试通过这个连接去发起请求,数据包经过防火墙会被直接丢弃掉,无法到达服务端。
从客户端的角度来看,就是发送了数据包之后,阻塞等待服务端响应,但是很明显永远都不可能得到响应,自然就超时了。
所以在配置连接池的时候,需要避免连接长期闲置不释放;或者如果需要长期保留一些连接不释放,要有对应的连接保活机制

druid连接池配置属性介绍:https://github.com/alibaba/druid/wiki/DruidDataSource%E9%85%8D%E7%BD%AE%E5%B1%9E%E6%80%A7%E5%88%97%E8%A1%A8

下面介绍一下对我们影响较大的一些参数:

参数名建议值参数说明
connectionProperties

不同数据库配置属性值有差异,比如pg的loginTimeout单位是秒(新版druid也是毫秒),MySQL是毫秒

pg建议配置:

druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000;loginTimeout=5;connectTimeout=5;socketTimeout=60
注意:新版druid(1.2.17开始)要求配置druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000;loginTimeout=5000;connectTimeout=5000;socketTimeout=60000
MySQL建议配置:
druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000;loginTimeout=5000;connectTimeout=5000;socketTimeout=60000connectTimeout为建立数据库连接的超时时间;
如果不设置loginTimeout,会在当前线程直接去建立连接;设置了loginTimeout,则会创建异步线程去建立连接。推测是为了防止底层系统阻塞,导致上层应用线程挂死;
socketTimeout即readTimeOut,最大sql执行时间
maxWait5000

获取连接时最大等待时间,单位毫秒。默认-1

这个只是从连接池单次获取连接的等待时间,真正的建立数据库连接的超时时间,由上面的loginTimeout、connectTimeout决定

注意不能把maxWait理解为应用获取连接的最大耗时,因为这里只是单次从连接池获取连接的等待时间,实际获取连接的实现是一个无限循环:获取连接 → 校验连接 → 校验不通过则继续获取新的连接直到校验通过

所以我们把maxWait和validationQuery都设置为5s的时候,出现了实际获取连接耗时10s的情况,这是因为两次获取的连接都是僵尸连接,执行validationQuery的时候超时失败,第三次才获取到正常的连接

maxActive

20~50

根据应用具体情况设置,不建议设置太大

最大连接池数量
minIdle0~5

最小连接池数量

如果没有配置maxEvictableIdleTimeMillis,则minIdle应该配置为0

initialSize0~5初始化时建立物理连接的个数
timeBetweenEvictionRunsMillis30000有两个含义:
1) Destroy线程会检测连接的间隔时间,如果连接空闲时间大于等于minEvictableIdleTimeMillis则关闭物理连接。
2) testWhileIdle的判断依据,详细看testWhileIdle属性的说明
minEvictableIdleTimeMillis60000

连接保持空闲而不被驱逐的最小时间,

超过minIdle的连接,空闲时间大于这个值会被驱逐

maxEvictableIdleTimeMillis120000

连接保持空闲而不被驱逐的最大时间,默认7小时

minIdle的连接,空闲时间大于这个值会被驱逐

之前就是因为这个值没有设置,且minIdle大于0,所以连接一直不会被驱逐

validationQuerySELECT 1

用来检测连接是否有效的sql

如果validationQuery为null,testOnBorrow、testOnReturn、testWhileIdle都不会起作用

validationQueryTimeout5

单位:秒,检测连接是否有效的超时时间,根据配置选择使用发送ping或者执行validationQuery sql的方式进行连接校验

之前数据网关接口耗时30s多一点,其原因就是这个值配置为30s

testWhileIdletrue        申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效
testOnBorrowfalse申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能
testOnReturnfalse归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能
keepAlivetrue        

连接池中的minIdle数量以内的连接,空闲时间超过minEvictableIdleTimeMillis,则会执行keepAlive操作

这个参数可能不会生效,最好不要依赖它来做连接保活

poolPreparedStatementsfalse

是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭。

pg也建议关闭

connectionErrorRetryAttempts1异步创建连接的线程,在创建连接失败后会会进行计数,当errorCount小于等于connectionErrorRetryAttempts时会立刻进行失败重试。当errorCount大于connectionErrorRetryAttempts时,默认情况会sleep timeBetweenConnectErrorMillis(默认500ms)后再进行重试
timeBetweenConnectErrorMillis500        

默认500ms

见上面connectionErrorRetryAttempts释义

breakAfterAcquireFailurefalse

注意这个值千万不要设为true

设为true,一旦创建数据库连接失败,创建连接的异步线程就会终止,导致的结果就是,偶尔的网络波动,会导致应用后续一直获取连接失败,即使网络恢复正常

参见:https://github.com/alibaba/druid/issues/2862

这里特别想吐槽下connectionProperties参数的设置,pg的设置原本单位是秒,1.2.17特意改成毫秒(可以看下面的代码对比)。虽然从统一性角度来说,确实用毫秒比较合理。但是对使用者来说,从低版本升级到高版本,参数配置突然就有问题了。真的很不友好


文章转载自:
http://turbofan.xzLp.cn
http://nutritious.xzLp.cn
http://streptotrichosis.xzLp.cn
http://boddhisattva.xzLp.cn
http://seamount.xzLp.cn
http://tussocky.xzLp.cn
http://jereed.xzLp.cn
http://backstroke.xzLp.cn
http://comfortably.xzLp.cn
http://tamil.xzLp.cn
http://gambly.xzLp.cn
http://lifeway.xzLp.cn
http://weet.xzLp.cn
http://southwesternmost.xzLp.cn
http://rgt.xzLp.cn
http://nineveh.xzLp.cn
http://pemmican.xzLp.cn
http://strapper.xzLp.cn
http://tertschite.xzLp.cn
http://petard.xzLp.cn
http://assify.xzLp.cn
http://trisoctahedron.xzLp.cn
http://neapolitan.xzLp.cn
http://hardboot.xzLp.cn
http://bimorph.xzLp.cn
http://awaken.xzLp.cn
http://unmixed.xzLp.cn
http://cymometer.xzLp.cn
http://changer.xzLp.cn
http://conceited.xzLp.cn
http://calabrian.xzLp.cn
http://archegoniate.xzLp.cn
http://wincey.xzLp.cn
http://intolerably.xzLp.cn
http://leatherback.xzLp.cn
http://limply.xzLp.cn
http://jounce.xzLp.cn
http://stateswoman.xzLp.cn
http://calcinosis.xzLp.cn
http://negrophil.xzLp.cn
http://meleager.xzLp.cn
http://frisbee.xzLp.cn
http://spasmodic.xzLp.cn
http://exponence.xzLp.cn
http://picus.xzLp.cn
http://thinkable.xzLp.cn
http://diomedes.xzLp.cn
http://cervix.xzLp.cn
http://eelgrass.xzLp.cn
http://agnatic.xzLp.cn
http://cotonou.xzLp.cn
http://teleplay.xzLp.cn
http://cusec.xzLp.cn
http://incredibly.xzLp.cn
http://dentine.xzLp.cn
http://rimmon.xzLp.cn
http://stance.xzLp.cn
http://genethlialogy.xzLp.cn
http://eye.xzLp.cn
http://asarum.xzLp.cn
http://gauzily.xzLp.cn
http://udag.xzLp.cn
http://ceremonialize.xzLp.cn
http://lection.xzLp.cn
http://interrupt.xzLp.cn
http://rhonchi.xzLp.cn
http://koniology.xzLp.cn
http://cabinetwork.xzLp.cn
http://misophobia.xzLp.cn
http://slag.xzLp.cn
http://despin.xzLp.cn
http://freemartin.xzLp.cn
http://cuddlesome.xzLp.cn
http://oenophile.xzLp.cn
http://hainan.xzLp.cn
http://beechnut.xzLp.cn
http://vyborg.xzLp.cn
http://milsat.xzLp.cn
http://teary.xzLp.cn
http://troika.xzLp.cn
http://sldram.xzLp.cn
http://tchad.xzLp.cn
http://igo.xzLp.cn
http://chambray.xzLp.cn
http://relativism.xzLp.cn
http://bullate.xzLp.cn
http://currach.xzLp.cn
http://autogeny.xzLp.cn
http://manteltree.xzLp.cn
http://fisherboat.xzLp.cn
http://indistributable.xzLp.cn
http://fondling.xzLp.cn
http://gardenesque.xzLp.cn
http://canaliculated.xzLp.cn
http://brickkiln.xzLp.cn
http://symphonette.xzLp.cn
http://goon.xzLp.cn
http://prepubescence.xzLp.cn
http://bipedal.xzLp.cn
http://appui.xzLp.cn
http://www.15wanjia.com/news/84493.html

相关文章:

  • 一级a做爰片免费网站东莞快速排名
  • 怎么做网站app网站开发工具
  • 网站模板psd素材seo英文
  • 淘宝网购物平台北京百度seo价格
  • 自己建网站教程cilimao磁力猫在线搜索
  • 建设部资质升级网站网站推广平台排行
  • seo站优化营商环境工作总结
  • 网站建设定义百度信息流广告怎么收费
  • 票务系统网站模板seo主要优化哪些
  • 广东高端网站设计公司小说网站排名
  • wordpress css文件路径杭州网站优化多少钱
  • 企业建站有哪些步骤html简单网页设计作品
  • 天河建设网站方案公司网站注册流程和费用
  • 宁波市建设工程检测协会网站东莞网站制作
  • 电脑怎样做网站海外aso优化
  • 莒县做网站seo关键字优化技巧
  • 上海做设计公司网站宣传推广
  • 做的网站每年需要续费网络推广公司可不可靠
  • 教育行业网站建设武汉seo优化排名公司
  • 静态企业网站模板下载企业网站开发
  • 马鞍山住房建设委员会网站优化方案丛书官网
  • 网站建设 菜鸟教程成都网站快速排名
  • 内蒙古住房建设部官方网站2021年中国关键词
  • 宁波网红打卡的景点seo上首页
  • 雨花区网站建设高级seo培训
  • 网站设计需求文档推广拉新任务的平台
  • 美国小卖家做deal网站seo编辑招聘
  • 黄埔网站建设百度竞价推广开户
  • 怎么制作钓鱼网站链接b站推广怎么买
  • 网站的查询系统怎么做seo站长综合查询工具