建一个网站要...,哪个网站建设平台支持花呗分期,wordpress 还原备份数据库,网络营销五个主要手段简介#xff1a; Java 作为一门面向对象编程语言#xff0c;在性能方面的卓越表现独树一帜。但在高性能的背后#xff0c;Java 的启动性能差也令人印象深刻#xff0c;大家印象中的 Java 笨重、缓慢的印象也大多来源于此#xff0c;高性能和快启动速度似乎有一些相悖。 近…简介 Java 作为一门面向对象编程语言在性能方面的卓越表现独树一帜。但在高性能的背后Java 的启动性能差也令人印象深刻大家印象中的 Java 笨重、缓慢的印象也大多来源于此高性能和快启动速度似乎有一些相悖。 近日阿里云Serverless应用引擎(SAE)重磅发布 Java 应用启动加速功能首度将 Alibaba Dragonwell(阿里巴巴开源的 Open JDK 长期支持版本)的冷启动加速技术、多线程运行加速技术和 SAE 自身的原地升级策略、镜像预热策略相结合实现了 Java 应用的端到端启动速度提升至仅15s多线程性能提升30%再加上其自身的0代码改造优势已成为企业享受 Serverless 价值的最短路径。
难点分析
众所周知微服务的用户在应用启动层面面临着一些难题 • 软件包大几百 MB 甚至 GB 级别 • 依赖包多上百个依赖包几千个 Class • 加载耗时从磁盘加载依赖包再到 Class 按需加载最高可占启动耗时的一半 借助 Dragonwell 快速启动和多线程运行加速能力SAE 为 Serverless Java 应用提供了一套让应用尽可能加速启动的最佳实践让开发者更专注于业务开发 • Java 环境 JAR/WAR 软件包部署集成 Dragonwell 11 提供加速启动环境 • JVM 快捷设置支持一键开启快速启动简化操作 • NAS 网盘支持跨实例加速在新包部署时加速新启动实例/分批发布启动速度
加速效果
我们选择一些微服务、复杂依赖的业务场景典型 Demo 或内部应用测试启动效果发现应用普遍能降低 5%45% 的启动耗时。若应用启动存在下列场景会有明显加速效果 • 类加载多spring-petclinic 启动加载约 12000 classes • 依赖外部数据越少
客户案例
阿里巴巴搜索推荐 Serverless 平台
阿里内部的搜索推荐 Serverless 平台通过类加载隔离机制将多个业务的合并部署在同一个 Java 虚拟机中。调度系统会按需地将业务代码合并部署到空闲的容器中让多个业务可以共享同一个资源池大大提高部署密度和整体的 CPU 使用率。 由于要支撑大量不同的业务研发运行平台本身需要提供足够丰富的功能如缓存、RPC调用。因此搜索推荐 Serverless 平台的每个 JVM 都需要拉起类似 Pandora Boot 的中间件隔离容器这将加载大量的类拖累了平台自身的启动速度。当突增的需求进入调度系统需要拉起更多容器以供业务代码部署此时容器本身的启动时间就显得尤为重要。 基于 Dragonwell 的快速启动技术搜索推荐平台在预发布环境会执行 AppCDS、Jarindex 等优化将产生的 archive 文件打入容器镜像中这样每一个容器在启动时都能享受加速减少约30%的启动耗时。
潮牌秒杀SAE极致弹性
某外部客户借助 SAE 提供的 Jar 包部署与 Dragonwell 11快速迭代上线了某潮牌商场 App。 在面对大促秒杀时借助 SAE Serverless 极致弹性与应用指标 QPS RT 指标弹性能力轻松面对 10 倍以上快速扩容需求同时一键开启 Dragonwell 增强的 AppCDS 启动加速能力降低 Java 应用 20% 以上启动耗时进一步加速应用启动保证业务平稳健康运行。 SAE 是面向应用的 aPaaS 平台实现了Serverless 架构 微服务架构的完美融合此次再磅以 Dragonwell 的启动和运行加速技术使得客户可以轻松享受应用加速带来的技术红利。
原文链接
本文为阿里云原创内容未经允许不得转载。