数据库优化

来源:互联网 发布:BOM是哪个软件 编辑:程序博客网 时间:2024/06/09 21:54

1.主从复制,读写分离

2.垂直水平分表

3.优化sql语句

4.使用索引

5.数据库连接池,单例模式

6.在数据库的前面加缓存,做到缓存的集群,避免因为宕机造成穿透,给服务器增大压力

7.可以使用队列系统,对于短时间内的大量请求,例如:秒杀系统,可以使用队列系统kafka

8.将系统拆分,做成分布式系统


搜索引擎的对比:

myisam读的效果好,写的效果差;原因是:数据是顺序存储的,他的索引节点指向的物理地址的指针,所以找起来很快

innodb写的效果好,读的效果差 原因是:innodb索引节点存的是主键,需要根据主键进行过二次查找

当执行事务时,相当于执行了锁,来保持数据的一致性,但是锁分多种,有行锁,表锁。行锁就是只锁定那一行,那一条记录,别的连接下的操作还可以操作这张表。表锁就是锁定整张表,只有当前连接执行完事务,才可以解锁。

innodb在有索引的时候,是行锁,不会造成其他队该表操作的堵塞;在没有索引的时候,是表锁,他会造成其他操作该表的造成堵塞。


innodb 支持事务,myisam不支持事务。

0 0
原创粉丝点击