Sunnnner

redis 数据库优化

  • 尽量使用短的key 不要忘了见key识意
  • 避免使用keys * 这条命令是阻塞就是操作这条命令的时候就不能操作其他的命令
  • 保存数据之前先压缩一次
  • 设置key的有效期,使其自动销毁
  • 选择回收策略,Redis的实例空间被装满之后,会尝试回收一部分数据。
  • 尽可能的使用哈希存储
  • 一次性添加多条数据的时候可以使用管道进行存储

    Redis的系统优化

  • 修改Linux中TCP的最大容纳的数量
  • 修改Linux中内核的分配策略
  • 关闭 THP (连续的物理内存巨大的页面)

redis 的性能优化总结

  • 根据业务需要选择合适的数据类型,并为不同的应用场景设置响应的紧凑的存储参数
  • 当业务场景不需要数据持久化时, 关闭所有的持久化方式可以或得最佳的性能以及最大的内存使用量
  • 如果需要使用持久化根据是否可以容忍重启丢失部分数据在快照方式与语句追加方式之间选择其一,不要使用虚拟内存以及diskstore方式
  • 不要让你的Redis所在机器物理内存使用超过实际内存总量的3/5

mysql 数据库优化

  • sql 语句优化

  • 索引优化

    1
    避免查询时的全盘扫描
  • 增加缓存

  • 读写分离

  • 分区

  • 分布式数据库(垂直分割)

  • 水平切分

MongoDB 数据库优化

  • mongodb可以通过profile来监控数据,进行优化。
  • 索引优化
  • 数据库设计优化
    1
    2
    3
    1、完全分离(范式化设计)
    2、完全内嵌(反范式化设计)
    3、部分内嵌(折中方案)

 Previous

 Comments