标签:compare curator example long 实现 memcach dup 思路 JD
高可用的一些手段 任务调度分布式elastic-job,主备curator的实现,监控报警机制
AtomicReference
private static AtomicReference
count = new AtomicReference<>(0);
atomicReference.compareAndSet(0, 2)是0的话更新为2否则不执行,更新的字段
AtomicReferenceFieldUpdater
private static AtomicIntegerFieldUpdater
updater =
AtomicIntegerFieldUpdater.newUpdater(AtomicExample5.class, "count");
@Getter
public volatile int count = 100;//更新类的某个实例的中的volatile字段
atomicReference.compareAndSet(example5, 100, 120)
AtomicBoolean 适合在高并发的情况下代码只可能执行一次
修饰类
ReentrantLock
共享变量更新后的值没有在工作内存与主存间及时更新
cpu cache的意义 时间局部性,空间局部性
local read,local write,remote read,remote write
处理器为提高运算速度而做出的违背代码原有的顺序的优化
heap 堆 静态变量 基本数据类型 引用对象 共享
write写入
性能 线程过多使用导致cpu频繁切换,调度时间增多,同步机制,消耗过多内存
资源利用 cpu能够在等待IO的时候做其他的事情
配置参数Iterations 次数 iterations 延迟时间
配置ServerName=127.0.0.1
命令.\ab -n 1000 -c 50 http://127.0.0.1:8080/test 1000个请求,并发50个
transfer rate 请求单位时间从服务器获取数据长度 是total transferred/Time taken for tests
右击左边侧边栏的test plan 依次点击add threads treadown-thread-group
配置log 点击 options 点击log view
Semaphore 控制线程的执行
标签:compare curator example long 实现 memcach dup 思路 JD
原文地址:https://www.cnblogs.com/test1234/p/8991550.html