当前位置: 首页 > wzjs >正文

产品review网站怎么做网页查询

产品review网站怎么做,网页查询,c语言除了做网站还能干什么,物业网站开发DML锁类型分析 本文对PostgreSQL的insert、 update、 truncate、 delete等常用DML操作的锁类型进行了归纳类比: 包括是否排他、 共享、 表级、 行级等的总结。 truncate :access exclusive mode(block all read/write)、table-le…
DML锁类型分析

本文对PostgreSQL的insert、 update、 truncate、 delete等常用DML操作的锁类型进行了归纳类比: 包括是否排他、 共享、 表级、 行级等的总结。

  • truncate :access exclusive mode(block all read/write)、table-level lock(表级锁)

  • insert : ROW EXCLUESIVE mode ;表级锁;其它事务可以select, 其它事务不能create index、create trigger、刷新物化视图、不能DROP TABLE/TRUNCATE/REINDEX/CLUSTER/VACUUM_FULL/ REFRESH MATERIALIZED VIEW (without CONCURRENTLY) 。看来insert对于数据来说,其它事务受影响不大,可以更新也可以删除,也可以查询。

  • update:

    • 1.ROW EXCLUSIVE mode ;表级锁;其它事务可以与不可以做的描述同上insert。
    • 2.FOR UPDATE mode ;行级锁;其它事务可以select, 但阻止锁定的行被其它事务修改删除、SELECT FOR UPDATE, SELECT FOR NO KEY UPDATE, SELECT FOR SHAREorSELECT FOR KEY SHARE
    • 3.FOR NO KEY UPDATE;行级锁;不修改主键的更新获取该锁,其它事务允许SELECT\SELECT FOR KEY SHARE, 但阻止锁定的行被其它事务修改删除、SELECT FOR UPDATE, SELECT FOR NO KEY UPDATE, SELECT FOR SHARE
  • delete:

    • 1.ROW EXCLUSIVE ;表级锁;其它事务可以与不可以做的描述同上insert。
    • 2.FOR UPDATE mode ;行级锁;其它事务可以select, 但阻止锁定的行被其它事务修改删除、SELECT FOR UPDATE, SELECT FOR NO KEY UPDATE, SELECT FOR SHAREorSELECT FOR KEY SHARE

注:上文中的XXX mode 是PostgreSQL官方文档对于锁模式的几种定义类型,具体可以去PostgreSQL官方文档查询,链接为https://www.postgresql.org/docs/current/sql-lock.html。

定义理解:

共享锁: 查询共享期不允许修改,要保持数据的一致性。

排他锁:变更期间不允许查询与其它变更,防止不一致与冲突。

一次优化实践:

写了一个很长包含很多Insert与update操作的存储过程,在定时任务中会调用这个存储过程,存储过程中每次执行都会清理结果表的数据,并重新生成结果,把结果重新保存到结果表。在接手到前任写的代码时,在清理的时候使用了truncate,后来随着业务增长,数据量越来越大,存储过程执行越来越慢,这样在执行这个定时任务时,业务上去查询这个结果表,都得卡死等待定时任务执行完才会开始查询。

经过思考,原来是truncate操作会排它锁全表,即使其它任何读操作也被阻塞。而且这个锁定的时间范围扩大到了整个存储过程,因为整个存储过程是一个完事的事务。

后来把truncate表的操作改成了delete操作,成功解决了这个问题。delete操作不会阻塞读操作。存储过程未执行过程中,其它事务依然可以读取结果表的数据,只不过是读到的是上一次的结果,因为这一次还没有执行完。这个存储过程的事务隔离级别是读已经提交,只有存储过程的事务执行完成后,才会被其它事务看到,在存储过程 中,执行的delete全结果表,对其它事务查询结果表是不影响的。

http://www.dtcms.com/wzjs/135709.html

相关文章:

  • 国内银行网站做的很垃圾糕点烘焙专业培训学校
  • 深圳高端网站建设多少钱网店运营入门基础知识
  • 网站开发进阶网络推广专员所需知识
  • web网站建设方案最新网站查询工具
  • apache和wordpress兰州seo优化
  • 网站建设与维护毕业论文新闻头条今日要闻10条
  • 做编程的 网站网站策划是做什么的
  • 网站页面做专题的步骤软件推广平台有哪些
  • 东莞定制网站建设军事网站大全军事网
  • 网站适配手机怎么做深圳seo顾问
  • 图书电子商务网站建设长春seo结算
  • 南坪做网站腾讯广告投放推广平台价格
  • 郑州做网站公司+卓美长春网络推广公司哪个好
  • 网站建设 大公司小公司最新搜索引擎排名
  • wordpress 替代文本网站seo优化的目的
  • 程序员网站开发框架灰色词网站seo
  • 专门做面条菜谱的网站百度热门排行榜
  • 青岛网站开发哪家服务专业广州推广服务
  • wordpress 图文展示石家庄seo网络推广
  • 中小企业网络安全网站seo教材
  • 北京哪里可以做网站百度销售岗位怎么样
  • 现在网站要怎么做才有人seo公司外包
  • 网站一年多少费用平台连接
  • 网站建设的技术可行性分析免费浏览外国网站的软件
  • 视频聊天网站怎么建设seo是什么工作内容
  • 网页设计topseo推广软件排行榜
  • 俄罗斯b2b网站大全宁波seo快速优化教程
  • 网页数据可视化设计案例怎么进行seo
  • 西安+医疗网站建设三十个知识点带你学党章
  • 住房和城乡建设部网站八大员北京中文seo