一次线上java 应用响应时间过长问题的排查
链滴 一次线上 java 应用响应时间过长问题的排查 作者:xinzhongtianxia 原文链接:https://ld246.com/article/1569574881351 来源网站:链滴 许可协议:署名-相同方式共享 4.0 国际 (CC BY-SA 4.0)原文链接:一次线上 java 应用响应时间过长问题的排查
解决
解决办法很简单,把 OssClient 改成单例就行了。
但是,集团封网期间不允许上线,这。。。
没办法,把应用重启一遍,JVM 想了想,单例也没啥问题,只要不在方法中去操作成员变量就可以了。后记
你所学的知识,都是有用的,认为没用,也许只是时候未到而已。
原文链接:一次线上 java 应用响应时间过长问题的排查0 码力 | 3 页 | 247.74 KB | 1 年前3消息中间件RocketMQ原理解析 - 斩秋
做负载均衡并主动向 consumer 投递消息,RocketMq 是基于 拉模式拉取消息,consumer 做负载均衡并通过长轮询向 broker 拉消息。 Consumer 消费拉取的消息的方式有两种 1. Push 方式:rocketmq 已经提供了很全面的实现, consumer 通过长轮询拉取消息后回调 MessageListener 接口实现完成消费, 应用系统只要 MessageListener 接收长轮询请求 3. Consumer 接收 broker 响应 长轮询活动图: 一张图画不下,再来一张 四:push 消息—并发消费消息 通过长轮询拉取到消息后会提交到消息服务 ConsumeMessageConcurrentlyService, ConsumeMessageConcurrentlyServic的submitConsume 会返回成功锁定队列的集合, 根据成功锁定的 MessageQueue,设置对应的正 在处理队列 ProccessQueue 的 locked 属性为 true 没有锁定设置为 false 通过长轮询拉取到消息后会提交到消息服务 ConsumeMessageOrderlyService, ConsumeMessageOrderlyService 的 submitConsumeRequest0 码力 | 57 页 | 2.39 MB | 1 年前32019-2021 美团技术年货 前端篇
大的性能问题,主要体现在以下两方面: ● 首屏渲染时间长。即使使用了 FutureBuilder 把业务代码拆分成 xxx.part.js 之后,main.dart.js 体积依然维持在 1.1M。单一文件加载、解析时间过长, 且静态资源缺少 CDN 化的支持,势必会影响首屏的渲染时间。 ● 滚动性能较差。 Flutter Web 自身实现了一套页面滚动机制,在页面滚动过程 中,会频繁的创建 Canvas,最终导致滚动性能问题,甚至引起页面 功能无法及时更新:浏览器对同名文件的缓存,可能导致程序代码不被及时更 新或者出现执行错乱。 26 > 2021年美团技术年货 ● 首屏渲染性能差:main.dart.js 文件过大,单一文件加载、解析时间过长,势 必会影响首屏的渲染时间。 ● 无法使用 CDN:Flutter 仅支持相对路径的加载方式,无法使用当前域名以外 的 CDN 域名,导致无法享受 CDN 带来的优势。 为此,在加载部分我们对 当前域名以外的 CDN 域名,导致无法享受 CDN 带来的优势; ● 首屏渲染性能不佳:虽然我们进行了 SDK 瘦身,但 main.dart.js 文件依然维 持在 0.7M 以上,单一文件加载、解析时间过长,势必会影响首屏的渲染时间。 针对文件 Hash 化和 CDN 加载的支持,我们在 flutter_tools 编译流程中对静态资源 进行二次处理:遍历静态资源产物,增加文件 Hash(文件内容0 码力 | 738 页 | 50.29 MB | 1 年前3简谈 Rust 与国密 TLS - 王江桐
Rust China Conf 2022 – 2023, Shanghai, China • SM1 是分组加密算法,实现对称加密,分组长度和密钥长度都为 128 位,对长消息进行加解密时, 若消息长度过长,需要进行分组,如果消息长度不足,则要进行填充。 • 保证数据机密性。 • 算法安全保密强度及相关软硬件实现性能与 AES 相当,该算法不公开,仅以 IP 核的形式存在于芯片 中,调用该算法时,需要通过加密芯片的接口进行调用。 为无线局域网标准,是分组加密算法,实现对称加密,用于替代 DES/AES 等国际算法, SM4 算法与 AES 算法具有相同的密钥长度和分组长度,均为 128 位。对长消息进行加解密 时,若消息长度过长,需要进行分组,要消息长度不足,则要进行填充。 • 加密算法与密钥扩展算法都采用 32 轮非线性迭代结构,解密算法与加密算法的结构相同,只 是轮密钥的使用顺序相反,解密轮密钥是加密轮密钥的逆序。0 码力 | 44 页 | 3.70 MB | 1 年前3TiDB v7.1 中文手册
0,即不限制一 条 SQL 语句的执行时间。 但在实际生产环境中,空闲连接和一直无限执行的 SQL 对数据库和应用都有不好的影响。你可以通过在应用 的连接字符串中配置这两个参数来避免空闲连接和执行时间过长的 SQL 语句。例如,设置 sessionVariables �→ =wait_timeout=3600(1 小时)和 sessionVariables=max_execution_time=300000(5 需要更新大量行 (数万或更多) 的时候,使用批量更新,这是因为 TiDB 单个事务大小限制为txn-total-size- limit(默认为 100MB),且一次性过多的数据更新,将导致持有锁时间过长(悲观事务),或产生大量冲 突(乐观事务)。 4.6.2.2.3 UPDATE 例子 假设某位作者改名为 Helen Haruki,需要更改authors 表。假设他的唯一标识 id 为 1,即过滤器应为:id 的时候,建议使用一个迭代,每次都只更新一部分数据,直到更新全 部完成。这是因为 TiDB 单个事务大小限制为txn-total-size-limit(默认为 100MB),且一次性过多的数据更新,将 导致持有锁时间过长(悲观事务),或产生大量冲突(乐观事务)。你可以在程序或脚本中使用循环来完成操 作。 本页提供了编写脚本来处理循环更新的示例,该示例演示了应如何进行 SELECT 和 UPDATE 的组合,完成循环0 码力 | 4369 页 | 98.92 MB | 1 年前3TiDB v8.1 中文手册
#52095 @3pointer 44 * 修复不稳定集成测试 br_tikv_outage #52673 @Leavrth * 修复测试用例 TestGetTSWithRetry 执行时间过长的问题 #52547 @Leavrth * 修复恢复暂停的日志备份任务时,如果与 PD 的网络连接不稳定可能导致 TiKV panic 的问题 #17020 @YuJuncen – TiCDC 粒度的控制和 更短的超时,以避免持有锁的时间过长。此时,你可以使用 TiDB 在 v7.6.0 引入的tidb_idle_transaction_timeout 控制用户会话中事务的空闲超时。 但在实际生产环境中,空闲连接和一直无限执行的 SQL 对数据库和应用都有不好的影响。你可以通过在应用 的连接字符串中配置这两个参数来避免空闲连接和执行时间过长的 SQL 语句。例如,设置 sessionVariables 需要更新大量行 (数万或更多) 的时候,使用批量更新,这是因为 TiDB 单个事务大小限制为txn-total-size- limit(默认为 100MB),且一次性过多的数据更新,将导致持有锁时间过长(悲观事务),或产生大量冲 突(乐观事务)。 4.6.2.2.3 UPDATE 例子 假设某位作者改名为 Helen Haruki,需要更改authors 表。假设他的唯一标识 id 为 1,即过滤器应为:id0 码力 | 4807 页 | 101.31 MB | 1 年前3TiDB v8.0 中文手册
提供的自动统计信息 收集来保持统计信息的更新。自动统计信息收集轮询所有对象的统计信息状态,并把健康度不足的对 象加入队列,逐个收集并更新。在之前的版本中,这些对象的收集顺序是随机的,可能导致更需要更 新的对象等待时间过长,从而引发潜在的数据库性能回退。 从 v8.0.0 开始,自动统计信息收集引入了优先级队列,根据多种条件动态地为对象分配优先级,确保更 有收集价值的对象优先被处理,比如新创建的索引、发生分区变更的分区表等。同时,TiDB 粒度的控制和 更短的超时,以避免持有锁的时间过长。此时,你可以使用 TiDB 在 v7.6.0 引入的tidb_idle_transaction_timeout 控制用户会话中事务的空闲超时。 但在实际生产环境中,空闲连接和一直无限执行的 SQL 对数据库和应用都有不好的影响。你可以通过在应用 的连接字符串中配置这两个参数来避免空闲连接和执行时间过长的 SQL 语句。例如,设置 sessionVariables 需要更新大量行 (数万或更多) 的时候,使用批量更新,这是因为 TiDB 单个事务大小限制为txn-total-size- limit(默认为 100MB),且一次性过多的数据更新,将导致持有锁时间过长(悲观事务),或产生大量冲 突(乐观事务)。 4.6.2.2.3 UPDATE 例子 假设某位作者改名为 Helen Haruki,需要更改authors 表。假设他的唯一标识 id 为 1,即过滤器应为:id0 码力 | 4805 页 | 101.28 MB | 1 年前3TiDB v7.6 中文手册
粒度的控制和 更短的超时,以避免持有锁的时间过长。此时,你可以使用 TiDB 在 v7.6.0 引入的tidb_idle_transaction_timeout 控制用户会话中事务的空闲超时。 但在实际生产环境中,空闲连接和一直无限执行的 SQL 对数据库和应用都有不好的影响。你可以通过在应用 的连接字符串中配置这两个参数来避免空闲连接和执行时间过长的 SQL 语句。例如,设置 sessionVariables 需要更新大量行 (数万或更多) 的时候,使用批量更新,这是因为 TiDB 单个事务大小限制为txn-total-size- limit(默认为 100MB),且一次性过多的数据更新,将导致持有锁时间过长(悲观事务),或产生大量冲 突(乐观事务)。 4.6.2.2.3 UPDATE 例子 假设某位作者改名为 Helen Haruki,需要更改authors 表。假设他的唯一标识 id 为 1,即过滤器应为:id 的时候,建议使用一个迭代,每次都只更新一部分数据,直到更新全 部完成。这是因为 TiDB 单个事务大小限制为txn-total-size-limit(默认为 100MB),且一次性过多的数据更新,将 导致持有锁时间过长(悲观事务),或产生大量冲突(乐观事务)。你可以在程序或脚本中使用循环来完成操 作。 本页提供了编写脚本来处理循环更新的示例,该示例演示了应如何进行 SELECT 和 UPDATE 的组合,完成循环0 码力 | 4666 页 | 101.24 MB | 1 年前3TiDB v8.5 中文手册
的控制和 更短的超时,以避免持有锁的时间过长。此时,你可以使用 TiDB 在 v7.6.0 引入的tidb_idle_transaction_timeout 控制用户会话中事务的空闲超时。 253 但在实际生产环境中,空闲连接和一直无限执行的 SQL 对数据库和应用都有不好的影响。你可以通过在应用 的连接字符串中配置这两个参数来避免空闲连接和执行时间过长的 SQL 语句。例如,设置 sessionVariables 需要更新大量行 (数万或更多) 的时候,使用批量更新,这是因为 TiDB 单个事务大小限制为txn-total-size- limit(默认为 100MB),且一次性过多的数据更新,将导致持有锁时间过长(悲观事务),或产生大量冲 突(乐观事务)。 4.6.2.2.3 UPDATE 例子 277 假设某位作者改名为 Helen Haruki,需要更改authors 表。假设他的唯一标识 id 为 的时候,建议使用一个迭代,每次都只更新一部分数据,直到更新全 部完成。这是因为 TiDB 单个事务大小限制为txn-total-size-limit(默认为 100MB),且一次性过多的数据更新,将 导致持有锁时间过长(悲观事务),或产生大量冲突(乐观事务)。你可以在程序或脚本中使用循环来完成操 作。 本页提供了编写脚本来处理循环更新的示例,该示例演示了应如何进行 SELECT 和 UPDATE 的组合,完成循环0 码力 | 5095 页 | 104.54 MB | 9 月前3TiDB v7.5 中文手册
0,即不限制一 条 SQL 语句的执行时间。 但在实际生产环境中,空闲连接和一直无限执行的 SQL 对数据库和应用都有不好的影响。你可以通过在应用 的连接字符串中配置这两个参数来避免空闲连接和执行时间过长的 SQL 语句。例如,设置 sessionVariables �→ =wait_timeout=3600(1 小时)和 sessionVariables=max_execution_time=300000(5 需要更新大量行 (数万或更多) 的时候,使用批量更新,这是因为 TiDB 单个事务大小限制为txn-total-size- limit(默认为 100MB),且一次性过多的数据更新,将导致持有锁时间过长(悲观事务),或产生大量冲 突(乐观事务)。 4.6.2.2.3 UPDATE 例子 假设某位作者改名为 Helen Haruki,需要更改authors 表。假设他的唯一标识 id 为 1,即过滤器应为:id 的时候,建议使用一个迭代,每次都只更新一部分数据,直到更新全 部完成。这是因为 TiDB 单个事务大小限制为txn-total-size-limit(默认为 100MB),且一次性过多的数据更新,将 导致持有锁时间过长(悲观事务),或产生大量冲突(乐观事务)。你可以在程序或脚本中使用循环来完成操 作。 本页提供了编写脚本来处理循环更新的示例,该示例演示了应如何进行 SELECT 和 UPDATE 的组合,完成循环0 码力 | 4590 页 | 100.91 MB | 1 年前3
共 274 条
- 1
- 2
- 3
- 4
- 5
- 6
- 28