- 博客(68)
- 资源 (3)
- 收藏
- 关注
原创 ROCKETMQ记录源码细节及疑问
记录相关细节:Client模块:1.DefaultMQPushConsumer.subscribe方法,一经调用如果MQClientInstance不为空则发送心跳给Broker2.MessageModel是BROADCASTING的则使用LocalFileOffsetStoreCLUSTERING则使用RemoteBrokerOffsetStore3.默认5秒钟持...
2018-11-16 09:18:44
454
原创 Dubbbo 记录源码疑问
dubbo 版本 2.5.31.JVM可以直接配置对应interface的url 或者指定dubbo路径文件,格式参照propertiesReferenceConfig.class line 185String resolve = System.getProperty(interfaceName); String resolveFile = null; ...
2018-08-10 09:32:54
513
原创 Jmeter 简单测试dubbo接口
最近看了Disruptor框架,官方号称它能够在一个线程里每秒处理6百万订单.一个仅仅部署在4台服务器上的服务,每秒向Database写入数据超过100万行数据,每分钟产生超过1G的数据自己就想搞个压测测一下,但是过程有点曲折直接上代码public class Caller extends AbstractJavaSamplerClient { private st...
2018-08-06 10:10:52
1001
原创 Disruptor 源码解析
本文的一些理解基于http://ifeve.com/?x=29&y=10&s=disruptor 一系列文章disruptor 版本 3.4.2RingBuffer 维护并发数据的缓冲数组 RingBuffer因为一些相关参数都用到了,把这几个步骤一起说明,利于理解静态模块初始化 + RingBufferFields构造函数 private s...
2018-07-14 22:05:13
630
原创 Spring Boot
MAVEN编译问题:我们不应该给 parent 项目添加 spring-boot-maven-plugin 构建插件,而应该给终端项目使用,因为这个插件的 repackage 目标会处理 jar 包,导致依赖它的模块无法使用它。在 parent 项目中使用它会导致每个子项目都执行了该目标,进而出现编译失败。application.properties问题:使用@Configuratio...
2018-07-12 09:06:57
186
原创 JAVA 对象大小
写在前面看了网上很多描述,其实已经写的很详细了,但是自己没有实践过总是觉得有点蒙蒙的概念Java对象的内存布局:对象头(Header),实例数据(Instance Data)和对齐填充(Padding)。虚拟机的对象头包括两部分信息,第一部分用于存储对象自身的运行时数据,如hashCode、GC分代年龄、锁状态标志、线程持有的锁、偏向线程ID、偏向时间戳等。这部分数据的长度在32位和64的虚拟机(...
2018-07-09 09:10:08
1104
原创 zookeeper 同步锁实现
写在前面生产上基本都使用Curator客户端去操作zookeeper,zookeeper原始API太底层了,自己封装的比较便利还是比较难的完全出于自己想实现一下同步锁才有了这篇文章,文章中缺少了一块很重要的步骤 “创建根节点 ”,如果直接去拿文章中的代码去操作,报出来的错误就是 root/lock节点不存在。这里都体现了Curator API的实用性了,他们有一个creatingParentCo...
2018-03-01 20:03:43
943
转载 CLH, MCS锁
转载文章 http://blog.youkuaiyun.com/liu88010988/article/details/50799745
2018-01-04 15:15:23
349
1
原创 MAC便捷ssh直接登录远程服务器(免输密码)
--------之前用过linux开发,只有编辑bashrc文件,增加alias可以制作自定义快捷命令,但是直接用ssh user@host,需要强制输入密码今天百度之后,发现一个新姿势 expect脚本,但是需要安装一些东西。expect安装:http://blog.youkuaiyun.com/jw_xuezhixia/article/details/54144116
2017-10-13 13:37:06
2521
原创 生成图片验证码
public class SecurityCodeUtil { private final static Logger logger = LoggerFactory.getLogger(SecurityCodeUtil.class); // 验证码图片的宽度。 private final static int WIDTH
2017-10-12 10:16:08
207
原创 浅尝Java中RSA加解密
非常不错的对称 与 非对称加密的文章 :http://www.cnblogs.com/jfzhu/p/4020928.html--------JAVA中RSA
2017-10-10 19:50:32
220
原创 Log4j2简单配置
log4j官网:http://logging.apache.org/log4j/2.x/manual/appenders.html熟读官网内容的请忽视本文,记录英文小白的摸索过程-------起因新接手的项目原来是log4j的,线上日志登上去不是很好,分类的不够好,而且相对于xml的格式,properties的配置一直觉得不够直观这次就想直接替换成log4j2了,而且简单了解了一下
2017-10-09 11:00:07
797
原创 Java Process 创建linux用户
通过调用shell脚本方式,传入username和password方式产生用户#!/bin/shuseradd $1;echo $2|passwd --stdin $1public static void main(String[] args) { InputStream in = null; try{ File file = new File(
2016-11-14 14:04:25
1058
原创 AUTOWIRE_NO的作用
看公司框架里经常用到AutowireCapableBeanFactory.autowire(Class beanClass, int autowireMode, boolean dependencyCheck)方式获得Bean对于第二个参数,有时候用的AutowireCapableBeanFactory.AUTOWIRE_BY_TYPE, 有时候AutowireCapableBeanF
2016-07-18 10:14:36
4895
原创 HBase 单机版
因为本地测试需要,装了个单机版,由于功力尚浅,装的我好蛋疼,这篇记录最终能跑起来的一些配置hbase cdh下载地址 http://archive.cloudera.com/cdh5/cdh/5/我下载的是1.0.0 cdh5.5.1的hbasehbase里面的hbase-env.sh里面需要导入JAVA_HOME和HBASE_MANAGES_ZK=true代表hbase使用自
2016-06-25 16:49:58
343
原创 Yahoo OMID 部署
最近公司里需要重构DB,改用HBASE,但是HBASE本身只支持行级别事务,跨行跨表级别的事务就不行了。于是最近网上找了点资料,有看到韩国的Haeinsa,本地测试了一下,确实能达到效果。在尝试Yahoo的OMID测试的时候,发现在github上拉下来的code,看了下版本是0.8.1.24的,但是看他的release 版本已经是0.8.2.9了RELEASE :https://bin
2016-06-25 15:03:57
385
转载 applciation.xml foundation configuration and description
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.spr
2016-04-24 20:43:56
300
原创 JPA Specification 的写法
公司里需要用Specification的pattern写一个比较通用的查询,之前对于JPA的了解仅限于继承JPARepository接口,就能实现基本的查询,又或者加上@Query标签@Modify标签基本能实现所有的增删改查了。之前看资料的时候也有看到一些对于Specification的描述和实践,那个时候一眼看过去,哎呀妈呀,整啥玩意呢,这么复杂看到。果然人对于未知的事物总是有抵触
2015-04-08 09:42:49
9079
原创 利用NIO构造简单的聊天功能
public class SocketSelector { private final static int PORT = 1234; public static void main(String[] args) throws IOException { new SocketSelector().init(args); } public void init(Str
2014-12-08 19:57:05
470
转载 学习算法
第一阶段: 练经典常用算法,下面的每个算法给我打上十到二十遍,同时自己精简代码, 因为太常用,所以要练到写时不用想,10-15分钟内打完,甚至关掉显示器都可以把程序打 出来. 1.最短路(Floyd、Dijstra,BellmanFord) 2.最小生成树(先写个prim,kruscal要用并查集,不好写) 3.大数(高精度)加减乘除 4.二分查找. (代码可在
2014-10-09 20:17:18
392
转载 Timer跟ScheduledThreadPoolExecutor的区别
Timer的主要方法有:// 安排在指定的时间执行void schedule(TimerTask task, Date time)// 安排在指定的时间开始以重复的延时执行void schedule(TimerTask task, Date firstTime, long period)// 安排在指定的延迟后执行void schedule(TimerTask task
2014-08-30 20:42:33
507
转载 JDBC链接数据库及使用代码
JDBC连接数据库 •创建一个以JDBC连接数据库的程序,包含7个步骤: 1、加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.lang.Class类的静态方法forName(String className)实现。 例如: try{ //加载M
2014-08-06 17:02:55
497
转载 synchronized和wait()、notify()的关系
转自http://blog.163.com/sunflower123_happy/blog/static/17327442120112264383864/synchronized 方法控制对类成员变量的访问:每个类实例对应一把锁,每个 synchronized 方法都必须获得调用该方法的类实例的锁方能执行,否则所属线程阻塞,方法一旦执行,就独占该锁,直到从该方法返回时才将锁
2014-06-08 21:44:09
667
转载 为数据库建立索引
最普通的情况,是为出现在where子句的字段建一个索引。为方便讲述,我们先建立一个如下的表。 CREATE TABLE mytable ( id serial primary key, category_id int not null default 0, user_id int not null default 0, adddate int not null defa
2014-04-26 19:44:48
544
转载 js异步加载的三种解决方案
默认情况javascript是同步加载的,javascript的加载时阻塞的,后面的元素要等待javascript加载完毕后才能进行再加载,如何解决这个问题呢,接下来将为你详细介绍下异步加载js三种实现方案,感兴趣的你可以参考下哈默认情况javascript是同步加载的,也就是javascript的加载时阻塞的,后面的元素要等待javascript加载完毕后才能进行再加载,对于一些
2014-04-26 19:26:15
464
转载 Servlet线程不安全及解决方法【转】
摘 要:介绍了Servlet多线程机制,通过一个实例并结合Java的内存模型说明引起Servlet线程不安全的原因,给出了保证Servlet线程安全的三种解决方案,并说明三种方案在实际开发中的取舍。 关键字:Servlet 线程安全 同步 Java内存模型 实例变量 Servlet/JSP技术和ASP、PHP等相比,由于其多线程运行而具有很高的执行效率。由于Servlet/JS
2014-04-26 18:53:38
692
转载 Session的一些操作和注意点
Session.evict()作用:从session缓存(EntityEntries属性)中逐出该对象.但是与commit同时使用,会抛出异常 session = HibernateUtils.getSession(); tx = session.beginTransaction();
2014-04-02 20:46:50
975
原创 Hibernate的缓存
trueorg.hibernate.cache.EhCacheProvider需要导入ehcache.xml//一些参数自己去猜想还需要common-logging-1,1,1.jar@Cache(usage=CacheConcurrencyStategy.READ_WRITE,region,include) 详细见hibernate文档regi
2014-03-17 21:11:24
421
HBase, OMID, Haeinsa, Spring Template
2016-06-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人