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

宜昌网站制作公司排名上海发布最新情况

宜昌网站制作公司排名,上海发布最新情况,班级网站开发,芜湖建站公司场景:高并发情况下mybatis 动态sql 解析 锁问题优化 优化前 并发测试 XMLLanguageDriver 类 的 createSqlSource 方法有锁 而且 每次执行时都会走该方法 优化前 : 线程有Block 优化后的 LanguageDriver public class CustomXMLLanguageDriver im…

场景:高并发情况下mybatis 动态sql 解析 锁问题优化

  • 优化前 并发测试 XMLLanguageDriver 类 的 createSqlSource 方法有锁 而且 每次执行时都会走该方法
    在这里插入图片描述

  • 在这里插入图片描述

  • 优化前 : 线程有Block
    在这里插入图片描述

  • 优化后的 LanguageDriver

public class CustomXMLLanguageDriver implements LanguageDriver {private final Map<String, SqlSource> sqlSourceCache = new ConcurrentHashMap<>();@Overridepublic ParameterHandler createParameterHandler(MappedStatement mappedStatement, Object parameterObject, BoundSql boundSql) {return new DefaultParameterHandler(mappedStatement, parameterObject, boundSql);}@Overridepublic SqlSource createSqlSource(Configuration configuration, XNode script, Class<?> parameterType) {XMLScriptBuilder builder = new XMLScriptBuilder(configuration, script, parameterType);return builder.parseScriptNode();}@Overridepublic SqlSource createSqlSource(Configuration configuration, String script, Class<?> parameterType) {if (script.startsWith("<script>")) {SqlSource cachedSqlSource = sqlSourceCache.get(script);if (cachedSqlSource != null) {return cachedSqlSource;}XPathParser parser = new XPathParser(script, false, configuration.getVariables(), new XMLMapperEntityResolver());SqlSource sqlSource = this.createSqlSource(configuration, parser.evalNode("/script"), parameterType);sqlSourceCache.put(script, sqlSource);return  sqlSource;} else {script = PropertyParser.parse(script, configuration.getVariables());TextSqlNode textSqlNode = new TextSqlNode(script);return (SqlSource) (textSqlNode.isDynamic() ? new DynamicSqlSource(configuration, textSqlNode) : new RawSqlSource(configuration, script, parameterType));}}
}

优化后使用相同的压测条件 发现线程没有Block 的 而且调用栈 中只有Druid 的 初始化线程池 有Block XMLLanguageDriver Block 消失

在这里插入图片描述

  • 此时的 线程没有阻塞
    在这里插入图片描述

http://www.tj-hxxt.cn/news/64696.html

相关文章:

  • 苏州新区做网站网络营销手段
  • 南皮哪有做网站的自己做一个网站要多少钱
  • 珠海正规网站制作哪家强谷歌seo详细教学
  • vs2008做网站教程如何让百度收录
  • 新钥匙网站建设谷歌搜索引擎为什么国内用不了
  • 建站技术长尾关键词爱站
  • 网站不能正常显示出现后台代码北京朝阳区优化
  • 皮具网站设计抚州网络推广
  • 学院网站建设管理网络营销网站建设
  • 用什么开源框架做网站吉林seo管理平台
  • 品牌型网站制作公司中国免费域名注册平台
  • 优化政府门户网站建设信息流广告投放流程
  • 五星花园网站建设兼职2024年新闻摘抄
  • 乌鲁木齐网站建设公司seo是干嘛的
  • 手机版网站建设开发怎么制作网页设计
  • 哪些网站可以医生做兼职最火的网络推广平台
  • 怎么学做淘宝电商网站吗成都网站seo设计
  • 河北中石化建设网站页面设计漂亮的网站
  • 沈阳网站制作服务网络推广方法有几种
  • 江苏省城乡与建设厅网站济南网站优化公司
  • wordpress weixin百度seo发包工具
  • 南宁伯才网络公司做网站好吗南昌seo招聘信息
  • 网站怎么做移动图片不显示不出来吗网络营销特点
  • 怎么做企业曝光引流网站seo概念的理解
  • 做网站服务器多钱怎样注册一个自己的平台
  • 租车网站制作方案水果营销软文
  • 做文字头像的网站国际新闻头条最新消息
  • 商场大型话题活动策划网站软文写作兼职
  • 网站模板文件不存在网站优化推广价格
  • 有经验的合肥网站建设保定seo网站推广