index
框架/架构
- 《 Reactive Microservices Architecture 》 响应式微服务架构 摘记
- Spring AOP 与 事务实现
- 《程序员必读之软件架构》–笔记
- 《Netty in action》 第三章 Netty 组件和设计
- 分布式系统间请求跟踪
- Feign
- Spring 事务管理的一个 trick
- 微热山丘,探索 IoC、AOP 实现原理(一) IoC 实现原理
- 微热山丘,探索 IoC、AOP 实现原理(二) AOP 实现原理
- 应用事务管理混乱导致的一个坑
- RxJava
- RxJava 线程模型
- 《从0开始学架构》–笔记
- Consul 与 K8S 滚动部署
- SpringBoot druid 踩坑笔记
- Motan RPC 框架分析
- Motan RPC 思维导图–通用逻辑部分
- Motan RPC 思维导图–特定协议实现部分
- SpringBoot 启动分析(一)
- SpringBoot 启动分析(二)–启动主流程
- SpringBoot 启动分析(三) — Environment 的初始化流程
- SpringBoot 启动分析(四) — 注解驱动的 Bean 定义加载
- SpringBoot 启动分析(五) — 上下文的刷新过程
- Spring 事务钩子
- MyBatis 缓存
- MyBatis 事务管理
- MyBatis Mapper 代理创建过程
- MyBatis Mapper 代理实现数据库调用原理
- SpringBoot 启动分析(六) — Bean 的创建过程
- LMAX 架构–笔记
- Spring 事务原理与集成 MyBatis 事务管理
- HikariCP 与 SQLTimeoutException
- WeakReference 使用不当导致OOM?
Akka
- Akka Actor 4个核心操作
- Akka Actor 生命周期
- Akka TypedActor
- Akka 文档:术语、概念
- Akka 文档:Actor 系统
- Akka 文档: Actor 是什么?
- Akka 文档:督导与监控
Scala
- Scala Trait 堆叠特性
- 《深入理解 Scala》第一章 — Scala 一种混合式编程语言
- 《深入理解 Scala》第二章 — 核心规则
- 《深入理解 Scala》第三章 — 来点样式 — 编码规范
- 《深入理解 Scala》第四章 — 面向对象编程
- 《深入理解 Scala》第五章 — 利用隐式转换编写更有表达力
一周随记
并发
- False Sharing 伪共享 – 译
- 自旋锁、排队自旋锁、MCS锁、CLH锁
- JUC 原子类
- JUC AQS
- JUC 源码分析 一 AbstractQueuedSynchronizer
- JUC 源码分析 二 ReentrantLock
- 内存关卡/栅栏 ( Memory Barriers / Fences ) – 译
- JUC 源码分析 三 AbstractQueuedSynchronizer 共享模式 与 CountDownLatch
- Java 内存模型 JMM
- JUC 源码分析 四 wait notify notifyAll 与 条件对象
- JUC ArrayBlockingQueue
- JUC LinkedBlockingQueue
- JUC ConcurrentLinkedQueue
- JUC 可重入 读写锁 ReentrantReadWriteLock
- CopyOnWrite 策略
- Future 与 FutureTask
- JUC CyclicBarrier 可重用屏障
- JUC Semaphore 信号量
- JUC Exchanger
- Java8 Striped64 和 LongAdder
- Java8 StampedLock
- 《Java 虚拟机并发编程》笔记
- 基于Redis实现分布式锁
- 基于数据库的乐观锁
- ThreadLocal/InheritableThreadLocal 设计与源码分析
- JUC 延迟队列 DelayQueue
- JUC 并发 Queue 设计与介绍
- HikariCP 连接池–高性能数据结构
- 一个与 Ehcache 相关的死锁案例
- Disruptor 为什么那么快?
- 再读 AQS
- FutureTask (JDK1.8)
- 双重检查加锁 与 volatile
- ConcurrentHashMap
I/O
工具
JVM
- JVM 运行时数据区
- JVM 垃圾回收算法
- HotSpot 垃圾回收算法实现
- JVM 类加载机制
- GC 日志分析
- Java SE 6 故障排除指南 – 附录C、JVM 致命错误日志格式
- Java SE 6 故障排除指南 – 1、诊断工具和选项
- Java SE 6 故障排除指南 – 3、内存泄露
- Java SE 6 故障排除指南 – 5、挂起或循环进程故障排除
- Java SE 6 故障排除指南 – 4、系统崩溃故障排除
- JVM CPU 使用率高 问题两则
- Java Flight Recordings (JFR) — Java 飞行记录器 – part 1
- Java Flight Recordings (JFR) — part 2 用 JFR 定位性能问题
- BTrace 用户指南
- BTrace demo
- 容器下 -XX:+HeapDumpOnOutOfMemoryError 未生成 dump 文件的问题
- JVM 堆外内存泄漏分析(一)
- JVM 堆外内存泄漏分析(二)
- CAS/volatile 原理
- 《垃圾回收算法手册》–第2章 标记-清扫回收
- CMS GC
- 新一代 GC 神器 ZGC
总结
基础
- base64加密 or base64编码?
- TCP/IP 协议详解 第17章 TCP 传输控制协议
- TCP/IP 协议详解 第18章 TCP 连接的建立与终止
- TCP/IP 协议详解 第19、20章 TCP的数据流
- TCP/IP 协议详解 第21章 TCP的超时与重传
- TCP/IP 协议详解 第22、23章 TCP的定时器
- TCP/IP 协议详解 第1章 概述
- TCP/IP 协议详解 第2章 链路层
- TCP/IP 协议详解 第3章 IP:网际协议
- TCP/IP 协议详解 第4章 ARP:地址解析协议
- 流水账式开发 VS. 有重点的开发
- 《冒号课堂:编程范式与OOP思想》之编程范式笔记
- 设计模式之工厂家族
开源技术
- Disruptor 源码阅读笔记
- Dropbox Go SDK
- Redis-RDB-Dump-File-Format 中文翻译
- Struts2 备忘
- mybatis 批量插入 插件
- Quartz
- Redis Cluster
- RateLimiter 浅析
web
杂记
- 博客搭建笔记
- 博客维护脚本
- Nginx与Apache 之间的 HTTP 400错误
- 很佩服那些搞安全的人
- 我的学习工具
- 2014-03 杂记
- 我眼中的 性能劣化、优化的曲线
- 故障之 CDN 使用问题
- 踩坑之 双机热备切换
- 不恰当使用线程池处理 MQ 消息引起的故障
- 数据不可变 与 方法副作用
- 团队可以有能力差的人,但不能有懒人
算法
- 插入排序与冒泡排序
- 合并排序
- 求元素累加和最大的子数组
- 快速排序
- 堆排序
- 计算整数的二进制表示里1的位数
- 向量旋转
- 非递归、固定量额外存储空间 遍历二叉树
- 动态规划 笔记
- 散列
- rsync 核心算法的Java实现
- 8皇后问题
go
数据库
- Oralce 存储过程 快速入门
- sqlldr 导数据
- MySQL 乱码 与 字符集
- wordpress 文章索引 存储过程
- MySQL 事件调度器 定时调度
- MySQL 事务隔离级别与MVCC
- oracle 表连接类型 join type
- Oracle hint
- 《Oracle数据库性能优化》笔记 – 索引与 bitmap 索引
- Oracle 索引分区
- Oracle B-Tree 索引的结构、特点及索引扫描方式
- 《基于 Oracle 的 SQL 优化》笔记 第一章 Oracle 里的优化器
- 《基于 Oracle 的 SQL 优化》笔记 第二章 Oracle 里的执行计划
- 《基于 Oracle 的 SQL 优化》笔记 第四章 Oracle 里的查询转换
- 《基于 Oracle 的 SQL 优化》笔记 第五章 Oracle 里统计信息
- 《基于 Oracle 的 SQL 优化》笔记 第三章 Oracle 里的 Cursor 和变量绑定
- 《高性能 MySQL》 — 第四章 Schema 与数据类型优化
- 《高性能 MySQL》 — 第五章 创建高性能的索引
- MySQL datetime 与时区
- MySQL 高性能的索引策略
- append hint, direct-path insert
- Bulk Binds (BULK COLLECT & FORALL) and Record Processing in Oracle
- MySQL 5.7 重置 root 密码
- 一次结合业务、技术综合进行的 SQL 优化过程
- 《数据库索引设计与优化》笔记一
- 《数据库索引设计与优化》笔记二
- MySQL InnoDB 二级索引的排序
- InnoDB Sorted Index Build
- 《MySQL 实战45讲》–笔记–order by 实现
- 《MySQL 实战45讲》–笔记–锁
- Oracle rownum 与 offset
- MySQL ICP 索引条件下推优化
- MySQL InnoDB MRR 优化
- MySQL 事务隔离及实现
- Oracle 绑定变量过多导致 DML 阻塞
- 一次存储过程调用是一个事务吗?
java
- JNA实例
- struts2 漏洞 和 缓存攻击
- Java Socket HTTP
- 正则表达式反向引用
- 同步方法与同步代码块的区别
- finally语句的执行时刻
- Java 8 新特性之 接口改进和Lambdas
- J.U.C 包
- Java 8 之 java.time 包
- java.util.HashMap 源码解读及其进化
- Java 8 IO/NIO 增强
- sftp auth fail
- Java 性能调优指南 – 高性能Java
- Spring MVC 与 web开发
- Java 对象内存布局
- Session Fix 与 Jboss 4.2.2
- Java 反射 抽取类的方法信息
- 踩坑之 Java 可变长参数列表
- Java 任务处理
- Spring Hessian 集成
- 最近处理的两个坑:Spring 启动问题与 log4j 配置
- Spring MVC 与线程
- 隐式类型转换导致全表扫描
- 基于POI检查 excel 文件的行数、列数是否超出限制
- Spring 导入资源文件
- Object Extract Mapping 与 网页 API
- 接口与Spring自动注入
- Java finalize 方法与垃圾回收
- 发布组件到 Maven 中央仓库
- Thread, Runnable, Callable
- Javassist 字节码操作库
- HttpURLConnection 自动 重复 提交 POST
- java.util.Collections.singleton*
- Spring-MVC 文件上传优化
- HashTable 有什么奇怪的知识?
- HashMap
- 踩坑 Druid 连接池
- 又踩坑了。ThreadPoolExecutor?
- 聊个线程有关的
- Druid 与 HikariCP 获取连接的区别
- 小心 fastjson 的这种“智能”
windows
读书笔记
- Linux/Unix 设计思想 摘记
- 编程珠玑 笔记
- 白帽子讲web安全-1.安全世界观 摘记
- 白帽子讲web安全-2.客户端安全 摘记
- 白帽子讲web安全-3.服务器端安全 摘记
- 门后的秘密-卓越管理的故事 笔记
- SMART任务
- 《把时间当作朋友:运用心智获得解放》笔记
- 《大型网站技术架构》 笔记 - 概述篇
- 《大型网站技术架构》 笔记 - 架构篇
- 《Effective Ecterprise Java》 笔记
- 《松本行弘的程序世界》– 面向对象
- 摘记–《富爸爸穷爸爸》
- 《代码简洁之道–Clean Code》 摘记
- 设计模式之工厂家族
- 《系统之美》-摘记
linux
- scp 文件传输
- sed 笔记
- awk 学习笔记
- Linux 命令行快捷键
- crontab调度
- linux find 命令
- xargs 命令
- cut,sort,uniq,du 命令
- grep 命令
- shell 脚本之变量、数组、扩展
- shell 脚本之条件测试和流程结构
- tar命令
- linux账户、组、文件权限
- shell 脚本之函数
- iptables
- lsof 查看打开的文件
- watch 周期性执行给定命令
- 开机自动执行脚本 与 update-rc.d
- ln 创建链接文件
- stat 显示文件或文件系统状态
- free 与 df
- netstat
- ssh 自动登录
- ssh 命令说明与使用
- wget 备忘
- 命令的执行方式
- tcpdump
- 路由跟踪
- 关于 Linux swap 的一切
- Linux select/poll/epoll 原理(一)实现基础
- Linux select/poll/epoll 原理(二)select 实现
- Linux select/poll/epoll 原理(三)poll 实现