文章更新时间:2023-09-21 11:11
组件简介
维护者 | alibaba 组织 | 许可证类型 | Apache-2.0 |
首次发布 | 2018年7月20日 | 最新发布时间 | 2023 年 6 月 20 日 |
GitHub Star | 27544 | GitHub Fork | 12229 |
依赖包 | 298 | 依赖存储库 | 1,970 |
Nacos是Dynamic Naming and Configuration Service的首字母简称,是一个更易于构建云原生应用的动态服务注册与发现、配置管理和服务管理平台。
官方仓库:https://github.com/alibaba/nacos
参考链接:
https://mvnrepository.com/artifact/com.alibaba.nacos/nacos-client
https://packages.ecosyste.ms/registries/repo1.maven.org/packages/com.alibaba.nacos:nacos-client
组件健康度
技术健康度 | 该组件是一个用于动态服务发现、配置和服务管理的平台,支持多种语言和框架,提供了丰富的功能和接口。该组件的代码质量较高,覆盖了大量的单元测试和集成测试。该组件的性能和稳定性也较好,能够支持大规模的分布式系统。 |
社区健康度 | 该组件是由阿里巴巴开源的一个项目,目前在 GitHub 上有超过 2.7 万颗星,12.2 千个 fork,238 个 issue 和 18 个 pull request。该组件的社区活跃度较高,有很多贡献者和用户参与到项目的开发和维护中。该组件也有专门的官方网站和文档,提供了详细的使用指南和案例。 |
更新和维护频率 | 该组件的更新和维护频率较高,最近一次发布的版本是 2.2.4,时间是 2023 年 6 月 20 日。该版本主要修复了一些内存泄漏和 OOM 的问题。该组件还有一个长期支持的版本是 1.4.6,时间是 2023 年 5 月 25 日。该版本主要修复了一个 RCE 漏洞。 |
兼容性 | 该组件的兼容性较好,支持多种操作系统和环境,如 Linux、Windows、MacOS、Docker、Kubernetes 等。该组件也支持多种语言和框架,如 Java、Spring Boot、Spring Cloud、Dubbo、Go 等。该组件还提供了多种协议和格式,如 HTTP、gRPC、Properties、YAML 等。 |
文档和支持 | 该组件的文档和支持较全面,有专门的官方网站和文档,提供了详细的使用指南和案例。该组件还有一个 GitHub 的仓库,提供了源码、问题反馈、贡献指南等。此外,该组件还有一个 Gitter 的聊天室,提供了实时的交流和咨询。 |
com.alibaba.nacos:nacos-client 该组件的健康度较高,是一个值得信赖和使用的开源项目。
参考链接:
https://github.com/alibaba/nacos/releases
https://github.com/alibaba/nacos
https://blog.csdn.net/weixin_72186894/article/details/131758366
组件许可证解读
Apache License 2.0 是一种开源软件许可证,广泛用于授权开源项目和代码。Apache License 2.0 允许用户自由地使用、修改和分发受许可的软件,而无需支付版权费用或专利费用。它鼓励开发者共享他们的代码,并保护用户的权利。以下是该许可证的一些重要特点:
- 代码使用权:用户可以自由地使用、复制、修改、合并、发布、分发和销售受许可软件。
- 版权声明:用户必须在所有源代码副本中保留原始的版权声明、许可证声明和免责声明。
- 修改代码:如果用户对代码进行了修改,需要清楚标明哪些部分发生了变化,并不能暗示原作者同意这些修改。
- 商标使用:Apache License 2.0 并未授予使用原软件的任何商标或名称的权利。
- 专利许可:该许可证授予了在使用、修改或分发受许可软件时相关专利的非独占许可。这意味着如果用户授权其他人使用该软件,相关专利许可也会传递给接收方。
- 再许可:用户可以将受 Apache License 2.0 许可的代码作为一部分整合到其它开源项目中,并使用不同的许可证授权整个项目。但是,需要在代码中显式地说明使用了 Apache License 2.0 许可的部分。
需要注意的是,Apache License 2.0 并不保证软件没有缺陷或不稳定性,使用该软件的风险由用户自行承担。
许可证原文链接:https://github.com/alibaba/nacos/blob/develop/LICENSE
组件漏洞版本及修复方案
漏洞编号 | 漏洞标题 | 漏洞等级 | 影响版本 | 修复版本 |
MPS-2021-34412 | Nacos 存在认证绕过漏洞 | 高危 | (-∞, 2.0.4) | 2.0.4 |
同类型可替代组件
- Consul:Consul 是一个用于服务发现和配置的工具,支持多种语言和框架,提供了分布式、高可用、一致性和安全性的特性。官网:https://www.consul.io/
- Zookeeper:Zookeeper 是一个用于维护配置信息、命名、同步和分组服务的中心化服务,支持多种语言和框架,提供了分布式、高性能、高可用和可扩展的特性。官网:https://zookeeper.apache.org/
- Eureka:Eureka 是一个基于 REST 的服务发现和注册的工具,主要用于 Spring Cloud 的微服务架构,提供了负载均衡、故障转移和自我保护的特性。官网:https://github.com/Netflix/eureka
- etcd:etcd 是一个分布式的键值存储,用于存储和同步配置信息,支持多种语言和框架,提供了一致性、高可用性和安全性的特性。官网:https://etcd.io/
- Keepalived:Keepalived 是一个用于实现高可用性的工具,支持多种协议和格式,提供了虚拟路由器冗余协议(VRRP)和健康检查的特性。官网:https://github.com/acassen/keepalived
组件SBOM
组件名称 | 版本 | 是否直接依赖 | 仓库 |
org.ow2.asm:asm | 6.0 | 否 | maven |
@alifd/validate | 1.2.3 | 否 | npm |
com.alipay.sofa:rpc-grpc-impl | 1.3.12 | 是 | maven |
tiny-warning | 1.0.3 | 否 | npm |
org.springframework.boot:spring-boot-actuator | 2.7.15 | 否 | maven |
io.grpc:grpc-protobuf | 1.50.2 | 是 | maven |
io.prometheus:simpleclient_tracer_otel | 0.15.0 | 否 | maven |
org.apache.httpcomponents:httpclient | 4.5.14 | 是 | maven |
org.jctools:jctools-core | 2.1.1 | 否 | maven |
com.alipay.sofa:hessian | 3.3.6 | 否 | maven |
com.alibaba.nacos:nacos-client | 2.3.0-SNAPSHOT | 是 | maven |
该SBOM清单仅展示部分内容
完整SBOM清单及检测报告:
https://www.murphysec.com/console/report/1704691130003406848/1704691130062127104?allow=1