进击的 Serverless:Java 应用如何从容地面对突增流量

2 月 2 日
阅读 7 分钟
移动互联网时代,许许多多的业务都有着流量的周期性变化,无论是直播、游戏、点单系统、电商平台等等,都会存在着流量的高峰与波谷。如果采用固定的计算资源部署服务,使用的多了,大量资源在流量波谷闲置浪费,使用的少了,服务难以抗住高峰期的大规模流量,易带来业务损耗。

浅析JAVA日志中的几则性能实践与原理解释

2023-12-04
阅读 9 分钟
程序记录日志的过程,就是将需要记录的内容写入到磁盘文件中的过程。与生活的物流场景类似,好比是一车货物通过一套运输体系运送至目的地的过程,然而在这套物流体系中,我们往往不需要自己完成整套打包、上车、运输、卸货等全套流程,只需要将包打好之后交由专业的物流公司即可。对于我们今天所要描述的日志场景而言,...

Java 中保持扩展性的几种套路和实现

2023-11-29
阅读 27 分钟
SOLID(单一、开闭、里式替换、接口隔离、依赖倒置)五大原则和23种设计模式(常见的单例、构建者、装饰、适配、代理、组合、模板等等),小伙伴们对这些肯定都很熟悉。这些原则和设计模式能够辅助我们,让我们在设计的时候有所抉择,从而达到高内聚、低耦合的目的。

阿里云 ARMS 应用监控重磅支持 Java 21

2023-11-20
阅读 8 分钟
今年的 9 月 19 日,作为最新的 LTS (Long Term Support) Java 版本,Java 21 正式 GA,带来了不少重量级的更新,详情请参考 The Arrival of Java 21[1]。虽然目前 Java 11 和 Java 17 都还没有在国内大规模普及,Java 8 依然占据主流地位,但及时更新 JDK 版本可以为开发者带来许多重要的价值,包括应用程序性能和稳定...

图解 JVM 内存模型及 JAVA 程序运行原理

2023-06-13
阅读 5 分钟
在进入正题之前,先问一个老生常谈的问题,相较于C,JAVA语言的优势是什么?相信学过JAVA的人都知道,无论是大学时的第一堂课还是JAVA相关书籍的第一章也都会讲到:一次编写、到处运行;真正意义上的实现了跨平台。那再问一个问题,为什么Java可以跨平台?大多数人都知道Java可以跨平台得益于 JVM(java虚拟机)。在这之...

通过 HTTP/2 协议案例学习 Java & Netty 性能调优:工具、技巧与方法论

2023-05-19
阅读 15 分钟
Dubbo3 Triple 协议是参考 gRPC、gRPC-Web、Dubbo2 等协议特点设计而来,它吸取各自协议特点,完全兼容 gRPC、Streaming 通信、且无缝支持 HTTP/1 和浏览器。

一种新的流:为 Java 加入生成器(Generator)特性

2023-05-09
阅读 26 分钟
这篇文章不是工具推荐,也不是应用案例分享。其主题思想,是介绍一种全新的设计模式。它既拥有抽象的数学美感,仅仅从一个简单接口出发,就能推演出庞大的特性集合,引出许多全新概念。同时也有扎实的工程实用价值,由其实现的工具,性能均可显著超过同类的头部开源产品。

RISC-V 中开发 Java 是一种什么体验? 让 Dragonwell JDK 来回答

2023-04-25
阅读 4 分钟
Alibaba Dragonwell [1] 是一款免费的 OpenJDK 发行版。它提供了长期支持,包括性能增强、安全修复以及 Dragonwell 上专有的一些特性,比如 Wisp 协程、多租户、JWarmup、G1 elastic heap 以及 serviceability 上的特性 [2] 等等。Dragonwell 包括 8、11、17 三个版本,而每个版本又包括 standard (和 OpenJDK 基本保持...

强强联合,性能提升数倍!Alibaba Dragonwell11+VectorAPI 助力 Java 高性能新时代

2023-04-25
阅读 4 分钟
Alibaba Dragonwell 作为 OpenJDK 的下游版本,是阿里巴巴针对 10万+ 服务器上运行的在线电商、金融、物流应用优化的 OpenJDK 实现。 阿里巴巴和 OpenJDK 社区紧密合作,将尽可能多的 Alibaba Dragonwell 定制功能带到上游。Dragonwell 是 OpenAnolis 的默认 JDK,Alibaba 的众多 Java 应用,正在逐步迁移到 Dragonwell ...

如何保证 Java 应用安全?标准答案来了

2023-04-12
阅读 12 分钟
这个问题的标准答案是 Java 机密计算技术,它将机密计算技术引入 Java 的世界,为 Java 程序的安全性带来了重大的提升。基于此,龙蜥社区云原生机密计算 SIG 推出了 Java 机密计算的具体实现技术——Teaclave Java TEE SDK, 以下简称 Teaclave Java。该技术具有以下显著优点:

Java 缺失的特性:扩展方法

2023-04-06
阅读 8 分钟
扩展方法,就是能够向现有类型直接“添加”方法,而无需创建新的派生类型、重新编译或以其他方式修改现有类型。调用扩展方法的时候,与调用在类型中实际定义的方法相比没有明显的差异。

解读 Java 云原生实践中的内存问题

2023-02-08
阅读 7 分钟
Java 凭借着自身活跃的开源社区和完善的生态优势,在过去的二十几年一直是最受欢迎的编程语言之一。步入云原生时代,蓬勃发展的云原生技术释放云计算红利,推动业务进行云原生化改造,加速企业数字化转型。

Java Agent 踩坑之 appendToSystemClassLoaderSearch 问题

2023-02-07
阅读 6 分钟
从 Java Agent 报错开始,到 JVM 原理,到 glibc 线程安全,再到 pthread tls,逐步探究 Java Agent 诡异报错。

Java编程技巧之单元测试用例简化方法

2023-02-03
阅读 14 分钟
意思是:“ 一部书的篇幅太长,让人看见就害怕。”编写单元测试用例也是如此,如果单元测试用例写起来又长又复杂,自然而然地会让人“望而生畏”,于是开始反感甚至于最终放弃。为了便于Java单元测试的推广,作者总结了十余种测试用例的简化方法,希望能够让大家编写单元测试用例时——“化繁为简、下笔如神”。

开源软件安全与应对策略探讨 - Java 机密计算技术应用实践

2022-12-07
阅读 4 分钟
据统计,90% 以上的应用都在使用第三方软件库,这些软件大部分都是开源的。与此同时,有超过一半的全球 500 强公司都在使用存在漏洞的开源软件。这幅漫画生动的描述了一个大型应用软件的组件架构,它可能建立在一个极其脆弱的开源组件基础之上,这个组件可能是二十年前开发的,且可能已经没有人进行维护了。一旦该组件被...

开源软件安全与应对策略探讨 - Java 机密计算技术应用实践

2022-11-25
阅读 4 分钟
据统计,90% 以上的应用都在使用第三方软件库,这些软件大部分都是开源的。与此同时,有超过一半的全球 500 强公司都在使用存在漏洞的开源软件。这幅漫画生动的描述了一个大型应用软件的组件架构,它可能建立在一个极其脆弱的开源组件基础之上,这个组件可能是二十年前开发的,且可能已经没有人进行维护了。一旦该组件被...

Java 应用压测性能问题定位经验分享

2022-06-20
阅读 9 分钟
简介: 问题千千万,但只要修练了足够深厚的内功,形成一套属于自己的排查问题思路和打法,再加上一套支撑问题排查的工具,凭借已有的经验还有偶发到来的那一丝丝灵感,相信所有的问题都会迎刃而解。作者:凡勇

RocketMQ 5.0: 存储计算分离新思路

2022-05-30
阅读 6 分钟
简介:尽管消息中间件 RocketMQ 在阿里巴巴和开源社区已经走过了十多个年头,但在云原生浩浩荡荡的浪潮下,我们开始对 RocketMQ 的架构有了一些新的思考。本文我们将对其展开详细的讲解。
封面图

成本节省 50%,10 人团队使用函数计算开发 wolai 在线文档应用

2022-05-27
阅读 4 分钟
简介:人们关注 wolai 独特的功能和舒适的用户的用户体验,更关注实现这些背后的技术架构。在一个晴朗下午,我们邀请了 wolai.com 的创始人马锐拉,跟我们聊聊 wolai 背后的 Serverless 架构。
封面图

阿里巴巴在 Envoy Gateway 的演进历程浅析

2022-05-25
阅读 3 分钟
简介:最近阅读 《Envoy Gateway 来了》这篇文章,深感 Envoy 强大的可扩展性和基于 Envoy Gateway 带来的易用性,在 K8s 架构下,Envoy 重新定义了网关的定位和能力,被誉为云原生网关,甚至被称之为下一代网关。阿里巴巴早在2018年就启动了下一代网关的探索之路,本文将对这个探索历程做一个简单介绍。
封面图

记一次 JMeter 压测 HTTPS 性能问题

2022-05-25
阅读 7 分钟
简介:在使用 JMeter 压测时,发现同一后端服务,在单机 500 并发下,HTTP 和 HTTPS 协议压测 RT 差距非常大。同时观测后端服务各监控指标水位都很低,因此怀疑性能瓶颈在 JMeter 施压客户端。
封面图

提升Java字符串编码解码性能的技巧

2022-05-24
阅读 18 分钟
简介:常见的字符串编码有LATIN1、UTF-8、UTF-16、GB18030,他们各有各的特点,且之间的转换比较复杂。本文将为大家介绍提升Java字符串编码解码性能的技巧。
封面图

重磅发布 | Serverless 应用中心:Serverless 应用全生命周期管理平台

2022-05-20
阅读 4 分钟
简介:Serverless 应用中心,是阿里云 Serverless 应用全生命周期管理平台。通过 Serverless 应用中心,用户在部署应用之前无需进行额外的克隆、构建、打包和发布操作,即可快速部署和管理应用。Serverless 应用中心帮助用户快速联动云上的上下游服务,轻松沉淀最佳实践。
封面图

浅析微服务全链路灰度解决方案

2022-05-20
阅读 5 分钟
简介:帮助应用发布版本过程中更精细化,提高了发布过程中的稳定性。服务转移⾄请求链路上进行流量控制,有效保证了多个亲密关系的服务顺利安全发布以及服务多版本并⾏开发,进⼀步促进业务的快速发展。
封面图

企业实践|分布式系统可观测性之应用业务指标监控

2022-05-20
阅读 12 分钟
简介:本文主要讲述如何建立应用业务指标Metrics监控和如何实现精准告警。Metrics 可以翻译为度量或者指标,指的是对于一些关键信息以可聚合的、数值的形式做定期统计,并绘制出各种趋势图表。透过它,我们可以观察系统的状态与趋势。
封面图

解决微服务架构下流量有损问题的实践和探索

2022-05-19
阅读 6 分钟
简介:绝⼤多数的软件应⽤⽣产安全事故发⽣在应⽤上下线发布阶段,尽管通过遵守业界约定俗成的可灰度、可观测和可滚回的安全⽣产三板斧,可以最⼤限度的规避发布过程中由于应⽤⾃身代码问题对⽤户造成的影响。但对于⾼并发⼤流量情况下的短时间流量有损问题却仍然⽆法解决。因此,本文将围绕发布过程中如何解决流量有损...
封面图

三大特性,多个场景,Serverless 应用引擎 SAE 全面升级

2022-05-17
阅读 3 分钟
简介:Serverless 应用引擎 SAE 凭借着天然技术优势,已经帮助成千上万家企业实现容器和微服务技术转型。近日,SAE不仅进一步提供了全套微服务能力,更为传统 Job 和 PHP 用户提供了全新的,更高效、更经济且可平滑迁移的解决方案。
封面图

ACK One 构建应用系统的两地三中心容灾方案

2022-05-12
阅读 12 分钟
简介:本文侧重介绍了通过 ACK One 的多集群应用分发功能,可以帮助企业管理多集群环境,通过多集群主控示例提供的统一的应用下发入口,实现应用的多集群分发,差异化配置,工作流管理等分发策略。结合 GTM 全局流量管理,快速搭建管理两地三中心的应用容灾系统。
封面图

消息队列Kafka「检索组件」重磅上线!

2022-05-10
阅读 5 分钟
简介:本文对消息队列 Kafka「检索组件」进行详细介绍,首先通过对消息队列使用过程中的痛点问题进行介绍,然后针对痛点问题提出相应的解决办法,并对关键技术技术进行解读,旨在帮助大家对消息队列 Kafka「检索组件」的特点及使用方式更加熟悉,以期可以帮助大家更有效的解决在消息排查过程中遇到的痛点问题。
封面图

开源|优酷动态模板研发体系为分发提效30%

2022-05-06
阅读 6 分钟
简介:动态模板技术方案将客户端研发链路实现了串联,通过完备的工具化支撑体系,让开发者可以高效完成组件由原始设计稿到可运行代码的最短通路,本文将对研发体系中涉及到的核心模块就行介绍,希望对技术社区及广大开发者有一定帮助。
封面图