注:看不清的右键图片,在新标签页打开图片! 基础知识1 基础知识2 数据类型 字符串 序列 条件循环 列表元组 字典集合 函数1 函数2 文件对象 模块 面向对象 错误&异常 常用标准库及扩展 标准库概述 正则表达式 日期时间 系统、文件 进程、线程 数据库 数学运算、简单结构 爬虫基础知识 req ...
分类:
编程语言 时间:
2020-06-28 15:31:18
阅读次数:
125
线程池优势 线程池主要是控制运行的线程数量,处理过程中将任务放入队列,然后再线程创建后启动这些任务,如果线程数量超过最大数量,超出数量的线程排队等候,等待其他线程执行完毕,再从队列中取出来执行。 优势: 线程复用,控制最大并发数,管理线程。 降低资源消耗。通过服用利用已创建的线程降低线程创建和销毁造 ...
分类:
编程语言 时间:
2020-06-28 13:05:38
阅读次数:
80
jmeter压力测试步骤 一、添加线程组 1、Test Plan --> 添加 --> 线程(用户) --> 线程组 2、线程组修改名称,线程属性中添加线程数,循环次数等 二、添加HTTP请求默认值 步骤:线程组 -- > 添加-->取样器-->HTTP请求 1、名称:ip + port 2、WEB ...
分类:
其他好文 时间:
2020-06-26 12:22:54
阅读次数:
54
一、基本概念 1、互斥量(mutex) 互斥量:是个类对象(可以理解为一把锁),多个线程尝试用lock()成员函数来加锁这把锁,只有一个线程能锁定成功(成功的标志是lock()函数能够返回,返回不了说明没有锁成功) 2、死锁 死锁:一般是两个或两个以上的互斥量,在两个或多个地方上锁的顺序不一致导致的 ...
分类:
编程语言 时间:
2020-06-25 17:29:08
阅读次数:
69
Spring Boot中Tomcat调优 123456 server: tomcat: accept-count: 100 max-connections: 10000 #最大可被连接数,默认为10000 max-threads: 1000 #最大工作线程数 min-spare-threads: 1 ...
分类:
编程语言 时间:
2020-06-21 16:03:32
阅读次数:
112
Semaphore (JDK) 我们使用semaphore去限制获取特定资源的并发线程数量。 下面的例子中,我们实现了一个简单的登录队列来限制登入系统的用户数量: class LoginQueueUsingSemaphore { private Semaphore semaphore; public ...
分类:
其他好文 时间:
2020-06-18 23:25:29
阅读次数:
86
通常,功能上线之前,压测是必不可少的,可以从以下几个点进行优化 : 1、Redis连接数、大key(hash key)。但凡用到线程池的地方,都是有优化空间的,合理设置线程池参数可以提高吞吐量。这些参数的设置是经过很多次的压测调整再压测这样试出来的; 2、Dubbo线程数、超时时间等; 3、内存缓存 ...
分类:
其他好文 时间:
2020-06-14 14:45:41
阅读次数:
52
1、Semaphore Semaphore(信号量)是用来控制同时访问特定资源的线程数量,它通过协调各个线程,以保证合理的使用公共资源,它是共享锁的方式。 Semaphore可以用于做流量控制,特别是公用资源有限的应用场景。 1.1 构造方法 public Semaphore(int permits ...
分类:
其他好文 时间:
2020-06-13 00:11:03
阅读次数:
79
创建线程要花费昂贵的资源和时间,如果任务来了才创建线程那么响应时间会变 长,而且一个进程能创建的线程数有限。为了避免这些问题,在程序启动的时候 就创建若干线程来响应处理,它们被称为线程池,里面的线程叫工作线程。从 JDK1.5 开始,Java API 提供了 Executor 框架让你可以创建不同的 ...
分类:
编程语言 时间:
2020-06-08 19:30:57
阅读次数:
172
# 总核数 = 物理CPU个数 X 每颗物理CPU的核数 # 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 # 查看物理CPU个数 cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l # 查看每个物理CPU中 ...
分类:
系统相关 时间:
2020-06-08 12:56:59
阅读次数:
91