锁机制

作者: bangbang2 | 来源:发表于2020-07-22 20:52 被阅读0次

    锁机制

    Innodb是事务级数据库,支持事务,支持外键,rollback,mvcc(高并发:在readcommit,repeatable read),acid

    Myisam不支持事务,行级锁,奔溃后无法安全恢复,不支持外键,强调的快

    image.png image.png

    页锁:表锁快(一次锁住,可以执行好多命令,故快),但冲突多(一旦锁住就不能读)

    行锁慢,冲突小 折中,取一组数据,相关数据的集合就是页表

    Myisam的索引和数据分离,b+树的叶子节点保存是数据的物理地址,所以称为非聚集索引

    Innodb的锁算法

    image.png

    Record lock:锁单个记录

    Gap lock:锁一个范围,不包括记录本身,记录相当于一个gap,所以叫gap lock

    Next-key:record+gap-----最优

    Innodb在行锁时,利用next-key

    大表优化

    mysql的表太大了 1:限定数据的范围:比如限定查询一个月的订单,不能不加限制的将整个表显示给用户

    2:读写分离:主库写,从库读

    3:垂直分区:利用第五方式,将表拆分成小表 优点:快 io少 缺点:冗余列

    4:水平分区:简单的将大表分为几个小表,列不变

    常见面试题

    Java的class文件

    Java的class文件是字节码文件,可以在jvm上执行的文件。是Java文件经过编译后产生的二进制文件

    一直用短连接

    传递视频或图片等比较大的文件,短连接会导致卡顿

    Java的锁的分类

    1:可重入锁

    2:读写锁:读的时候上读锁,写的时候上写锁

    image.png

    3:可中断锁

    image.png

    4:公平锁:谁先来先处理谁

    image.png

    如何衡量hash函数的好坏

    产生最少的碰撞就是好的hash函数

    相关文章

      网友评论

          本文标题:锁机制

          本文链接:https://www.haomeiwen.com/subject/qttxlktx.html