• 【转】系统架构及实现对性能的影响


    来自:https://www.cnblogs.com/2nao/p/6607989.html 

    零.  Mysql的储存引擎

      1.MyISAM(默认):支持三种类型索引.B-Tree(最常用).R-Tree(很少用),Full-text(数据结构也是B-Tree)

      2.Innodb(第三方) 支持事务,实现外键,锁定机制改进,多版本读取

      3.NDB Cluster(分布式集群环境)

    一.不适合在数据库中存放的数据

      1.二进制多媒体数据

        包括图片,音频,视频和其他的二进制文件

      2.流水队列数据:

        使用成熟的第三方队列插件来实现流水日志记录系统

      3.超大文本数据

    二.应用层合理使用Cache

      1.系统各种配置及规则数据

      2.活跃用户的基本信息数据

      3.活跃用户的个性化定制信息数据

      4.基于时间段的统计信息数据

      5.其他一些访问频繁但变更较少的数据

    三.优化sql语句

    四.架构设计不当带来的性能问题和资源浪费情况

      1.Cache系统的不合理利用导致Cache命中率低下,

      2.过渡依赖面向对象思想

      3.对可扩展性的过渡追求,是对象设计的过于离散,造成大量的复杂的join语句

      4.对数据库的过渡依赖.将大量适合存放文件系统的数据存入了数据库,如日志信息

      5.过渡理想化系统的用户体验,如大量不需要实时更新的数据做了实时统计计算

    五.Query语句对系统性能的影响

      1.子查询的效率高于连接的查询

    六.数据模型设计对系统性能的影响

      优化1.将user表中的不常用字段重新建一个user_info表

    七.硬件环境对系统性能的影响

      1.IO性能

      2.CUP性能

      3.网络设备性能

    八.整个系统性能优化收益的百分比(经验)

      需求和架构及业务实现优化:55%

      Query语句的优化:30%

      数据库自身的优化:15%

  • 相关阅读:
    单例模式
    说说抽象类接口
    闲说多态
    理解C#中的继承
    可变个数的形参的方法
    java 关键字
    数组的常见异常
    内存的基本结构 图片
    Java中的名称命名规范:
    死锁的例子 代码练习
  • 原文地址:https://www.cnblogs.com/ww-xiaowei/p/12467884.html
Copyright © 2020-2023  润新知