2019年7月1日

笔记

摘要: 研究一下 jdk的 动态代理 和cgcib 代理 在看hibernate的 增删改查 功能底层的session如何实现的 可串行化——SERIALIZABLE 事务的最高级别,在每个读的数据行上,加上锁,使之不可能相互冲突,因此,会导致大量的超时现象 MySQL默认操作模式就是autocommit自 阅读全文

posted @ 2019-07-01 20:58 gfaraway 阅读(119) 评论(0) 推荐(0) 编辑

2019年6月30日

zookeeper

摘要: 工作原理: Zookeeper 的核心是原子广播,这个机制保证了各个Server之间的同步。实现这个机制的协议叫做Zab协议。Zab协议有两种模式,它们分别是恢复模式(选主)和广播模式(同步,新加入的机器会同步)。当服务启动或者在领导者崩溃后,Zab就进入了恢复模式,当领导者被选举出来,且大多数Se 阅读全文

posted @ 2019-06-30 22:52 gfaraway 阅读(182) 评论(0) 推荐(0) 编辑

redis中间件

摘要: redis的集群:集群策略:主从复制(从库从主库同步获取数据,本身不提供服务)哨兵(监控主库和从库,当主库挂的时候自动把从库选一个切换为主库,主库存放的是全量数据)集群参考:https://blog.csdn.net/q649381130/article/details/79931791,https 阅读全文

posted @ 2019-06-30 22:35 gfaraway 阅读(2849) 评论(0) 推荐(0) 编辑

多线程的杂篇

摘要: thread的join方法是运行该方法的线程必须等到join方法的线程运行完毕才能让当前线程继续运行。原理是校验join线程是否存活,存活就一直循环等待,直到线程over了,才继续向下运行。volitile 是让线程间进行通讯的,解决了编译器的重排序,是程序按照正常的执行流程运行, jstat 命令 阅读全文

posted @ 2019-06-30 21:44 gfaraway 阅读(103) 评论(0) 推荐(0) 编辑

2019年6月27日

hibernate的乐观锁和悲观锁+事务

摘要: hibernate实现数据库操作的乐观锁和悲观锁参看:https://blog.csdn.net/chang_ge/article/details/79695813https://www.cnblogs.com/otomedaybreak/archive/2012/01/27/2330008.htm 阅读全文

posted @ 2019-06-27 23:03 gfaraway 阅读(125) 评论(0) 推荐(0) 编辑

2019年6月25日

redis的集群:

摘要: 集群策略:主从复制哨兵集群 参考:https://blog.csdn.net/q649381130/article/details/79931791 集群又分为如下:客户端分片基于代理的分片路由查询参考:https://www.jianshu.com/p/14835303b07e 阅读全文

posted @ 2019-06-25 22:56 gfaraway 阅读(115) 评论(0) 推荐(0) 编辑

2019年6月23日

AQS: 什么是AQS?

摘要: AQS定义了一套多线程访问共享资源的同步器框架. 许多同步类实现都依赖于它,如常用的ReentrantLock/ReentrantReadWriterLock/CountDownLatch这些类里面都维护了一套aqs的子类,利用子类实现的功能。该队列里面维护的是一堆线程节点。核心思想是当前线程获取锁 阅读全文

posted @ 2019-06-23 17:42 gfaraway 阅读(1242) 评论(0) 推荐(0) 编辑

2019年6月22日

java 的CAS

摘要: CAS:什么是 CAS 机制?cas目的是实现原子操作解释一下:"原子操作(atomic operation)是不需要synchronized",这是多线程编程的老生常谈了。所谓原子操作是指不会被线程调度机制打断的操作;这种操作一旦开始,就一直运行到结束,中间不会有任何 context switch 阅读全文

posted @ 2019-06-22 17:51 gfaraway 阅读(305) 评论(0) 推荐(0) 编辑

2019年6月12日

java 线程池

摘要: 今天做了一个需求要求登录系统后记录所有人的所有操作,由于该类型操作任务量小但是却很多,所以想到了用线程池,实现异步操作,避免同步操作影响性能。选择了spring的线程池基于xml配置文件进行配置。线程数和队列项目实际情况进行配置 Java提供了4钟线程池: newCachedThreadPool 特 阅读全文

posted @ 2019-06-12 22:29 gfaraway 阅读(113) 评论(0) 推荐(0) 编辑

2019年6月4日

conditon 实现等待/通知

摘要: synchronized 与wait() 和notify() notifyAll() 方法相结合可以实现等待 通知 ReetrantLock也可以实现同样的功能 需要借助condition对象,一个lock对象里面可以创建多个condition(对象监视器),可以选择性的进行线程通知, notify 阅读全文

posted @ 2019-06-04 23:08 gfaraway 阅读(247) 评论(0) 推荐(0) 编辑

导航