zoukankan      html  css  js  c++  java
  • 影响系统性能的自身因素


     
    程序并发处理的能力
     
    这个不是单个请求能体现出来的,单个请求请求时间可能会很快,但有一定并发量后对系统的平均响应时间影响很大,因此做好程序的并
     
    发编程还是很重要的。可以采用以下一些增强程序并发处理能力的方法:
     
    • 减少Synchronized关键字和对象锁的使用(尽量减少同步代码块),而使用JDK 1.5新增的并发容器类
     
    • 降低变量的可见性,对变量进行线程封闭(如局部变量、ThreadLocal)
     
    • 将不需要改变的变量都声明为final来增强变量的不变性
     
    • 不要在耗时的方法或网络I/O中持有锁或开启事务
     
     
    程序异步执行的能力
     
    程序的异步执行能力往往对单个请求的响应时间影响很大,因此应尽量将能异步处理的操作做成异步任务,具体可以采用Spring的
     
    @Async异步注解或Java自带的Future接口实现
     
     
    JVM内存的使用
     
    这点对性能的影响主要体现在系统的抗压能力上,我在进行系统压力测试的适合曾发现系统持续7000左右的访问量时就报内存耗尽
     
    (OutOfMemory)的错误,后来发现是因为在并发量大时,因为系统创建的对象过多,堆内存全部耗尽,而垃圾回收机制来不急回收
     
    造成的。因此,我们可以在对象不需要是手动把对它的引用设为null,让垃圾回收器尽快回收。当然,还可以进行一些常见的JVM调优
     
    的方法,这里就不详细展开了。
  • 相关阅读:
    sshd_config参数说明
    护网小结(持续更新)
    CVE-2019-2725修复(删包)
    网址收藏
    Kali 开启 SSH 服务方法
    SSL/TLS 安全测试
    时间序列(二):时序预测那些事儿
    时间序列(一):上手体验
    推荐一个利用 python 生成 pptx 分析报告的工具包:reportgen
    评分卡系列(四):泛化误差估计和模型调参
  • 原文地址:https://www.cnblogs.com/gdufs/p/6410332.html
Copyright © 2011-2022 走看看