-
CompletableFuture
Doug Lea 果然是大神中的大神。CompletableFuture强撸了一个又一个美丽的夜晚结论CompletableFuture 更多的是体现一种依赖关系src,dep,snd源码分析modemode的不同,影响在d.uniRun(a = src, fn, mode > 0 ? null : this)),postFire()等 static final int SYNC = 0; //当前线程触发 static final int ASYNC = 1; //线程池...…
-
cassandra运维
参考http://docs.datastax.com/en/landing_page/doc/landing_page/planning/planningHardware.htmlhttps://docs.datastax.com/en/developer/java-driver/3.4/manual/http://docs.datastax.com/en/archived/cassandra/2.2/cassandra/install/installRecommendSettings.h...…
-
cassandra笔记
bin/cassandrabin/nodetool status配置Durable_writes: 是否写commit_logcassandra.yamljvm配置:cassandra-env.shcommit_sync : batch、periodic(batch和periodic对比性能差距在好几个数量级以上)replication :SimpleStrategyNetworkTopologyStrategySnitches 机架感知 路由读写一致性W + R > RFkey c...…
-
性能优化-volatile修饰数组和对象
无他,我也想知道答案。翻尽百度和谷歌前十页,无定论。工具hsdis-amd64.dylibjitwatch参考Mac下hsdis和jitwatch下载和使用 测试方式 判断依据volatile指令生成的汇编会带有lock前缀 测试代码 public class Teacher { public volatile int[] student = new int[]{1,2,3}; public int add(int a, int b) { ...…
-
性能优化-JMH
JMH(基准测试)JMH只适合细粒度的方法测试 maven依赖 <dependency> <groupId>org.openjdk.jmh</groupId> <artifactId>jmh-core</artifactId> <version>1.21</version> </dependency> <dependency> ...…
-
线程-FutureTask总结
futuretask只会执行一次,可用于创建缓存等run方法if (state != NEW || !UNSAFE.compareAndSwapObject(this, runnerOffset, null, Thread.currentThread())) return;get()方法会一直阻塞,当使用线程池 DiscardPolicy和DiscardOldestP...…
-
性能优化-nmon
nmon可以用于查看CPU、网络、内容、磁盘等以及生成报告 安装 yun -y install nmon 常用命令 nmon 如上图 nmon -s10 -c60 -f -m /home/参数解释:-s10 每 10 秒采集一次数据。-c60 采集 60 次,即为采集十分钟的数据。-f 生成的数据文件名中包含文件创建的时间。-m 生成的数据文件的存放目录。分析报告百度之。 转...…
-
性能优化-网络(nethogs)
nethogs查看进程占用的带宽 安装 yum -y install nethogs 常用命令nethogs eth0 -d 5 //这个命令意思是监控网卡eth0的带宽占用情况,每五秒刷新一次 ;nethogs eth0 eth1 //同时监视eth0和eth1接口; 交互式命令q: quits: sort by SENT trafficr: sort by RECEIVE trafficm: switch between total (KB, B, MB) a...…
-
性能优化-JAVA常用操作所需时间
JAVA常用操作所需时间在一些RT要求比较高的场景中,如果每个场景和流程我们都能知晓大致的执行时间,那么对于程序设计或者排查问题还有很有帮助的。下面我列出了一些经常出现,又比较重要场景的执行时间,大家也可以补充。周末在家把相关的数据基本测试过,再结合以前的经验,数据基本靠谱。Java基本操作一次整型、浮点型赋值: 纳秒级一次字符串赋值:微秒级一次字符串的拼接:微秒级 至少上百微秒new一个对象: 微秒级一次if else判断: 纳秒级一次与、非、移位运算: 纳秒级一次加减乘除: 纳秒级fo...…
-
性能优化-网络(iftop)
iftop 安装 yum -y install iftop 常用命令 iftop 界面上面显示的是类似刻度尺的刻度范围,为显示流量图形的长条作标尺用的。中间的<= =>这两个左右箭头,表示的是流量的方向。TX:发送流量RX:接收流量TOTAL:总流量Cumm:运行iftop到目前时间的总流量peak:流量峰值rates:分别表示过去 2s 10s 40s 的平均流量 进入iftop画面...…
-
线程-AQS杂记
ReentrantLock内部有两个Sync(NonfairSync和FairSync)实现了AbstractQueuedSynchronizerAbstractQueuedSynchronizer内部有Node,用于实现FIFO队列,链表形式AbstractQueuedSynchronizer state字段表示资源,=1表示获取到资源即获取到锁,用compareAndSetState自旋的方式设置值Node waitStatus字段表示状态,重要的是SIGNAL状态,在此状态下会被Lo...…
-
杂记
余数% 与数组下标十进制转二进制表示StringBuilder sb = new StringBuilder();for(int i = 31;i >= 0; i--){ sb.append(n >>> i & 1); }假设原数为num, num & (num - 1)可以快速地移除最右边的bit 1转载请注明:这不是一只猫的博客 » 点击阅读原文…
-
数据中间件选择
各种存储系统数据中间件选择转载请注明:这不是一只猫的博客 » 点击阅读原文…
-
Activiti6总结
Activiti版本<dependency> <groupId>org.activiti</groupId> <artifactId>activiti-engine</artifactId> <version>6.0.0</version></dependency>监听相关 ActivitiEventListener activiti中全局监听,可以监听各种activiti事件类型 Task...…
-
Jekyll搭建个人博客
备注 内容为转载,实践过程中可能由于Jekyll版本不一致,需要gem其他版本的插件 运行方式bundle exec jekyll serve -w –host=0.0.0.0 指定端口运行在_config.yam下面增加 post:4001以下为转载内容转载自Jekyll搭建个人博客介绍 Jekyll 是一个简单的博客形态的静态站点生产机器。它有一个模版目录,其中包含原始文本格式的文档,通过 Markdown (或者 Textile) 以及 Liquid 转化成一个完整的可发布的静...…