当前位置: 首页 > news >正文

公司网站维护好做吗六安人论坛六安杂谈

公司网站维护好做吗,六安人论坛六安杂谈,国外电子政务j建设与我国电子政务网站建设对比,如何能进深圳好的设计公司网站阿里电商平台每年的各种大促活动,对于Java技术来说,其中重要一个操作环节就是预热操作。 目录 预热是什么?为什么要预热? java 程序不预热和预热的调用对比 预热是什么? 预热是指,在 JVM 启动后&#xff0…

阿里电商平台每年的各种大促活动,对于Java技术来说,其中重要一个操作环节就是预热操作。

目录

    • 预热是什么?
      • 为什么要预热?
    • java 程序不预热和预热的调用对比

预热是什么?

预热是指,在 JVM 启动后,JVM 刚刚启动后,我们并不会立即向调用方提供正常的流量,而是通过采用一些技术手段,通常是一些能跑到大部分case的测试流量对服务进行预热,直到服务能够按照预期的响应时间提供服务为止。此后才开始真正为调用方提供服务。

对比看下百度AI给出的开车预热。Java程序世界有类似之处
在这里插入图片描述

为什么要预热?

显然因为不预热,第一次访问将会比较慢,调用方无法接受。

为什么第一次访问慢?

OpenJDK 使用了 JIT(Just-in-time) 即时编译技术,可以动态的把 Java 字节码编译成高度优化过机器码,提高执行效率,但是,在编译之前,Java 代码是以相对低效的解释器模式执行的。(可以顺带复习下.class文件加载过程:https://doctording.blog.csdn.net/article/details/145503360)

在应用启动完成后、业务流量刚进来的短时间内,容易出现的状况是:

  • 大量 Java 方法开始被 JIT 编译,请求处理很慢,线程可能大部分慢慢处理、有很多排队等待着、甚至有gc现象,最终的结果就是系统负载飙高,可能导致很多用户请求超时。
  • 极端情况:可能JVM服务一启动,立刻被高流量打死

参考:https://blog.csdn.net/crazymakercircle/article/details/132793889

java 程序不预热和预热的调用对比

预热的调用

预热通常包括以下步骤:

  • 多次执行:执行多次(例如1000次)相同的操作或方法调用,让JVM有时间进行代码优化。

  • 垃圾收集:在预热期间,可以触发垃圾收集,确保JVM的内存管理达到稳定状态。

  • 记录预热时间:记录预热所需的时间,这部分时间不计入实际性能测试中。

不预热:
在这里插入图片描述

预热:在这里插入图片描述

可以看到结果都是正确的,不预热耗时11,865,732ns, 预热是3,572,354ns 相差了3倍

附测试程序:

package warmup;class Fibonacci {/*** 计算斐波那契数列:*/public static long fib(int n) {if (n <= 1) {return n;}return fib(n - 1) + fib(n - 2);}
}class TestNoWarmup {public static void test() {long startTime = System.nanoTime();long result = Fibonacci.fib(30); // 直接计算斐波那契数long endTime = System.nanoTime();System.out.println("TestNoWarmup Result: " + result);System.out.println("TestNoWarmup Time taken: " + (endTime - startTime) + "ns");}
}class TestWithWarmup {public static void test() {// 预热阶段,执行多次以优化JIT编译for (int i = 0; i < 100; i++) {Fibonacci.fib(30); // 预热调用}// 正式测试阶段long startTime = System.nanoTime();long result = Fibonacci.fib(30); // 实际计算斐波那契数long endTime = System.nanoTime();System.out.println("TestWithWarmup Result: " + result);System.out.println("TestWithWarmup Time taken (excluding warmup): " + (endTime - startTime) + "ns");}
}public class Test {public static void main(String[] args) {
//        TestNoWarmup.test();TestWithWarmup.test();}
}
http://www.yayakq.cn/news/722287/

相关文章:

  • 航运网站建设计划书史上最全设计网站
  • 互联网网站建设案例凡科小程序登录入口
  • 做平面设计应该在哪个网站求职做软件的公司网站有哪些
  • 企业网站主页设计图静态网站优化
  • 网站设计站舟山建设网站
  • 新做的网站怎样让百度收录公司网站制作新手教程
  • 江苏国智建设有限公司网站怎么免费创建百度网站
  • 北京会所网站推广pc端软件开发
  • 顺企网怎么样昆明seo关键字推广
  • 阿里国际网站做免费有用吗做推广比较好的网站
  • 做网站开封ftp客户端软件
  • 湖南seo网站开发wordpress主体怎么用
  • 哈尔滨 做网站公司哪家好网站开发前端课程
  • 做网站是那个语言写的北京网络营销的培训课程
  • 彩票网站建设古大学建筑设计有哪些专业
  • 门户网站的建设和管理情况自查微信小程序官网登录
  • 做羞羞的事的视频网站域名续费哪里便宜
  • 微信上如何做网站网站商城系统建设方案
  • 网站风格和功能设计方案肇庆专业网站建设公司
  • 网站开发技术架构教育培训机构管理系统
  • wordpress json ld泉州seo网站管理
  • 国家建设部网站杭州网站优化体验
  • 做暖暖欧美网站网站开发有什么软件有哪些
  • 普宁17网站一起做淘宝在线外链推广
  • 做网站公司联系方式页面做手机网站哪家好
  • qq免费注册网站微信推广网站
  • 可以做闪图的网站域名卖给别人有风险吗
  • 达州做网站的公司有哪些经典手机网站
  • 二级网站建设方案 试行投票链接制作哪家服务好
  • 有啥网站是专做时尚穿搭wordpress 清爽主题