异步与同步模型最大的区别是,同步模型会阻塞线程等待资源,而异步模型不会阻塞线程,它是等资源准备好后,再通知业务代码来完成后续的资源处理逻 辑。这种异步设计的方法,可以很好地解决IO等待的问题。 我们开发的绝大多数业务系统,它都是IO密集型系统。跟IO密集型系统相对的另一种系统叫计算密集型系 统。通过 ...
分类:
其他好文 时间:
2019-09-25 00:55:00
阅读次数:
92
vmstat 1 5 表示每隔一秒采集5次。 Procs r: 处于运行队列中的内核线程数目(进程数)。 b: 置于等待队列(等待资源、等待输入/输出)的内核线程数目。 处于block队列中不可中断的进程数 Memory swpd: 可用的虚拟交换内存 free:空闲内存 buff: 已用缓冲数目 ... ...
分类:
其他好文 时间:
2019-06-23 20:46:55
阅读次数:
96
之前在调试存储过程时,出现卡死情况,无法插入数据 解决方法 1、查看那些表被锁住: 2、查看引起死锁的会话: 3、查看被阻塞的会话: 4、释放锁或者杀掉ORACLE进程: 具体情况根据每个人情况不一样,sid,serial#的值也不一样 参考来源:https://blog.csdn.net/haoj ...
分类:
数据库 时间:
2019-04-16 14:47:02
阅读次数:
633
理解并发 这是我在开发者头条看到的。@编程原理林振华 有目标的提升自己会事半功倍,前行的道路并不孤独。 1、阻塞 当一个线程进入临界区(公共资源区)后,其他线程必须在临界区外等待,待进去的线程执行完成任务离开临界去后,其它线程才能进去。 2、无饥饿 线程排队先来后到,不管优先级大小,先来先执行,,就 ...
分类:
编程语言 时间:
2019-04-13 01:09:35
阅读次数:
147
IO 介绍 IO 模型 IO请求 分为两个阶段:等待资源 和 使用资源; IO请求:一般需要请求特殊资源(如 磁盘、RAM 或文件),当资源被上一个使用者使用没有释放的时候, IO请求会被阻塞,直到资源可用。 等待资源 阶段有两种策略: 阻塞:当IO请求资源没有准备好的时候,请求阻塞,直到得到资源的 ...
分类:
编程语言 时间:
2019-04-07 12:59:36
阅读次数:
170
load average后面的三个值分别是1、5、15分钟的负载情况【可通过w、uptime、top命令来查看负载值】 单核 Load<1:没有等待 Load==1:系统已无额外的资源跑更多的进程了 Load>1:进程都堵着等待资源 注: 需要警惕的 Load < 0.7时:系统很闲,要考虑多部署一 ...
分类:
系统相关 时间:
2019-02-14 20:49:27
阅读次数:
463
一、介绍 jstack是java虚拟机自带的一种堆栈跟踪工具。jstack用于打印出给定的java进程ID或core file或远程调试服务的Java堆栈信息,如果是在64位机器上,需要指定选项"-J-d64",Windows的jstack使用方式只支持以下的这种方式: 主要分为两个功能: a. 针 ...
分类:
编程语言 时间:
2019-01-28 12:09:59
阅读次数:
305
第一步创建项目: 创建项目地址:https://start.spring.io/ 接下来就下载到本地了 跟着加压 接着用idea打开:等待资源下载完成 ...
分类:
编程语言 时间:
2018-12-30 17:33:56
阅读次数:
189
原文:MySQL大事务导致的Insert慢的案例分析【问题】 有台MySQL服务器不定时的会出现并发线程的告警,从记录信息来看,有大量insert的慢查询,执行几十秒,等待flushing log,状态query end 【初步分析】 从等待资源来看,大部分时间消耗在了innodb_log_file... ...
分类:
数据库 时间:
2018-10-21 16:52:13
阅读次数:
193
产生死锁的四个必要条件: (1) 互斥条件:一个资源每次只能被一个进程使用。(2) 请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放。(3) 不剥夺条件:进程已获得的资源,在末使用完之前,不能强行剥夺。(4) 循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系。 二 锁的 ...
分类:
其他好文 时间:
2018-09-09 21:06:08
阅读次数:
209