HTTP 连接池
摘要:HTTP 连接是无状态的,HTTP1.1 默认是长连接,HTTP1.0 也可以通过在请求头中设置 Connection:keep-alive 来开启长连接。 为什么要用Http连接池?1、降低延迟如果不采用连接池,每次连接发起Http请求的时候都会重新建立TCP连接(经历3次握手),用完就会关闭连接
阅读全文
posted @
2020-09-25 17:47
快鸟
阅读(1576)
推荐(0) 编辑
NAT
摘要:NAT(Network Address Translation,网络地址转换)https://baike.baidu.com/item/nat/320024路由器上安装 NAT 软件后叫做 NAT 路由器,它至少有一个有效的外部全球IP地址。这样,所有使用本地地址的主机在和外界通信时,都要在 NAT
阅读全文
posted @
2020-09-15 11:34
快鸟
阅读(727)
推荐(0) 编辑
强引用、软引用、弱引用、虚引用
摘要:<转:https://www.cnblogs.com/cord/p/11546303.html> https://developer.ibm.com/zh/articles/j-lo-langref/ 目录 1,引用类型 2, FinalReference 2.1, Finalizer 3, Sof
阅读全文
posted @
2020-09-14 19:56
快鸟
阅读(484)
推荐(0) 编辑
nio & epoll
摘要:https://zh.wikipedia.org/wiki/Select_(Unix) epoll 由 3 个系统调用组成:epoll_create、epoll_ctl、epoll_wait 具体见: https://www.cnblogs.com/anker/p/3263780.html 数据接收
阅读全文
posted @
2020-09-06 21:24
快鸟
阅读(204)
推荐(0) 编辑
Queue & BlockingQueue
摘要:Queue(队列) java.util.QueueQueue 提供了入队、出队、获取队列头的方法。 这些方法分两类:一类是在操作失败时抛出异常;另一类是在操作失败时返回一个特殊的值(null或false)。操作失败的情况都与队列的临界条件有关:队列满或者队列空。队列满的时候入队会失败,队列空的时候出
阅读全文
posted @
2020-08-23 18:04
快鸟
阅读(231)
推荐(0) 编辑
java program arguments 与 vm arguments、Environment varilables
摘要:program arguments program arguments 是传递给我们的 main 程序的,使用 main 程序的 String[] args 来接收。 举例:java -jar demo.jar --config.p1=v1 config.p2=v2 p3 p4--config.p1
阅读全文
posted @
2020-08-03 21:02
快鸟
阅读(926)
推荐(0) 编辑
jdk 动态代理与 cglib 动态代理原理
摘要:1. JDK 动态代理 jdk 动态代理是通过实现被代理类的接口来实现的,通过 jdk 动态代理生成的类会继承 java.lang.reflect.Proxy,同时实现被代理类的接口。由于 jdk 动态代理已经继承了 java.lang.reflect.Proxy,所以它就不能通过继承类的方式来实现
阅读全文
posted @
2020-07-24 15:53
快鸟
阅读(311)
推荐(0) 编辑
sleep()、wait() 和 park() 的区别
摘要:参考:https://blog.csdn.net/u013332124/article/details/84647915
阅读全文
posted @
2020-07-18 17:51
快鸟
阅读(1795)
推荐(1) 编辑
java 中锁的分类
摘要:参考:http://blog.itpub.net/31545684/viewspace-2375117/
阅读全文
posted @
2020-07-15 22:32
快鸟
阅读(138)
推荐(0) 编辑
happens-before 原则 && volatile 在单例模式中的应用
摘要:https://docs.oracle.com/javase/specs/jls/se8/html/jls-17.html#jls-17.4 Happens-before 的定义 通过上面的定义,我们得出 happens-before 的原则: happens-before 定义了什么时候会发生数据
阅读全文
posted @
2020-07-13 17:14
快鸟
阅读(262)
推荐(0) 编辑
线程池
摘要:线程池分两种:普通线程池——ThreadPoolExecutor定时线程池——ScheduledThreadPoolExecutor 当前线程数还没有达到 corePoolSize 之前,新任务总是会 new 一个新的线程出来。当达到 corePoolSize 之后,任务就会入 workQueue,
阅读全文
posted @
2020-07-12 16:39
快鸟
阅读(209)
推荐(0) 编辑
visual vm 安装 visual gc 插件
摘要:(jvisualvm.exe) 可以打开 visual vm,然后在 工具 --> 插件 --> 可用插件里面下载 (有时刷不出来,将设置代理点一下,点击不设置代理,再刷一下) 实在不行,就只能拿这个出错的链接自己想办法去下载了。下载了之后:工具 --> 插件 --> 已下载 进行离线安装 安装后效
阅读全文
posted @
2020-05-27 17:57
快鸟
阅读(1030)
推荐(0) 编辑
jar各个版本号的意义
摘要:jar版本号的意义: Alpha: Alpha是内部测试版,一般不向外部发布,会有很多Bug.除非你也是测试人员,否则不建议使用.是希腊字母的第一位,表示最初级的版本,alpha 就是α,beta 就是β ,alpha 版就是比 beta 还早的测试版,一般都是内部测试的版本。 Beta: 该版本相
阅读全文
posted @
2018-08-10 14:25
快鸟
阅读(1678)
推荐(0) 编辑
Elastic-Job原理分析(version:2.1.4)
摘要:当当的Elastic-Job开源出了两种分布式Job的解决方案:1. elastic-job-lite,这是一个无中心节点的调度; Elastic-Job-Lite定位为轻量级无中心化解决方案,使用jar包的形式提供分布式任务的协调服务。 2. elastic-job-cloud是一个有中心节点的分
阅读全文
posted @
2017-06-15 14:57
快鸟
阅读(6371)
推荐(0) 编辑
LTS原理分析(version:1.6.9)
摘要:LTS做到分布式唯一执行的原理:LTS采用类似Hadoop作业提交的方式,由JobClient submit作业任务给JobTracker,然后JobTracker会预生成一批作业任务的执行时间记录(落地到MySQL),等到TaskTracker来询问待作业的任务时,将当前待执行的作业任务push到
阅读全文
posted @
2017-06-14 17:51
快鸟
阅读(1619)
推荐(0) 编辑
Java多线程之可见性与原子性——synchronized VS volatile
摘要:<转:http://blog.csdn.net/uniquewonderq/article/details/48113071> <转:http://blog.csdn.net/uniquewonderq/article/details/48113071> 程序举例: 代码: [java] view
阅读全文
posted @
2017-06-06 18:29
快鸟
阅读(293)
推荐(0) 编辑
Java并发编程、内存模型与Volatile
摘要:http://www.importnew.com/24082.html volatile关键字 http://www.importnew.com/16142.html ConcurrentHashMap原理分析 http://www.importnew.com/19612.html Java内存模型
阅读全文
posted @
2017-04-26 17:03
快鸟
阅读(241)
推荐(0) 编辑
线程的状态和生命周期
摘要:线程状态的转换(java.lang.Thread.State 里面有 6 种线程状态): 1、NEW 状态用 new Thread() 建立一个线程对象后,该线程对象就处于 NEW 状态。 2、RUNNABLE 状态通过调用线程的 start() 进入 RUNNABLE 状态。在操作系统层面,对 R
阅读全文
posted @
2017-04-22 11:03
快鸟
阅读(3470)
推荐(0) 编辑
高可用(HA)架构
摘要:http://aokunsang.iteye.com/blog/2053719 浅谈web应用的负载均衡、集群、高可用(HA)解决方案 http://zhuanlan.51cto.com/art/201612/524201.htm 互联网架构“高可用”http://www.blogjava.net/
阅读全文
posted @
2017-04-18 11:17
快鸟
阅读(12355)
推荐(0) 编辑
异步|同步&阻塞|非阻塞
摘要:异步|同步:区别在于发出一个功能调用时,是否马上得到返回结果 阻塞|非阻塞:区别在于调用结果返回之前,当前线程是否挂起 node.js:单线程、异步非阻塞模型 单线程与异步不矛盾,与并发是矛盾的 http://blog.chinaunix.net/uid-26000296-id-3754118.ht
阅读全文
posted @
2016-06-13 22:02
快鸟
阅读(203)
推荐(0) 编辑