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

通过网站编辑发稿是怎么做的可不可以用帝国cms做企业网站

通过网站编辑发稿是怎么做的,可不可以用帝国cms做企业网站,用云速成美站怎么做网站,wordpress rt 17主题1、面试题事务的几个特点是什么#xff1f;数据库事务有哪些隔离级别#xff1f;MySQL的默认隔离级别#xff1f;2、面试官心里分析用mysql开发的三个基本面#xff1a;存储引擎、索引#xff0c;然后就是事务#xff0c;你必须得用事务。因为一个业务系统里#xff0c;…1、面试题事务的几个特点是什么数据库事务有哪些隔离级别MySQL的默认隔离级别2、面试官心里分析用mysql开发的三个基本面存储引擎、索引然后就是事务你必须得用事务。因为一个业务系统里肯定要加事务保证一堆关联操作要么一起成功要么一起失败对不对所以这是聊数据库必问的一个问题最最最基本的用mysql来开发就3点存储引擎(了解)索引(能建索引写的SQL都用上索引)事务(了解事务的隔离级别基于spring的事务支持在代码里加事务)存储引擎 - innodb索引基本按照你的SQL的需求都建了索引(可能漏了部分索引忘了建)事务(Transactional注解对service层统一加了事务)3、面试题剖析3.1 事务的ACID这个先说一下ACID必须得知道(1)Atomic原子性就是一堆SQL要么一起成功要么都别执行不允许某个SQL成功了某个SQL失败了这就是扯淡不是原子性。 (2)Consistency一致性这个是针对数据一致性来说的就是一组SQL执行之前数据必须是准确的执行之后数据也必须是准确的。别搞了半天执行完了SQL结果SQL对应的数据修改没给你执行那不是坑爹么。(3)Isolation隔离性这个就是说多个事务在跑的时候不能互相干扰别事务A操作个数据弄到一半儿还没弄好呢结果事务B来改了这个数据导致事务A的操作出错了那不就搞笑了。(4)Durability持久性事务成功了就必须永久对数据的修改是有效的别过了一会儿数据自己没了不见了那就好玩儿了。3.2 事务隔离级别总之面试问你事务先聊一下ACID然后聊聊隔离级别(1)读未提交Read Uncommitted这个很坑爹就是说某个事务还没提交的时候修改的数据就让别的事务给读到了这就恶心了很容易导致出错的。这个也叫做脏读。(2)读已提交Read Committed(不可重复读)这个比上面那个稍微好一点但是一样比较尴尬就是说事务A在跑的时候 先查询了一个数据是值1然后过了段时间事务B把那个数据给修改了一下还提交了此时事务A再次查询这个数据就成了值2了这是读了人家事务提交的数据啊所以是读已提交。这个也叫做不可重复读就是所谓的一个事务内对一个数据两次读可能会读到不一样的值。如图(3)可重复读Read Repeatable这个比上面那个再好点儿就是说事务A在执行过程中对某个数据的值无论读多少次都是值1哪怕这个过程中事务B修改了数据的值还提交了但是事务A读到的还是自己事务开始时这个数据的值。如图(4)幻读不可重复读和可重复读都是针对两个事务同时对某条数据在修改但是幻读针对的是插入比如某个事务把所有行的某个字段都修改为了2结果另外一个事务插入了一条数据那个字段的值是1然后就尴尬了。第一个事务会突然发现多出来一条数据那个数据的字段是1。那么幻读会带来啥问题呢因为在此隔离级别下例如事务1要插入一条数据我先查询一下有没有相同的数据但是这时事务2添加了这条数据这就会导致事务1插入失败并且它就算再一次查询也无法查询到与其插入相冲突的数据同时自身死活都插入不了这就不是尴尬而是囧了。(5)串行化如果要解决幻读就需要使用串行化级别的隔离级别所有事务都串行起来不允许多个事务并行操作。如图(6)MySQL的默认隔离级别是Read Repeatable就是可重复读就是说每个事务都会开启一个自己要操作的某个数据的快照事务期间读到的都是这个数据的快照罢了对一个数据的多次读都是一样的。接下来我们聊下MySQL是如何实现Read Repeatable的吧因为一般我们都不修改这个隔离级别但是你得清楚是怎么回事儿MySQL是通过MVCC机制来实现的就是多版本并发控制multi-version concurrency control。当我们使用innodb存储引擎会在每行数据的最后加两个隐藏列一个保存行的创建时间一个保存行的删除时间但是这儿存放的不是时间而是事务id事务id是mysql自己维护的自增的全局唯一。事务id在mysql内部是全局唯一递增的事务id1事务id2事务id3事务id121的事务查询id1的这一行的时候一定会找到创建事务id  当前事务id的那一行select * from table where id1就可以查到上面那一行事务id122的事务将id1的这一行给删除了此时就会将id1的行的删除事务id设置成122事务id121的事务再次查询id1的那一行能查到吗能查到要求创建事务id  当前事务id当前事务id 在一个事务内查询的时候mysql只会查询创建时间的事务id小于等于当前事务id的行这样可以确保这个行是在当前事务中创建或者是之前创建的同时一个行的删除时间的事务id要么没有定义(就是没删除)要么是必当前事务id大(在事务开启之后才被删除)满足这两个条件的数据都会被查出来。那么如果某个事务执行期间别的事务更新了一条数据呢这个很关键的一个实现其实就是在innodb中是插入了一行记录然后将新插入的记录的创建时间设置为新的事务的id同时将这条记录之前的那个版本的删除时间设置为新的事务的id。现在get到这个点了吧这样的话你的这个事务其实对某行记录的查询始终都是查找的之前的那个快照因为之前的那个快照的创建时间小于等于自己事务id然后删除时间的事务id比自己事务id大所以这个事务运行期间会一直读取到这条数据的同一个版本。记住聊到事务隔离级别必须把这套东西给喷出来尤其是mvcc说实话市面上相当大比重的java程序员对mvcc是不了解的END
http://www.pierceye.com/news/796236/

相关文章:

  • 188旅游网站源码下载做个爬架网站如何做
  • 中国做的比较好的网站设计公司有哪些可以做翻译兼职的网站吗
  • 深圳做网站建设公司dw学生个人网页制作视频
  • html网页设计代码作业网站衡水武邑县建设局网站
  • 网站后台登陆验证码wordpress 前台加载慢
  • 网站推广去哪家比较好专门做网站的公司叫什么
  • 前端做项目的网站资源公司做网站的步骤
  • 资源分享网站怎么建设网站建设百度云
  • 宣讲家网站官德修养与作风建设短视频seo关键词
  • 更新网站怎么弄建设工程合同范本工程施工合同范本
  • 外贸网站建设有什么需要注意的吗白山网站设计
  • 哪家做网站性价比高宁波seo网络优化哪家好
  • 望京做网站微信订阅号怎么做网站
  • 分销系统网站建设网站建设 51下拉平台
  • 怎么才能自己做网站怎么自己制作app
  • 爱看视频的网站政务公开既网站信息化建设会议
  • 做外单什么网站好网站模板下载之后怎么做
  • 网站维护细则微博同步wordpress
  • 网站微商城的建设新网域名备案
  • 网站举报有奖平台北京vi设计公司怎么样
  • Wix做的网站在国内打不开网站开发专业就业好不好
  • php语言做网站网站流量与带宽
  • 网站推广经验做网站职校选什么专业
  • 搜英文关键词网站凯里seo排名优化
  • 哪个网站可以帮忙做简历培训网网站源码
  • 万宁市住房和城乡建设局网站自助建站加盟
  • 创建一个网站需要什么wordpress 支付 api接口
  • 怎么样做免费网站建筑招工找活平台
  • 虚拟机中做网站家政服家政服务网站模板
  • 佛山企业网站建设流程网站开发 前端如何学习