文章标题

来源:互联网 发布:网络时间同步协议 编辑:程序博客网 时间:2024/06/05 23:07

第一、优化索引、SQL 语句、分析慢查询 。
第二、设计表的时候严格按照数据库的设计范式来设计数据库 。
第三、我们可以加上 memcached 缓存,将经常被访问到的数据,但是不需要经常变化的数据放入至 memcached 缓存服务器里面,这样的话能够节约太强盘。
第四、还可优化硬件,在硬件层面,我们可以使用更好的一些硬盘(固态硬盘),使用一些磁盘阵列技术(raid 0,raid1,raid5)raid0 最简单的(两块硬盘硬盘相加100G + 100 G = 200G raid1镜像卷把同样的数据写两份。可以随机从A/B 里面读取,更高。硬盘坏了一块,数据也不会丢失raid5 3块硬盘,坏了一块,另外两块也能工作。
第五、如果以上都做速度还是慢,先不要去切分可以使用 MySQL 内部自带的表分区技术,来将数据分成不同的文件。这样能够让磁盘在读取的时候效率更高。
第六、可以再做垂直分表,可以将不经常读数据放到另外一个表里面去。这样能够节约磁盘。
第七、如果发现我们的效率还是不够高,我们可以采用主从的方式来将数据读写分离。
第八、数据量特别大,我们优化起来会很困难可以使数数据库中间件的方式,将数据进行分库分表分机器。(原理,数据路由)
第九、此外,我们还可以采用一些更快的存储方式,例如 NoSQL 来存储一些我们需要经常访问到的数据。从数据库里面取出来后,再到 NoSQL 取出一些其他的数据。
第十、此外还有一些表引擎选择,参数优化和一些相关小技巧都是优化 MySQL 的方式
第十一、我们还可以将我们的业务系统在架构级别进行缓存,静态化和分式式。
第十二、不使用全文索引,使用xunsearch,ES 或者云服务器上的索引。

0 0
原创粉丝点击