报错现象 线上项目使用HttpClient请求第三方的HTTP资源,并发量高的时候,日志框报Timeout waiting for connection from pool 客户端的现象是有时正常,有时报错 原因分析 网上查找资料,很多照搬某个博客的解决方法,大致是合理的使用EntityUtils. ...
分类:
Web程序 时间:
2020-06-13 00:35:52
阅读次数:
99
避免使用 Executors 来创建线程。 说明: Executors各个方法的弊端: 1)newFixedThreadPool和newSingleThreadExecutor: 主要问题是堆积的请求处理队列可能会耗费非常大的内存,甚至OOM。 2)newCachedThreadPool和newSc ...
分类:
编程语言 时间:
2020-06-11 21:40:17
阅读次数:
66
浅析 Netty 实现心跳机制与断线重连 1、基础 何为心跳 顾名思义, 所谓 心跳, 即在 TCP 长连接中, 客户端和服务器之间定期发送的一种特殊的数据包, 通知对方自己还在线, 以确保 TCP 连接的有效性. 为什么需要心跳 因为网络的不可靠性, 有可能在 TCP 保持长连接的过程中, 由于某 ...
分类:
Web程序 时间:
2020-06-11 19:58:23
阅读次数:
67
multiprocessing.pool.apply_async 可以执行并行的进程,但是会将所有进程先读入列表,对于不是很多数量的进程来说没有问题,但是如果进行数量很多,比如100万条,1000万条,而进程不能很快完成,内存就会占用很多,甚至挤爆内存。那么如何限制内存的占有量呢,可以检测pool. ...
分类:
移动开发 时间:
2020-06-11 19:31:35
阅读次数:
117
对于commons pool就不作介绍了,文章分两部分:源码分析,例子。 源码分析 在Commons pool之中主要有几个概念: ObjectPool:提供所有对象的存取管理。 PooledObject:池化的对象,是对对象的一个包装,加上了对象的一些其他信息,包括对象的状态(已用、空闲),对象的 ...
分类:
Web程序 时间:
2020-06-11 16:55:39
阅读次数:
63
纸上得来终觉浅,绝知此事要躬行。 MySQL体系结构 Connection Pool:连接池组件 Management Services & Utilities:管理服务和工具组件 SQL Interface:SQL接口组件 Parser:查询分析器组件 Optimizer:优化器组件 Caches ...
分类:
数据库 时间:
2020-06-10 22:40:40
阅读次数:
79
Class文件版本号 表1 Class文件格式 类型 名称 数量 u4 magic 1 u2 minor_version 1 u2 major_version 1 u2 constant_pool_count 1 cp_info constant_pool constant_pool_count - ...
分类:
其他好文 时间:
2020-06-10 19:33:48
阅读次数:
100
基于线程池实现异步爬取dummy 使用multiprocessing.dummy中的Pool池 # 先构建要访问url的列表 import requests url = 'https://www.qiushibaike.com/text/page/%d/' urls = [] for page in ...
分类:
编程语言 时间:
2020-06-09 12:57:31
阅读次数:
61
查看使用的数据库引擎 show variables like '%storage_engine%'; 显示的使用的是InnoDB 查看引擎状态 show engine innodb status 2020-06-09 11:48:38 7fd22fb2c700 INNODB MONITOR OUTP ...
分类:
数据库 时间:
2020-06-09 12:35:52
阅读次数:
83
multiprocessing-Pool 进程池 进程池概念:定义一个池子,在里面放上固定数量的进程,有需求来了,就拿一个池中的进程来处理任务,等到处理完毕,进程并不关闭,而是将进程再放回进程池中继续等待任务。如果有很多任务需要执行,池中的进程数量不够,任务就要等待之前的进程执行任务完毕归来,拿到空 ...
分类:
系统相关 时间:
2020-06-06 21:35:41
阅读次数:
91