分享好友 最新资讯首页 最新资讯分类 切换频道
性能优化方法总结
2024-12-30 02:04

性能优化策略

空间换时间

各种cache如CPU L1/L2/RAM到硬盘,都是用空间来换时间的策略。这样把计算过程一步一步的保存或缓存下来,不需要每次用的时候再计算一遍,比如数据缓冲,CDN等。这样的策略还表现为冗余数据,比如数据镜象,负载均衡。

时间换空间

当空间成为瓶颈时,切分数据分批次处理,用更少的空间完成任务处理。如:上传大附件时经常用这种方式。

简化代码

最高效的程序就是不执行任何代码的程序,所以代码越少性能就越高。如:减少循环的层数,减少递归,在循环中少声明变量,少做分配和释放内存的操作,尽量把循环体内的表达式抽到循环外,条件表达的中的多个条件判断的次序等等

并行处理

用多个进程或者线程同时处理业务,缩短业务处理时间。

总之,根据2:8原则来说,20%的代码消耗80%的性能,找到那20%的代码,就可以优化对应的80%性能。

性能优化方法

1.CPU问题

  • 考虑使用更高级的CPU代替当前的CPU
  • 对于多CPU,考虑CPU之间的负载分配
  • 考虑在其他体系上设计系统,例如增加前置机,设置并行服务器等

2. 内存和高速缓存

  • 内存的优化包括操作系统、数据库、应用程序的内存优化
  • 过多的分页与交换可能降低系统的性能
  • 内存分配也是影响系统性能的主要原因
  • 保证保留列表具有较大的邻接内存块
  • 调整数据块缓冲区大小(用数据块的个数表示)是一个重要内容
  • 将最频繁使用的数据保存在存储区中

3. 磁盘(I/O)资源问题

  • 磁盘读写进度对数据库系统是至关重要的,数据库对象在物理设备上的合理分布能改善性能;磁盘镜像会减慢磁盘写的速度
  • 通过把日志和数据库对象分布在独立的设备上可以提高系统的性能
  • 把不同的数据库放在不同的硬盘上,可以提高读写速度。经常把数据库、日志放在不同的设备上

4. 调整配置参数

  • 包括操作系统和数据库的参数配置
  • 并行操作资源限制的参数(并发用户的数目、会话数)
  • 影响资源开销的参数
  • 与I/O有关的参数

5. 优化应用系统网络设置

  • 可以通过数组接口来减少网络呼叫
  • 调整会话数据单元的缓冲区大小
  • 共享服务器进程比专用服务进程提供较好的性能

6. 数据库

 6.1 性能问题

  • 单一类型事务响应时间过长
  •  数据库服务器负载、糟糕的数据设计、事务粒度过大、批任务对普通用户性能的影响
  • 并发处理能力差
  • 锁冲突严重
  • 资源锁定造成的数据库事务超时、数据库死锁
最新文章
Google Trends和Google Insights
Google Trends(谷歌趋势)发布过中文版,是Google推出的一款基于搜索日志分析的应用产品,通过这个工具可以知道某一搜索关键词
AI绘画工具MJ新功能有点东西,小白也能轻松一键换装
先看最终做出来的效果直接来干货吧。Midjourney,下面简称MJ1.局部重绘功能来袭就在前两天,MJ悄咪咪上线了这个被众人期待的新功
AI制冷,守护绿色未来
互联网发展至今,全球已有近44亿网民,我们通过不同的设备连接互联网,享受着在线购物,在线交友等一系列智能生活,而这背后,离
DDos攻击的防御方法
到目前为止,进行DDoS攻击的防御还是比较困难的。首先,这种攻击的特点是它利用了TCP/IP协议的漏洞,除非你不
AI音乐生成将导致音乐作品版权概念的消亡
在这个迅速变化的时代,科技的进步总是令人惊叹。最近AI音乐生成技术的兴起,开始掀起了关于音乐作品版权的讨论。或
ai语音功能是什么 ai语音功能详解?
2、可以帮用户完成生活当中的众多琐事,比如说翻译、打车、酒店、购物、百科百答等等;3、能够进行全场景实时图像搜索,让电视播
CLion和IDEA集成的ai代码助手——通义灵码的使用及其自动代码补全的禁用设置等使用优化
       通义灵码,作为智能编码on助手,可以在进行编码工作时,为你提供行级/函数级实时续写、自然语言生
11、作为服务注册中心,Eureka比Zookeeper好在哪里?  ***
目录 1、什么是微服务? 2、微服务之间是如何通讯的? 3、springcloud 与dubbo有哪些区别?  4、springBoot
AI�˹�����Ʒ�����а���˹�����δ����չ
�˹����ܣ�AI���ǵ���Ƽ�������Ϊ���ֿ��ȵĻ���֮һ�����ż����IJ��Ͻ�����Ӧ�õ