Kafka/RocketMQ
引用:Kafka vs RocketMQ——Topic数量对单机性能的影响 测试目的对比发送端、接收端共存情况下,Topic数量对Kafka、RocketMQ的性能影响,分区数采用8个分区。这次压测我们只关注服务端的性能指标,所以压测的退出标准是: 不断增加发送端的压力,直到系统吞吐量不再上...
redis 跨机房HA
基于Hystrix和双写的跨机房HA
JAVA排序算法
Java排序算法1.插入排序 稳定原理:从有序序列中选择合适的位置进行插入 复杂度:最好 - 最坏 - 平均 O(n) - O(n^2) - O(n^2) 1234567891011121314public void insertSort(int[] a) { if (null =...
JAVA LRU
LRU(Least Recently Used)LinkedHashMap LinkedHashMap自身已经实现了顺序存储,默认情况下是按照元素的添加顺序存储,也可以启用按照访问顺序存储,即最近读取的数据放在最前面,最早读取的数据放在最后面。 LinkedHashMap有一个判断是否删除最老...
网络学习笔记
网络Nagle算法简单的说是把较小的包组装为更大的包延迟发送 Nagle’s Algorithm 是为了提高带宽利用率设计的算法,其做法是合并小的TCP 包为一个,避免了过多的小报文的 TCP 头所浪费的带宽。如果开启了这个算法 (默认),则协议栈会累积数据直到以下两个条件之一满足的时候才真正...
Java学习笔记
Java多处理器多线程伪共享没有竞争的类对象分配到同一个cacheline,造成不必要的内存竞争。 ConcurrentHashMap分段锁 Segment[] HashEntry[] -> HashEntry Java内存映射文件内存映射文件特别适合于对大文件的操作(读写时间短),J...
linux best practice
Linux习惯 在单个命令中创建目录树。 更改路径,不要移动存档。 将命令与控制操作符组合使用。 谨慎引用变量。 使用转义序列来管理较长的输入。 在列表中对命令分组。 在 find 之外使用 xargs 。 了解何时 grep 应该执行计数——何时应该绕过。 匹配输出中的某...
Java Generic - Upper bound, Lower bound
A rare one that is explained more clearly:( Generic wildcard<? Extends T>is used to receive the returned data. Generic collections with this ...
java 泛型 - 上界,下界
少有的讲得比较清楚的 :( 泛型通配符<? extends T>来接收返回的数据,此写法的泛型集合不能使用 add 方法,而<? super T>不能使用 get 方法,做为接口调用赋值时易出错。 说明:扩展说一下 PECS(Producer Extends Consu...
消息事务
消息事务参考: https://github.com/zjpjohn/ReliableMeageSystem 消息记录和业务DB在一个库中,业务DB操作完成后(事务完成后),开始发送消息。需要用到Spring中的事务同步TransactionSynchronizationAdapter Mes...