上一页 1 2 3 4 5 6 ··· 9 下一页
摘要: 特点: 将桶分段,并在某个段上加锁,提高并发能力 源码分析: V put(K key, int hash, V value, boolean onlyIfAbsent) { lock(); try { int c = count; if (c++ > threshold) // ensu... 阅读全文
posted @ 2015-06-05 11:34 风过无痕的博客 阅读(353) 评论(0) 推荐(0) 编辑
摘要: CopyOnWriteArrayList原理 首先每次写操作,都将数组copy一份,并赋值给arrays 读操作读不加锁 写操作加锁 ReentrantLock 因为每次写都要copy数组,这是一项繁重的操作,因此 CopyOnWriteArrayList适合读多写少的情况。 add方法的源码如下: public boolean add(E e) { final ReentrantLock... 阅读全文
posted @ 2015-06-05 11:08 风过无痕的博客 阅读(280) 评论(0) 推荐(0) 编辑
摘要: CAS(Compare and swap)比较和替换是设计并发算法时用到的一种技术。简单来说,比较和替换是使用一个期望值和一个变量的当前值进行比较,如果当前变量的值与我们期望的值相等,就使用一个新值替换当前变量的值 Unsafe用法: 作用,如果当前值和期望值相等,则将当前值更新为新的值X,并返回true 否则什么都不做,返回false return unsafe.compareAndSwapIn... 阅读全文
posted @ 2015-06-02 09:55 风过无痕的博客 阅读(345) 评论(0) 推荐(0) 编辑
摘要: 代码示例: Lock lock = new ReentrantLock(); lock.lock(); try { // update object state } finally { lock.unlock(); } 相比synchronized的优势 1.具有更好的并发性能,激烈争用情况下更佳的性能 2.添加了类似锁投票、定时锁等候和可中断锁等候的一些特性 源码分析: 点击lock方... 阅读全文
posted @ 2015-06-01 17:54 风过无痕的博客 阅读(244) 评论(0) 推荐(0) 编辑
摘要: 概述 数据库事务(Database Transaction) ,是指作为单个逻辑工作单元执行的一系列操作。 事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的资源。通过将一组相关操作组合为一个要么全部成功要么全部失败的单元,可以简化错误恢复并使应用程序更加可靠。一个逻辑工作单元要成为事务,必须满足所谓的ACID(原子性、一致性、隔离性和持久性)属性。 操作流程 ... 阅读全文
posted @ 2015-06-01 14:47 风过无痕的博客 阅读(288) 评论(0) 推荐(0) 编辑
摘要: 简介基本风格是按照spring mvc做的,在后期会加入一些新的特性,封装成易于自己项目使用的mvc框架。github地址:https://github.com/tangyanbo/easymvc功能简介:1. 支持将客户端参数封装成对象,类型自动转换2. 支持注解,配置controller和方法@... 阅读全文
posted @ 2015-05-25 11:20 风过无痕的博客 阅读(2112) 评论(3) 推荐(4) 编辑
摘要: 什么是分布式系统之前我有篇文章已经简单介绍了分布式通信,有兴趣的朋友可以去看看:大型网站系统架构实践(二)分布式模块之间的通信那么今天我详细的说下我对java分布式系统通信的理解1.集群模式,将相同应用模块部署多份2.业务拆分模式,将业务拆分成多个模块,并分别部署3.存储分布式由于分布式概念太大,我... 阅读全文
posted @ 2015-05-13 09:55 风过无痕的博客 阅读(17774) 评论(3) 推荐(10) 编辑
摘要: 补充:看到这么多朋友对sql优化感兴趣,我又重新补充了下文章的内容,将更多关于sql优化的知识分享出来,喜欢这篇文章的朋友给个赞吧,哈哈,欢迎交流,共同进步。2015-4-30补充:非常感觉编辑的推荐,同时又对慢查询语句优化了一遍,并附上优化记录,欢迎阅读文章。场景我用的数据库是mysql5.6,下... 阅读全文
posted @ 2015-04-28 13:09 风过无痕的博客 阅读(20352) 评论(58) 推荐(87) 编辑
摘要: 原理 在第三,四篇文章中讲到了会话保持的问题,而且还遗留了一个问题,就是会话保持存在单点故障, 当时的方案是cookie插入后缀,即haproxy指负责分发请求,应用服务自行保持用户会话,如果应 用服务器宕机,则session会丢失。 现在来温习下解决方案 方案1:session复制 原理 就是将1台服务器的session复制到其它所有的服务器上,这样无论访问哪台服务器,都... 阅读全文
posted @ 2015-04-20 17:56 风过无痕的博客 阅读(6517) 评论(5) 推荐(7) 编辑
摘要: 从上篇文章到这篇文章,中间用了一段时间准备,主要是想把东西讲透,同时希望大家给与一些批评和建议,这样我才能有所进步,也希望喜欢我文章的朋友,给个赞,这样我才能更有激情,呵呵。 由于本篇要写的内容有点多,我就分为几篇博客进行了详细描述。 Haproxy提高web应用的高可用 上一篇文章讲到了haproxy+tomcat的方案,文章地址:大型网站系统架构的演进(四)htt... 阅读全文
posted @ 2015-04-16 09:49 风过无痕的博客 阅读(5834) 评论(3) 推荐(9) 编辑
上一页 1 2 3 4 5 6 ··· 9 下一页