信号量无论是大部分的教材上的信号量,还是博客中的信号量,基本上解说都是类似下面这种,给出几个不同的信号量种类然后加一点说明,完全不能理解信号量的PV操作。5.2 信号量机制h...
贪心算法 分治算法 回溯算法 动态规划算法
递归解决问题的三部曲:一、找出将问题分解小问题的规律 二、写出递推公式 三、找出递归终止条件 举个例子:问题:求N阶乘 规律:求N的阶乘,等于n 乘以 n - 1递推公式:f...
kafka 简介kafka是一个高吞吐量的分布式消息系统,支持发布订阅,常用于日志消息系统。基于scala语言实现。 kafka 核心概念 broker经纪人:kafka集群...
Netty 简介Netty是一款基于事件驱动,高性能的NIO(同步非阻塞)网络通信框架 Netty 高性能体现 零拷贝:TCP缓冲区使用直接内存替代堆内存,减少内存拷贝 线程...
查业务日志 如果系统出现异常或者业务反馈有异常,首先想到的是查看业务日志,对于采集日志,可引入ELK,增加个别日志报警功能 数据库 是否存在慢查询 是否连接数过多(show ...
RPC 简介RPC(Remote Procedure Call)远程过程调用,是一种通过网络远程调用其他服务的协议,即服务A调用服务B的方法,相当于本地调用。 RPC架构组件...
MyBatis 简介MyBatis 是一个半自动的ORM框架,支持原生的SQL语句,内部封装了JDBC,无需处理加载驱动、创建连接等过程。支持XML文件或者注解配置关系映射。...
zookeeper 简介zookeeper是分布式应用协调者,高吞吐低延迟,提供分布式统一配置、服务注册、分布式锁等功能。数据存在内存中,持久化实现在日志中,内存结构类似于树...
系统调用(System Call)指运行在用户空间的程序向操作系统内核发出请求服务。系统调用提供用户进程与操作系统之间的接口。操作系统的进程空间分为用户空间和内核空间:操作系...
dstat 工具dstat命令是一个用来替换vmstat、iostat、netstat、nfsstat和ifstat这些命令的工具,是一个全能系统信息统计工具。dstat使用...
JMC、JFR工具JMC:Java Mission ControlJFR:Java Flight Recorder性能调优分析工具JMC、JFR可以实现性能问题的准确定位。主...
Java引用类型划分4种: 强引用Java默认声明就是强引用,只要引用指向的对象存在,就不会被垃圾回收 软引用Java软引用类:SoftReference,若内存不足的情况下...
分布式事务问题的由来 在分布式系统中,通常会将不同的服务、数据部署在不同物理机器,或者虚拟机。在每个节点都可以进行CURD操作,这些不同的数据节点需要保证数据的一致性。这个就...
锁的出现原因锁是为了解决并发操作引起的脏读、数据不一致问题,锁不是问题的根源,锁之间的竞争才是 Java锁的实现:synchronized关键字 和 Lock接口实现类 sy...
常见IO(Input/Output)模型有阻塞IO、非阻塞IO、多路复用IO、异步IO 同步异步、阻塞非阻塞概念同步异步是应用程序与内核之间的交互而言 同步:指用户进程触发I...
1、一般的分页查询使用简单的 limit 实现,比如limit [start index],[rows] 说明:limit 语句的查询时间跟开始记录的位置成正比 2、使用主键...