惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

L
LINUX DO - 热门话题
Stack Overflow Blog
Stack Overflow Blog
B
Blog
WordPress大学
WordPress大学
Project Zero
Project Zero
P
Palo Alto Networks Blog
阮一峰的网络日志
阮一峰的网络日志
博客园 - 司徒正美
有赞技术团队
有赞技术团队
S
SegmentFault 最新的问题
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
小众软件
小众软件
T
Tailwind CSS Blog
Forbes - Security
Forbes - Security
F
Full Disclosure
SecWiki News
SecWiki News
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Hacker News: Ask HN
Hacker News: Ask HN
C
Check Point Blog
Microsoft Security Blog
Microsoft Security Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
F
Fortinet All Blogs
Cisco Talos Blog
Cisco Talos Blog
G
Google Developers Blog
J
Java Code Geeks
Google DeepMind News
Google DeepMind News
人人都是产品经理
人人都是产品经理
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Recorded Future
Recorded Future
O
OpenAI News
Spread Privacy
Spread Privacy
MongoDB | Blog
MongoDB | Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
C
Cybersecurity and Infrastructure Security Agency CISA
S
Securelist
V
Vulnerabilities – Threatpost
Y
Y Combinator Blog
IT之家
IT之家
U
Unit 42
腾讯CDC
S
Security Affairs
C
Cisco Blogs
Schneier on Security
Schneier on Security
The Last Watchdog
The Last Watchdog
B
Blog RSS Feed
宝玉的分享
宝玉的分享
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
S
Security @ Cisco Blogs
Cyberwarzone
Cyberwarzone
T
The Blog of Author Tim Ferriss

博客园 - 碧海无波

Tomcatsession共享方案--memcached-session-manager No control record for Activity type 1000/4220/1442 in version 000 / 2017 activity planning/qty planning 在html中关于如果function的函数名和input的name一样会发生怎样的现象 媒体类型和字符集 第四章ContentProvider 5.3刷新视图 5.2视图中的Order by 5.1什么是视图 排它锁、意向排它锁 8.3锁定 锁和并发的日记 Asp.net Page指令 跨域访问解决方案 angularJS学习之旅(1) MVC框架 设计模式-桥接模式 GS 未在本地计算机上注册“OraOLEDB.Oracle.1”提供程序解决方案 状态模式
8.2事务处理
碧海无波 · 2016-03-26 · via 博客园 - 碧海无波

锁定和并发
  8.2事务处理
    隔离级别Isolation levels
      未提交读UnCommitted Read
        除了丢失更新以外,其他所有行为都可能发生
        使用读操作不占用任何锁来实现
        当选择未提交读时,用户是放弃了对高一致性数据的把握,而趋向于支持系统的高并发能力,使用户不再会互相锁住对方
        适用场景
          决策支持分析系统
        是一种针对阻塞太频繁的一种悲观的解决方案,因为它只是忽略了锁而不保证一致性
      已提交读Read Committed
        数据库引擎的默认级别
        这种隔离级别既是乐观的又是悲观的,取决于READ_COMMITTED_SNAPSHOT设置
          该选项默认是关闭的,因此默认情况下是采取悲观的并发控制
          两种实现
            已提交读(锁定)
            已提交读(快照)
      可重复读Repeatable Read
        一种悲观的隔离级别
        确保当事务重新访问数据或查询被再一次执行时,数据将不再发生改变
        换句话说,一个事务中执行相同的两次查询是不会看到由其他用户的事务所造成的数据上的修改
        缺点
          还是允许幻影行的存在
          这种安全措施所带来的开销是:事务中的所有共享锁必须保留到事务完成为止
          严重降低并发性和性能
      快照snapshot
        一种乐观隔离级别
        类似于已提交读(快照)
      可串行化serializable
        一种悲观隔离级别
        在可重复读的基础之上,增加了新的属性:确保在重新执行查询时,SQL server不会在中间过渡时间增加新的行
        换句话说,同一事物相同的查询执行两次,就不会再出现幻影行了
        最健壮的悲观隔离级别
        缺点
          需要锁定已读数据,还需要锁定不存在数据
        SQL server采取的是一种键范围锁来处理这种情况
          键范围锁要求限定范围值的那个字段存在索引,如果这个字段不存在索引,可串行化隔离就会申请一个表级锁table lock
        同时运行多个可串行化事务,等价于每次执行其中一个(也就是依次地,序列化地)

锁定和并发