《Nacos 架构与原理》| Nacos社区首本电子书免费下载

本文涉及的产品
Serverless 应用引擎 SAE,800核*时 1600GiB*时
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
注册配置 MSE Nacos/ZooKeeper,118元/月
简介: 《Nacos 架构与原理》是 Nacos 电子书系列计划的第一步,并且这部分内容希望和社区共同创作,社区会推动 Nacos 电子书持续更新迭代,也欢迎更多小伙伴能加入 Nacos 社区一起创作。我们把电子书文档通过语雀公开文档像社区开放评论和更新,希望大家针对于内容共同进行校对,并且也欢迎进行投稿,把经验向社区更多个人和企业进行分享。

作者 | 于怀  Nacos 发起人 & Maintainer



一、Nacos 开源诞生


2018年 7 月 21 日,完成在 github 进行最后检查工作,凌晨 2 点 Nacos 在 github 上正式发布对外宣布 Nacos 正式开源,产品脱身于阿里巴巴在分布式领域多年的沉淀的经验,定位于一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。从那年夏天开始,Nacos 的社区也就正式成立了。经过 3 年多的时间,Nacos 已经成长为国内服务发现和配置管理首选的开源中间件。

1.jpeg

18年双 11,Nacos首次亮相


image.gif

二、Nacos 发展从初创期向社会基础设施发展

image.gif

初创期赢得广泛关注


Nacos的成长包括了三个阶段,第一个是初创期,Nacos 最早的关注也都来自于业内对于阿里巴巴分布式系统架构的好奇,当时 Nacos 赶在凌晨发布也正是兑现对外界的承诺。这个阶段正是大家的新奇给了 Nacos 一个表现的机会,相比之前开源比较成熟的 Zookeeper、Eureka、Consul等,在易用、稳定、实时、规模上都有不错的表现,赢得了大家后续的持续关注。


能力 Nacos Eureka Consul CoreDNS Zookeeper
一致性协议 CP+AP AP CP --- CP
健康检查 TCP/HTTP/MYSQL/Client Beat Client Beat TCP/HTTP/gRPC/Cmd --- Keep Alive
负载均衡策略 权重/metadata/Selector Ribbon Fabio RoundRobin
雪崩保护
自动注销实例 支持 支持 支持 不支持 支持
访问协议 HTTP/DNS/GRPC HTTP HTTP/DNS DNS TCP
监听支持 支持 支持 支持 不支持 支持
多数据中心 支持 支持 支持 不支持 不支持
跨注册中心同步 支持 不支持 支持 不支持 不支持
Spring Cloud集成 支持 支持 支持 不支持 支持
Dubbo集成 支持 不支持 支持 不支持 支持
K8s集成 支持 不支持 支持 支持 不支持


发展期产品快速迭代


第二阶段是发展期,随着持续的关注和产品表现,Nacos 吸引了用户,这个时间点 Nacos 经过快速迭代,在首次的 Nacos meetup 上发布了 Nacos1.0 GA版本,在这个时候其实已经有大量的用户开始在公司使用 Nacos 了,GA 版本增加了更多人对 Nacos 的兴趣和信心。目前 Nacos 已经经过了 40+ 版本的迭代,无缝支持Dubbo/Spring-Cloud/ 服务网格生态。根据《GitHub 2020 数字洞察报告》,在GitHub 2020 年中国项目活跃度 Top 20,Nacos 社区活跃度跻身前十。

2.png


Nacos社区共吸引了 200 多位优秀贡献者,积累了虎牙、好未来、小米等多家企业案例,Nacos 的 github 的star 数已经增长突破了 2w。


3.png


在近日开源中国发布的 2021 年度 OSC 中国开源项目评选中,Nacos 被评为云原生领域人气指数 Top5 的项目,国内企业已经普遍开始使用 Nacos 。

4.png

目前 Nacos 已经发布了 2.0 版本,并且已经有普遍的生产使用经验,在性能大幅度提升的前提下,稳步的进行技术迭代。Nacos3.0 的架构社区内已经开始逐步规划,预计不久也会跟大家见面。


全面应用期面向社会基础设施演进


正处于被大规模使用的 Nacos 的第三阶段是成为基础设施,面向于基础设施进行演进,帮助企业数字化转型,深度的拥抱各个领域内的场景,并且更深度的帮助企业解决问题。


面向这个阶段,我们决定在这个时候发布电子书,计划发布一系列围绕着 Nacos 原理和使用的电子书,《Nacos 架构与原理》是电子书系列的第一部分,用于向大家更好的解释 Nacos 的设计理念和架构原理,书中凝聚着社区以及用户的大量经验,目的帮助更多的人和更多企业,更快速的熟悉和使用 Nacos,解决在实际应用中出现的问题。该系列的电子书是以非盈利为目的,内容是有社区和用户共同完成,免费开放下载。


5.jpeg

电子书封面


2021年 12 月 21 日,Nacos 社区通过直播的方式,在线举办了《Nacos架构与原理》电子书在线发布会,直播覆盖 6w 开发者,内容上通俗易懂,从 Nacos 的起源开始讲起,让读者更了解 Nacos 发展历程,主体内容讲述 Nacos 的整体架构设计,以及服务发现和配置管理的内核设计原理,并且概述内核设计在可用性、安全性、易用性等方面思考,帮助读者能更快的了解 Nacos 一些设计的初衷。本书也深度介绍了 Nacos 生态圈以及和紧密融合生态,包含 Spring、Dubbo、Kubernetes和 Mesh 等主流生态。额外包含了企业级落地的场景下最佳实践,配置管理和服务发现场景下一些实用的限流和使用上的实践经验沉淀。


电子书免费下载地址:https://developer.aliyun.com/topic/download?id=8230image.gifimage.gifimage.gif


整本书目前免费开放下载,希望带来三方面的好处:


规范化:希望本书帮助个人和企业快速的规范使用 Nacos ,让 Nacos 不仅易用,还要按照自己的想法好用,规范使用。


分布式经验延展:既要知其然也要知其所以然,对个人在以后的架构设计中有重要的意义,帮助社区和用户更深入的了解 Nacos 的设计和思考,这个背后有阿里在微服务领域10几年沉淀的经验,并且也融合了其他公司场景的经验和最佳实践,帮助个人和企业成长。


帮助更多企业:通过学习电子书沉淀下来的内容,能进一步提升 Nacos 易用性,让更广泛的企业和用户使用 Nacos ,Nacos 要做到面向基础设施发展后要把架构和原理以及实践向更多人传播,并且参与其中。


三、社区共建内容


《Nacos 架构与原理》是 Nacos 电子书系列计划的第一步,并且这部分内容希望和社区共同创作,社区会推动 Nacos 电子书持续更新迭代,也欢迎更多小伙伴能加入 Nacos 社区一起创作。我们把电子书文档通过语雀公开文档像社区开放评论和更新,希望大家针对于内容共同进行校对,并且也欢迎进行投稿,把经验向社区更多个人和企业进行分享。


Nacos 电子书语雀共建库:https://www.yuque.com/nacos/ebook(PC端浏览、下载体验更好)


四、结尾


在此阶段要做的事情很多,开放电子书也是其中的一个原点,随着后续产品的更新和社区的壮大,我们会向用户发布更多内容。至此感谢所有参与 Nacos 的社区同学,也感谢所有使用 Nacos 的用户,也是你们让 Nacos 每个阶段走的更有意义。


点击下方“阅读原文”,免费下载电子书

https://developer.aliyun.com/topic/download?id=8230

相关文章
|
16天前
|
存储 缓存 Java
JAVA并发编程系列(11)线程池底层原理架构剖析
本文详细解析了Java线程池的核心参数及其意义,包括核心线程数量(corePoolSize)、最大线程数量(maximumPoolSize)、线程空闲时间(keepAliveTime)、任务存储队列(workQueue)、线程工厂(threadFactory)及拒绝策略(handler)。此外,还介绍了四种常见的线程池:可缓存线程池(newCachedThreadPool)、定时调度线程池(newScheduledThreadPool)、单线程池(newSingleThreadExecutor)及固定长度线程池(newFixedThreadPool)。
|
1月前
|
存储 SQL Cloud Native
Hologres 的架构设计与工作原理
【9月更文第1天】随着大数据时代的到来,实时分析和处理数据的需求日益增长。传统的数据仓库在处理大规模实时数据分析时逐渐显露出性能瓶颈。为了解决这些问题,阿里巴巴集团研发了一款名为 Hologres 的新型云原生交互式分析数据库。Hologres 能够支持 SQL 查询,并且能够实现实时的数据写入和查询,这使得它成为处理大规模实时数据的理想选择。
60 2
|
2月前
|
存储 分布式计算 Hadoop
ChunkServer 原理与架构详解
【8月更文第30天】在分布式文件系统中,ChunkServer 是一个重要的组件,负责存储文件系统中的数据块(chunks)。ChunkServer 的设计和实现对于确保数据的高可用性、一致性和持久性至关重要。本文将深入探讨 ChunkServer 的核心原理和内部架构设计,并通过代码示例来说明其实现细节。
38 1
|
2月前
|
数据采集 存储 Java
Flume Agent 的内部原理分析:深入探讨 Flume 的架构与实现机制
【8月更文挑战第24天】Apache Flume是一款专为大规模日志数据的收集、聚合及传输而设计的分布式、可靠且高可用系统。本文深入解析Flume Agent的核心机制并提供实际配置与使用示例。Flume Agent由三大组件构成:Source(数据源)、Channel(数据缓存)与Sink(数据目的地)。工作流程包括数据采集、暂存及传输。通过示例配置文件和Java代码片段展示了如何设置这些组件以实现日志数据的有效管理。Flume的强大功能与灵活性使其成为大数据处理及实时数据分析领域的优选工具。
73 1
|
2月前
|
消息中间件 存储 SQL
Kafka架构及其原理
Kafka架构及其原理
78 1
|
3月前
|
NoSQL Redis
Redis 主从复制架构配置及原理
Redis 主从复制架构配置及原理
53 5
|
2月前
|
存储 缓存 Java
Eureka原理与实践:深入探索微服务架构的核心组件
在微服务架构日益盛行的今天,服务之间的注册与发现成为了保证系统高可用性和灵活性的关键。Eureka,作为Netflix开源的服务注册与发现框架,凭借其简单、健壮的特性,在微服务领域占据了举足轻重的地位。本文将深入剖析Eureka的原理,并通过实践案例展示其在实际项目中的应用,以期为开发者提供一个高端、深入的视角。
|
2月前
|
安全 Nacos 数据安全/隐私保护
【技术干货】破解Nacos安全隐患:连接用户名与密码明文传输!掌握HTTPS、JWT与OAuth2.0加密秘籍,打造坚不可摧的微服务注册与配置中心!从原理到实践,全方位解析如何构建安全防护体系,让您从此告别数据泄露风险!
【8月更文挑战第15天】Nacos是一款广受好评的微服务注册与配置中心,但其连接用户名和密码的明文传输成为安全隐患。本文探讨加密策略提升安全性。首先介绍明文传输风险,随后对比三种加密方案:HTTPS简化数据保护;JWT令牌减少凭证传输,适配分布式环境;OAuth2.0增强安全,支持多授权模式。每种方案各有千秋,开发者需根据具体需求选择最佳实践,确保服务安全稳定运行。
122 0
|
2月前
|
消息中间件 缓存 Kafka
图解Kafka:架构设计、消息可靠、数据持久、高性能背后的底层原理
【8月更文挑战第15天】在构建高吞吐量和高可靠性的消息系统时,Apache Kafka 成为了众多开发者和企业的首选。其独特的架构设计、消息可靠传输机制、数据持久化策略以及高性能实现方式,使得 Kafka 能够在分布式系统中大放异彩。本文将通过图解的方式,深入解析 Kafka 的这些核心特性,帮助读者更好地理解和应用这一强大的消息中间件。
102 0
|
3月前
|
存储 算法 缓存
高并发架构设计三大利器:缓存、限流和降级问题之滑动窗口算法的原理是什么
高并发架构设计三大利器:缓存、限流和降级问题之滑动窗口算法的原理是什么