摘要:
Netty 是一个利用 Java 的高级网络的能力,隐藏了Java背后的复杂性然后提供了一个易于使用的 API 的客户端/服务器框架。 高性能 扩展性强 在网络发展初期,需要花很多时间来学习 socket 的复杂,寻址等等,在 C socket 库上进行编码,并需要在不同的操作系统上做不同的处理。 阅读全文
摘要:
forkJoin 阿里巴巴2021版JDK源码笔记(2月第三版).pdf 链接:https://pan.baidu.com/s/1XhVcfbGTpU83snOZVu8AXg 提取码:l3gy 在大学的算法课本中,都有一种基本算法:分治。其基本思路 是:将一个大的任务分为若干个子任务,这些子任务分别 阅读全文
摘要:
线程池与Future 阿里巴巴2021版JDK源码笔记(2月第三版).pdf 链接:https://pan.baidu.com/s/1XhVcfbGTpU83snOZVu8AXg 提取码:l3gy 1. 线程池的实现原理 调用方不断地向线程池中提交任 务;线程池中有一组线程,不断地从队列中取任务,这 阅读全文
摘要:
同步工具类 阿里巴巴2021版JDK源码笔记(2月第三版).pdf 链接:https://pan.baidu.com/s/1XhVcfbGTpU83snOZVu8AXg 提取码:l3gy 除了锁与 Condition,Concurrent 包还提供了一系列同步工具 类。这些同步工具类的原理,有些也是 阅读全文
摘要:
Lock与Condition 阿里巴巴2021版JDK源码笔记(2月第三版).pdf 链接:https://pan.baidu.com/s/1XhVcfbGTpU83snOZVu8AXg 提取码:l3gy 1. 互斥锁 1.1 锁的可重入性 当一个线程调用 object.lock()拿到锁,进入互斥 阅读全文
摘要:
原子类 阿里巴巴2021版JDK源码笔记(2月第三版).pdf 链接:https://pan.baidu.com/s/1XhVcfbGTpU83snOZVu8AXg 提取码:l3gy concurrent包的结构层次:Atomic类 → 锁与条件 → 同步工具 → 并发容器 → 编程池 → Cpmp 阅读全文
摘要:
多线程基础 阿里巴巴2021版JDK源码笔记(2月第三版).pdf 链接:https://pan.baidu.com/s/1XhVcfbGTpU83snOZVu8AXg 提取码:l3gy 1. 线程的优雅关闭 1. 1运行中的线程能否强制杀死? 不能,如果强制 杀死线程,则线程中所使用的资源,例如文 阅读全文
摘要:
PhantomJS在服务端生成ECharts图片 1. 准备工作 下载 PhantomJS包 点我进入下载页面 下载saintlee-echartsconvert-master包 点我进入下载页面 上传到linux服务器上 2. 部署服务 安装PhantomJS # 解压缩文件 tar xjf ph 阅读全文
摘要:
1. RDB 1.1 是什么 在指定的时间间隔内将内存中的数据集快照写入磁盘, 也就是行话讲的Snapshot快照,它恢复时是将快照文件直接读到内存里 1.2 备份是如何执行的 Redis会单独创建(fork)一个子进程来进行持久化,会先将数据写入到 一个临时文件中,待持久化过程都结束了,再用这个临 阅读全文
摘要:
1. 事务的定义 Redis事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。 Redis事务的主要作用就是串联多个命令防止别的命令插队。 2. Multi、Exec、discard 从输入Multi命令开始,输入的命令都 阅读全文