zoukankan      html  css  js  c++  java
  • 系统架构性能优化思路

    自己简单总结了一下这方面的东西,语言都比较简单,主要是为了看到能够想起来相关内容。
    从持久层开始向展现层说:

    持久层

        1、存储选型
              存储器类型(IDE/SCSI/SSD磁盘、网络存储NFS等)
              数据库类型(MySql、Oracle、SQLServer等)
        2、数据拆分,垂直切分水平切分。垂直切分为按模块切分,不同模块划分到不同的存储单元,缓解单个存储单元的IO压力;水平切分为分布式数据库,可按数据的所属机构切分,减少每个存储单元的数据量;
        3、读写分离
            主从模式,1主多从,主写从读。读写压力分开,也可以解决读写的锁冲突等
        4、数据库负载均衡
           如OracleRAC
        5、raid技术提速冗余容灾
            一份数据同时向多块存储写,存储器实现,对存储逻辑也是透明的。
        6、数据库调优
             数据库使用的存储量、内存缓存量、线程数、其他资源使用量配置。
        7、业务表结构优化
             表结构合适的拆分,以性能为目标的制定冗余信息,数据库索引优化等
    业务层
         1、语言机制
              资源连接池
              异步处理
              多线程处理
              针对java,jvm参数调优
         2、通用高效组件
             全文检索nuts、lucene
             缓存框架memcache、redis
         3、业务代码优化
              语言改进(跨语言迁移方案:拆分模块、按模块逐步改进、新旧并行、新替换旧)
              逻辑改进 高内聚低耦合
         4、中间件负载均衡
              集群、F5等
         
    展现层
         1、CDN内容分发网络
               提升不同区域访问速度、解决网站流量限制,降低硬件门槛等
               CDN原理   
                       用户提交域名 ->浏览器解析域名 ->CDN-DNS-Server返回CNAME ->浏览器对CNAME解析 ->得到CDNServer的IP ->访问CDNServer -> CDNServer通过内部DNS缓存返回目的IP ->浏览器访问IP ->浏览器解析响应内容
         2、页面架构
              不易变内容使用静态页面、数据异步加载、页面缓存
         3、页面内容优化
              减小页面大小
              减少零碎小资源文件
              应用CSS定制样式
              
        
  • 相关阅读:
    AI人脸识别SDK接入 — 参数优化篇(虹软)
    虹软人脸识别ArcFace2.0 Android SDK使用教程
    虹软免费人脸识别SDK注册指南
    python3+arcface2.0 离线人脸识别 demo
    Android利用RecyclerView实现列表倒计时效果
    将博客搬至CSDN
    Retrofit动态设置支持JSON和XML格式转换工厂
    Android 简单统计文本文件字符数、单词数、行数Demo
    [雨]个人项目设计分析
    Android:随机生成算数四则运算简单demo(随机生成2~4组数字,进行加减乘除运算)
  • 原文地址:https://www.cnblogs.com/edhn/p/3484357.html
Copyright © 2011-2022 走看看