【保姆级教程】Windows11下go-zero的etcd安装与初步使用

【Go-Zero】Windows11下etcd的安装与初步使用

大家好 我是寸铁👊
总结了一篇Windows11下etcd的安装与初步使用的文章✨
喜欢的小伙伴可以点点关注 💝

前言:
在使用etcd 前,我们需要了解一下etcd 是什么,为什么使用etcd 来进行微服务项目的开发。

etcd介绍

etcd(读作 et-see-dee)是一种开源的分布式统一键值存储,用于分布式系统或计算机集群共享配置、服务发现和调度协调etcd 有助于促进更加安全的自动更新协调向主机调度的工作,并帮助设置容器的覆盖网络

etcd 是许多其他项目的核心组件。最值得注意的是,它是Kubernetes首要数据存储,也是容器编排的实际标准系统。使用 etcd, 云原生应用可以保持更为一致的运行时间,而且在个别服务器发生故障时也能正常工作。应用从etcd读取数据并写入到其中;通过分散配置数据,为节点配置提供冗余和弹性

从简单的 Web 应用程序Kubernetes 集群,任何复杂的应用程序都可以从 etcd读取数据或将数据写入 etcd

etcd 采用Go语言编写,它具有出色的跨平台支持,很小二进制文件和强大的社区。 etcd 机器之间的通信通过 Raft 算法处理。


使用场景

etcd 比较多的应用场景是用于服务注册与发现,除此之外,也可以用于键值对存储,应用程序可以读取和写入 etcd 中的数据

一个简单的用例是将数据库连接详细信息或功能标志存储在 etcd 中作为键值对。 可以观察这些值,使我们的应用在更改时可以重新配置信息。高级用法是利用 etcd 的一致性保证来实施数据库 leader 选举或在一组 follower 之间执行分布式锁定


总结

etcd 是一个高度一致的分布式键值存储,它提供了一种可靠的方式来存储需要由分布式系统机器集群访问的数据。它可以优雅地处理网络分区期间leader 选举,以应对机器的故障,即使是在 leader 节点发生故障时

注意:这里的可靠性要比redis更加可靠,这也是我们选择使用etcd作为分布式键值存储的原因。此外,在更改配置文件时,如修改地址等等。需要重新启动项目,而etcd可以帮助我们自动更新。


初步认识etcd 后,下面来看一下怎么安装etcd ?


etcd安装

Windows安装etcd 非常简单,只需要下载安装包即可。

这里由于是简单了解和使用,所以不进行配置环境变量。
需要的话,自行配置一下即可。

Step1

安装地址点我

接着找到Assets , 之后点击Windows版本的安装包,如下:
在这里插入图片描述


Step2

进入对应安装etcd的目录
在这里插入图片描述


接着,在地址导航框输入cmd

在这里插入图片描述


进入到etcd 的命令行窗口
在这里插入图片描述


etcd的使用

etcd 的使用和redis 很类似,基本上就是一些设置键和获取键的操作。


报错排查

一开始使用etcdctl 的命令,报错如下:
这是因为127.0.0.1:2379 这个端口的连接不上,为什么连接不上,很明显,我们一开始只是开了一个窗口,也就是客户端 , 还需要开启一个服务端

在这里插入图片描述


由于没有配置环境变量,所以这里的使用需要启动两个cmd 窗口,一个用于做etcd客户端,一个用于做etcd服务端

etcd服务端

直接在命令行输入etcd 即可

在这里插入图片描述


etcd客户端

接着,再开启一个客户端

在这里插入图片描述

接着,就可以愉快地在客户端中操作键值对了~

操作键值对的方式和redis类似,也是通过命令进行操作的。

put命令

语法形如redisredisset ,这里使用get

etcdl put 键(key)(value)

运行结果如下:
在这里插入图片描述

要验证是否put 成功,或者如何取出来,就要用到接下来的命令了!

get命令

redis 类似,也是使用get 操作

etcdl get 键(key) 

运行结果如下:

在这里插入图片描述

取出的结果是:
key
value


进一步,如果只是想取出值,可以使用如下指令:

etcdl get name --print-value-only

注意:print前是两个-

运行结果如下:
在这里插入图片描述


要想同时获取前缀相同的键的值,可以使用前缀选项。

  • 先把值put 进去
    在这里插入图片描述
  • 再使用前缀选项批量获取相同前缀的值

命令如下:

etcdctl get rpc --prefix

运行结果如下:
在这里插入图片描述


更多用法如下:
在这里插入图片描述


watch命令

使用watch 机制,监听某个的信息变化!

redis 类似

命令如下

etcdctl watch rpc.user

运行如果如下:

现在处于监听状态,还需要开启一个去执行变化过程!

在这里插入图片描述


再开启一个命令行窗口去监听键的变化

修改键所对应的值

在这里插入图片描述


watch 的窗口实时监听到地址发生的变化!
在这里插入图片描述

del命令

del 删除某个键

命令如下:

etcdctl del 键(key)

运行结果如下:
在这里插入图片描述

返回1 则表明删除成功!

结语

更进一步的对etcd 的使用,还需要结合具体的微服务项目去开展,在做项目的使用,加深对etcd 高可靠性和服务注册与发现的理解。

看到这里的小伙伴,恭喜你又掌握了一个技能👊
希望大家能取得胜利,坚持就是胜利💪
我是寸铁!我们下期再见💕

往期好文💕

【保姆级教程】Windows11安装go-zero代码生成工具goctl、protoc、go-zero

【Go面试向】defer与time.sleep初探

【Go面试向】defer与return的执行顺序初探

【Go面试向】Go程序的执行顺序

【Go面试向】rune和byte类型的认识与使用

【Go面试向】实现map稳定的有序遍历的方式

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

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

相关文章

日本大带宽服务器速度和性能评测的关系

在互联网的快速发展中,大带宽服务器在提供高速、稳定的数据传输方面起着至关重要的作用。特别是在日本,由于其先进的网络基础设施和庞大的互联网用户群体,大带宽服务器的需求日益增长。那么,日本大带宽服务器的速度和性能评测有何…

机器学习数学基础

机器学习基础 1、标量、向量、矩阵、张量2、概率函数、概率分布、概率密度、分布函数3、向量的线性相关性4、最大似然估计5、正态分布(高斯分布)6、向量的外积(叉积)7、向量的内积(点积)8、超平面(H)1、标量、向量、矩阵、张量 标量、向量、矩阵和张量是线性代数中不同…

探索工业以太网交换机的新纪元:满足多元化市场需求

在当今数字化的时代,工业以太网交换机作为信息网络的核心枢纽,扮演着至关重要的角色。它们连接着各种设备,实现数据的快速传输与稳定交换,为工业自动化、物联网和智能制造提供了可靠的基础设施。随着数字化转型的不断深入&#xf…

VBoxManage 命令行使用

VBoxManage: 序号命令作用1VBoxManage list vms# 查看当前所有虚拟机2VBoxManage list runningvms # 查看当前正在运行的虚拟机3VBoxManage startvm 虚拟机名 --type gui # 启动虚拟机4VBoxManage startvm 虚拟机名 --type headless# 无前端图形界面方式启动虚拟机…

【Linux取经路】进程控制——进程等待

文章目录 一、进程创建1.1 初识 fork 函数1.2 fork 函数返回值1.3 写时拷贝1.4 fork 的常规用法1.5 fork 调用失败的原因1.6 创建一批进程 二、进程终止2.1 进程退出场景2.2 strerror函数2.3 errno全局变量2.4 程序异常2.5 进程常见退出方法2.6 exit 函数2.7 _exit 函数和 exit…

新春送福,暖心探访

春节将至,岁寒情暖。为了深入了解辖区困境老人的生活状况和真实需求,让困境老人感受到党和政府的关爱与温暖,营造幸福和谐的节日气氛。2024年1月31日下午,在长沙市湘江新区民政与社会保障局的支持下,学联社区携手长沙市…

Https加密超文本传输协议的运用

一、https的相关知识 1.1 https的简介 HTTPS (全称:Hypertext Transfer Protocol Secure ),是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性 。HTTPS 在HTTP 的基础下加…

基于微服务的高考志愿智能辅助决策系统(附源码)

目录 一.引言 1、编写目的 2、系统功能概述 二.功能分析 三.微服务模块 1、微服务用户相关模块 (1)用户注册 (2)用户登录 (3)用户信息管理 (4)用户操作 2、微服务文件云存…

React Router 完美教程(下)

我们书接上回,继续我们的React Router 路由之路: 我们到目前为止都没有用到 state、useEffect、redux等状态管理器。但也达到了我们的设计目的。 注意,action 返回的结果 可以在组件中使用 useActionData() 来获取。就像 useLoaderData() 的使…

MD5算法:高效安全的数据完整性保障

摘要:在数字世界中,确保数据完整性和安全性至关重要。消息摘要算法就是一种用于实现这一目标的常用技术。其中,Message Digest Algorithm 5(MD5)算法因其高效性和安全性而受到广泛关注。本文将详细介绍MD5算法的优缺点…

web应用课——(第四讲:中期项目——拳皇)

代码AC Git地址:拳皇——AC Git链接

87 SpringMVC 上传文件在业务代码中拿不到文件数据

前言 呵呵 最近在整理文件上传部分的东西的时候, 发现了一个问题 文件上传部分 有一些基础的问题, 可以参见 29 SpringMVC 上传文件未生成临时文件, 我们这里上传的文件的大小是 大于 sizeThreshold 的 SpringMVC 上传文件的时候会生成一个临时文件, 我想直接使用这个临时…

【开源】SpringBoot框架开发海南旅游景点推荐系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 用户端2.2 管理员端 三、系统展示四、核心代码4.1 随机景点推荐4.2 景点评价4.3 协同推荐算法4.4 网站登录4.5 查询景点美食 五、免责说明 一、摘要 1.1 项目介绍 基于VueSpringBootMySQL的海南旅游推荐系统&#xff…

【制作100个unity游戏之23】实现类似七日杀、森林一样的生存游戏5(附项目源码)

本节最终效果演示 文章目录 本节最终效果演示系列目录前言修改鼠标光标和中心提示图鼠标光标素材修改默认鼠标光标修改中心提示图 拾取提示弹窗简单绘制UI拾取弹窗功能 源码完结 系列目录 前言 欢迎来到【制作100个Unity游戏】系列!本系列将引导您一步步学习如何使…

canvas的一些基础

在 Canvas 中,基本图形有两种:直线图形和曲线图形 直线图形:直线、矩形(描边矩形和填充矩形)、多边形 曲线图形:曲线和弧线(弧线是圆的一部分,曲线则不一定,弧线上的每个点都具有相同的曲率&…

十分钟快速上手Spring Boot与微信小程序API接口的调用,快速开发小程序后端服务

1.1 微信小程序API接口介绍 微信小程序API接口是连接小程序前端与后端服务器的桥梁,它提供了丰富的功能接口,包括用户信息、支付、模板消息、数据存储等。这些API接口能够满足开发者在小程序中实现各种复杂业务逻辑的需求。 用户信息接口 用户信息接口…

计算机服务器中了locked勒索病毒怎么办,locked勒索病毒解密流程

随着网络技术在企业生产生活中的应用,越来越多的企业开始走向数字化办公模式,极大地提升了企业办公与生产效率,而其中的企业数据起到了关键性作用,企业的数据安全是众多企业关心的话题。但网络是一把双刃剑,近期&#…

【C++】开源:Windows图形库EasyX配置与使用

😏★,:.☆( ̄▽ ̄)/$:.★ 😏 这篇文章主要介绍Windows图形库EasyX配置与使用。 无专精则不能成,无涉猎则不能通。——梁启超 欢迎来到我的博客,一起学习,共同进步。 喜欢的朋友可以关注一下&#…

【 USRP 相控阵】ADAR1000 : 4 通道 X 频段和 Ku 频段波束形成器,8 GHz 至 16 GHz

介绍 ADAR1000 是一款适用于相控阵的 4 通道 X 和 Ku 频段波束形成内核芯片。此器件在接收和发射模式之间以半双工状态工作。在接收模式下,输入信号通过四个接收通道后在公共 RF_IO 引脚上组合在一起。在发射模式下,RF_IO 输入信号拆分后通过四个发射通…

智慧食堂预点餐管理系统-计算机毕业设计源码48846

摘要 随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,餐饮业当然也不例外。智慧食堂预点餐管理系统小程序是以实际运用为开发背景,运用软件工程原理和开发方法&…