《企业应用架构模式》读书笔记1-并发
2015-11-04 16:13
302 查看
避免并发
[b]隔离性和不变性[/b]1、隔离 划分数据,使得每一片数据只能被一个执行单元访问。 隔离是一种减少错误发生的有效技术。可以使用隔离方法安排资源,以便程序进入的是隔离区,而无需考虑并发问题。 好的并发设计应该是:找个各种创建隔离区的方法,并且保证每个隔离区里能够完成尽可能多的任务。 2、不变性 只有共享数据可以修改的情况下,才会出现并发问题。所以,一个避免并发冲突的方法是识别哪些是不变的数据。 通过定义某些不变的数据,或者至少是几乎总不变的,就可以不用考虑这些数据的并发。
并发处理
[b]乐观锁和悲观锁[/b]1、乐观锁 使用版本号,时间戳等,在提交数据时进行比对,来检测冲突,它其实不是锁,只是一种冲突检测策略。 2、悲观锁 同一个时间段,只能有一个执行单元来修改数据,其他执行单元必须等待它执行完才能获取数据。它是一种冲突避免策略。 3、选择使用哪一种锁? 选择标准是:冲突的频繁性和严重性。如果冲突很少,或者后果不是很严重,那么通常情况下选择乐观锁策略。 如果冲突的结果对用户来说是痛苦的,那么就要使用悲观锁策略。
相关文章推荐
- 架构纵横谈之二 ---- 架构的模式与要点
- BS项目中的CSS架构_仅加载自己需要的CSS
- 关于三种主流WEB架构的思考
- Android操作系统的架构设计分析
- w3c技术架构介绍
- linux学习笔记 linux目录架构
- mysql数据库应付大流量网站的的3种架构扩展方式介绍
- 从零开始搭建MySQL MMM架构
- C/S和B/S两种架构的概念、区别和联系
- 也谈淘点点60s短信订单的架构设计
- android技术内幕心得
- SequoiaDB 笔记
- Web服务器Nginx多方位优化策略
- 面试:(设计,架构)
- 十日谈
- 微信技术总监周颢:一亿用户背后架构秘密
- 大型网站架构改进历程:存储的瓶颈(3)
- Mysql在大型网站的应用架构演变
- 大型网站架构改进历程:存储的瓶颈(1)
- 大型网站架构改进历程:存储的瓶颈(2)