避免使用 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
https://blog.csdn.net/wardenjohn/article/details/80116280 下面的输入框中输入.qrc文件的文件名: 代码中的使用: QImage *ice; ice = new QImage(":/image/0");//里面的就是资源库里面的路径,可以在资 ...
分类:
其他好文 时间:
2020-06-10 18:59:39
阅读次数:
100
日常开发中难免会碰到需要开启定时任务处理业务。这时我们第一时间想到的是Spring的Task,但是很不方便,这里可以列出几点: 1.一旦需要更改定时任务时间,我们就要打开IDE修改cron表达式; 2.在特殊的情况下代码报错了,我们就要打开Log查看是什么导致的问题; 3.需要很多定时任务去处理业务 ...
分类:
其他好文 时间:
2020-06-10 18:52:04
阅读次数:
54
一、URI <1>什么是URI URI,通一资源标志符(Uniform Resource Identifier, URI),表示的是web上每一种可用的资源,如 HTML文档、图像、视频片段、程序等都由一个URI进行定位的。 <2>URI的结构组成 URI通常由三部分组成: ①访问资源的命名机制; ...
分类:
Web程序 时间:
2020-06-10 12:47:45
阅读次数:
86
1、代码 public void downloadApiDoc(HttpServletResponse response) { ClassPathResource classPathResource = new ClassPathResource("api.pdf"); try (InputStre ...