- 博客(8)
- 收藏
- 关注
原创 JAVA并行框架(Fork/Join)和并发工具类
Fork/Join:JAVA的并行框架,一个大任务划分成多个小任务(个人理解相当于分治的思想),其执行的类要实现ForkJoinTask接口下的实现类(RecursiveTask<V>/RecursiveAction),在执行该类的时候需要使用ForkJoinPool来执行,其中的invoke方法是同步方法,execute是异步方法,调用task的join()获取到结果。其使用UNSA...
2018-06-06 19:46:37
548
原创 多线程锁
CAS:原子操作(compareAndSet)主要是使用底层的unsafe类。而unsafe类是一个native方法,根据硬件来实现原子操作AQS:AbstractQueueSynchronizer 使用模板设计模式,该类为一个抽象类,实现独占锁。或者共享锁。需要重写其中的一部分方法,其使用了队列。维护整体锁的获取阻塞独占锁:该锁只能被一个线程得到共享锁:比如ReentrantReadWriteL...
2018-06-05 19:20:16
172
原创 HashMap、HashTable、ConcurrentHashMap
HashMap:底层数据结构为数组+链表。存取key的时候根据key.hashCode()和hash的偏移量^运算在和数组的长度&运算得到存储的下标,当key的下标重复的时候使用链表的方式去存储对应的value,不是线程安全的,允许null key存在。始终存在0下标的位置HashTable:整体实现和hashmap差不多。但是hashTable暴露的方法都加有synchronized(类...
2018-06-05 19:10:16
157
翻译 dubbo框架生产者不打印错误日志解决办法
最近在改造公司的项目架构 --我可不是公司的架构师我就是一普通的码农因为是采用的阿里提供的Main类来启动的生产者没有使用Tomcat 等容器所用发现生产者产生异常了根本就没在控制台输出因为公司使用的slf4j来输出日志的所以一番百度过后决定采用logback来输出生产者的错误日志首先引入依赖的包 <dependency> <grou...
2018-04-12 09:59:49
3441
原创 代码质量管理平台sonarqute安装及中文插件安装
官方下载地址:https://www.sonarqube.org/downloads(建议选择LTS版本)linux中 unzip注意:sonarqube5.6版本开始就要使用java1.8 sonarqube.5.1.2使用java1.7cd 安装目录中/config ----> vi sonar.properties主要是其中几个地方 1、sonar.jdbc...
2018-04-12 09:48:00
1092
1
原创 CentOS7 设置redis重启配置文件
#!/bin/bash#kconfig: 2345 90 10# description: Redis-master在centos7中配置redis开机启动过程中 chkconfig redi on 总是报错redis服务不支持chkconfig### BEGIN INIT INFO# Provides: redis# Required-Sta
2017-07-20 14:02:45
2703
原创 第一次搭建redis集群,未实现负载
因项目需求经分析并没有实现负载,因以前一直都是使用并未亲自搭建所以一直是菜逼,其实自己粗略的搭建了一次,感觉并没有想象中的那么难目标:实现高可用需求:一主二从一个哨兵操作:1、在安装目录mkdir(data,logs,pid),分别存放数据、日志、和pid,还需要make编译2、主:port,daemonize:yes设置为守护线程并设置
2017-07-16 16:15:00
234
原创 第一次自己搭建activeMQ实现高可用负载均衡集群心得
目标:1、实现高可用2、实现负载均衡需求:最小三个activeMQ服务器(自己玩玩除外)操作:1、三台服务器编号(1,2,3),其中编号1,2为master-slave服务器,编号3用于和1,2两台通信实现负载2、networkConnectors,如果不考虑后面有新增的情况下可使用static发现(multicast:只发现networkConnector discov
2017-07-16 16:13:30
4580
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人