Nacos 企业版如何提升读写性能和可观测性

概述

微服务引擎 MSE 发布 2.0.4.0 版本,新版本主要在性能和可观测能力升大幅提升,也加固了安全性。性能方面,基于 Dragonwell 进行构建,服务发现和配置性能提升达 40%以上;可观测方面,提供了服务注册的轨迹推送能力及丰富的可观测指标;安全性方面,新增支持了 RAM 管控策略能力,进一步提高了安全性。

MSE Nacos 性能提升 40%

Alibaba Dragonwell简介

Alibaba Dragonwell 作为 OpenJDK 的下游, 是阿里巴巴内部 OpenJDK 定制版 AJDK 的开源版本, AJDK 为在线电商,金融,物流做了结合业务场景的优化,运行在超大规模的,100,000+ 服务器的阿里巴巴数据中心。Alibaba Dragonwell与Java SE标准兼容 Alibaba Dragonwell 是 OpenJDK 的下游(friendly fork),使用了和 OpenJDK 一样的 licensing。Alibaba Dragonwell 在 OpenJDK 的基础上增强了多个功能,如 JWarmup、Java Flight Recorder、G1ElasticHeap、Wisp 等等。详见文末链接 1[1]
02

MSE Nacos 性能增强

MSE 联合 Dragonwell 针对 Nacos 进行性能调优发布 MSE Nacos2.0.4.0 版本,基于 Dragonwell Wisp 特性进行性能增强。Wisp 在 JVM 上提供了一种用户态的线程实现。开启 Wisp2 后,Java 线程不再简单地映射到内核级线程,而是对应到一个协程,JVM 在少量内核线上调度大量协程执行,以减少内核的调度开销,提供 web 服务器的性能。详见文末链接 2[2]

测试结果

使用 MSE 8c16g 3 节点配置,相同并发数情况下:

  • 发布服务 TPS 提升 40%

  • 发现服务 QPS 提升 55%

  • 发现服务 QPS 提升 55%

推送轨迹

为了提高问题可定位性,MSE 专业版本所有都支持推送轨迹能力,伴随着 Nacos 2.0.4.0 一起发布。推送轨迹的核心是把某个服务或配置的某次变更后服务端推送到客户端的轨迹按照时间线展示给用户并支持按照多种维度筛选,帮助用户排查问题。详细文档见文末 MSE Nacos 推送轨迹[3]

其他

除了前面说的 Dragonwell 性能增强、推送轨迹、安全性,2.0.4.0 版本还增加了其他能力:

  • 可观测性方面,增加了多项可观测指标,未来会基于这些指标配置监控大盘。
  • 在安全性方面,提供了 RAM 管控策略能力,进一步提升 MSE 安全性。RAM 资源目录管控策略是一种基于资源结构(资源夹或成员)的访问控制策略,可以统一管理资源目录各层级内资源访问的权限边界,建立企业整体访问控制原则或局部专用原则。管控策略只定义权限边界,并不真正授予权限,您还需要在某个成员中使用访问控制(RAM)设置权限后,相应身份才具备对资源的访问权限。例如,您可以通过使用管控策略来控制主账号下所有子账号的 MSE 访问权限,即使曾经对子账号授权过 MSE。详细工作原理见 RAM 管控策略[4]

相关链接

[1] 文末链接 1:

https://dragonwell-jdk.io/

[2] 文末链接 2:

https://github.com/alibaba/dragonwell8/wiki/Wisp-Documentation

[3] MSE Nacos 推送轨迹

https://help.aliyun.com/document_detail/433154.html

[4] RAM 管控策略:

https://help.aliyun.com/document_detail/178671.htm#concept-1936111

作者:正己

原文链接

本文为阿里云原创内容,未经允许不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/510462.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

「技术人生」第9篇:如何设定业务目标

写在前面 上一篇文章讲了如何构建业务大图,看到有评论说这和设定 OKR 差不多啊。希望其他读者不要被类似的看法带偏。业务大图是业务顶层设计,是战略目标、业务长期价值、业务维度拆分、业务组织设计、业务长期发展方向、关键业务战役、短期重点事项的综…

SPFA总结

动态逼近法:设立一个先进先出的队列用来保存待优化的结点,优化时每次取出队首结点u,并且用u点当前的最短路径估计值对离开u点所指向的结点v进行松弛操作,如果v点的最短路径估计值有所调整,且v点不在当前的队列中&#…

我们总结了 3 大使用建议,并首次公开 Nacos3.0 规划图

Nacos 是什么 Nacos 是 Dynamic Naming and Configuration-Service 的首字母简称,定位于一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。从 2018 年 7 月开始宣布开源以来,已经走过了第四个年头,在这四年里,备…

容斥原理 和 欧拉函数

在概率论中,对于概率空间中的事件A1,……,An,当n 2时容斥原理的公式为: 当n 3时,公式为: 一般地: 正数n的唯一素因子分解式p1^a1 * p2^a2 * p3^a3 ……* pk^ak 。求1,2…

递归函数时间复杂度分析

递归函数时间复杂度分析 (1) 递归执行过程 例子:求N!。 这是一个简单的"累乘"问题,用递归算法也能解决。 n! n * (n - 1)! n > 1 0! 1, 1! 1 n 0,1 因此,递归算法如下: Jav…

Dubbo 3 StateRouter:下一代微服务高效流量路由

目前的微服务架构中,通常包含服务消费者、服务提供者、注册中心、服务治理四元素,其中服务消费者会向注册中心获取服务提供者的地址列表,并根据路由策略选出需要调用的目标服务提供者地址列表,最后根据负载算法直接调用提供者。当…

首次全面解析云原生成熟度模型:解决企业「诊断难、规划难、选型难」问题

从“上云”到“云上”原生,云原生提供了最优用云路径,云原生的技术价值已被广泛认可。当前行业用户全面转型云原生已是大势所趋,用户侧云原生平台建设和应用云原生化改造进程正在加速。 然而,云原生复杂的技术栈和传统IT的历史包…

有效预警6要素:亿级调用量的阿里云弹性计算SRE实践

编者按:随着分布式系统和业务需求的飞速发展,监控告警在我们保障系统稳定性和事故快速恢复的全周期中都是至关重要的。9月3号,阿里云弹性计算管控SRE李成武老师(花名佐井),受「TakinTalks稳定性社区」邀请,在线分享日常…

SSE指令集入门

Intel公司的单指令多数据流式扩展(SSE,Streaming SIMD Extensions)技术能够有效增强CPU浮点运算的能力。Visual Studio .NET 2003提供了对SSE指令集的编程支持,从而允许用户在C代码中不用编写汇编代码就可直接使用SSE指令的功能。…

浮点运算是什么?

简单说就是小数的加减乘除运算。 在计算机的硬件中是没有小数点这个东西的。cpu能处理的东西都是整的。所以,小数就要用类似科学计数法的方式来表示。如1.234在计算机里面,可以理解成用1234和-3两个整数来表示1234*10的-3次方,这类数就叫浮点…

CISC与RISC的区别?

CISC是指复杂指令系统计算机(Complex Instruction Set Computer);RISC是指精简指令系统计算机(Reduced Instruction Set Computer)。这里的 计算机指令系统 指的是计算机的最低层的 机器指令 ,也就是CPU能够…

EMR 重磅发布智能运维诊断系统(EMR Doctor)——开源大数据平台运维利器

大数据运维的挑战—如何保证集群稳定与运行效率 企业级大数据集群通常拥有海量的数据存储、日常运算成干上万的计算任务,需要满足各类上层业务的计算需求。对于这类集群的运维往往充满着挑战:海量的数据、庞杂的组件以及组件之间复杂的依赖关系、对于时…

DP为王——动态规划法学习笔记

动态规划英文名Dynamic Programming,这个名称总让人有一种时曾相识的感觉,可能是因为容易和“线性规划”之类的概念搞混。 首先,适用动态规划的问题十分广泛和常见——地图路径搜索(深度优先、广度优先、A*)&#xff0…

从中间件到分布式数据库,PolarDB-X 的透明之路

PolarDB-X前身是淘宝内部使用的分库分表中间件TDDL(2007年,Java库的形态),早期以DRDS(2012年开始研发,2014年上线,分库分表中间件MySQL Proxy的形态)的品牌在阿里云上提供服务&#…

阿里云EMAS 移动测试,帮您快速掌握移动端兼容性测试技巧

一、兼容性测试可以查到哪些问题 界面适配问题,确定是否能正常安装、启动。各个页面潜在的崩溃、无响应等问题。应用性能问题,例如启动时间、页面加载时间、功耗等。 二、阿里云兼容性测试工具的功能优势 提供在线录制功能,可视化录制出功能…

零信任策略下K8s安全监控最佳实践(K+)

云原生架构新风险与需求概述 安全风险概述 传统的网络安全架构理念是基于边界的安全架构,企业构建网络安全体系时,首先要做的是寻找安全边界,把网络划分为外网、内网等不同的区域,然后在边界上部署防火墙、入侵检测、WAF等产品。…

ATC‘22顶会论文RunD:高密高并发的轻量级 Serverless 安全容器运行时

编者按:目前的安全容器软件栈 — 包括 host 操作系统中的 cgroup、guest 操作系统和用于函数工作负载的容器 rootfs,都会导致低部署密度和在低并发能力。为此,RunD 作为一种轻量级安全容器运行时,提出了 host-to-guest 的全栈优化…

getline函数

getline(istream &in, string &s) 从输入流读入一行到string s •功能:–从输入流中读入字符,存到string变量–直到出现以下情况为止:•读入了文件结束标志•读到一个新行•达到字符串的最大长度–如果getline…

Dubbo Mesh:从服务框架到统一服务控制平台

Apache Dubbo 是一款 RPC 服务开发框架,用于解决微服务架构下的服务治理与通信问题,官方提供了 Java、Golang 等多语言 SDK 实现。使用 Dubbo 开发的微服务原生具备相互之间的远程地址发现与通信能力, 利用 Dubbo 提供的丰富服务治理特性&…

struct和typedef struct彻底明白了

struct和typedef struct 分三块来讲述:   1 首先://注意在C和C里不同     在C中定义一个结构体类型要用typedef:     typedef struct Student     {     int a;     }Stu;     于是在声明变量的时候就可:Stu stu1;…