赞
踩
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家:https://www.captainbed.cn/z
chatgpt体验地址
在项目开发过程中,随着项目不断扩大,也就是业务的不断增多,我们将采用集群,微服务的形式去降低配置,集群是指将一个项目部署到多个服务器当中,而微服务是指将业务拆分为一个一个服务去进行,那么我们想要去实现一个业务的时候,我们就需要调用多个服务,那么每个服务的调用,我们都需要知道它的URL,若是有成千上万的URL该如何维护呢?
这时就需要注册中心功能
其实我们可以把注册中心类比与通讯录
程序是数据结构和算法的组合,那么我们若是想要设计一个注册中心,我们就要从两个方面去考虑
我们类比一下通讯录,通讯录的每一个内容都包括姓名和电话,那么注册中心每一个保存的是服务名和服务信息,这个结构我们不难想象到map结构
则注册表的存储结构如下:
两层map结构: 在微服务系统中,为了避免单点故障,通常使用的是服务集群,一个服务名会对应多个服务实例
注册中心的使用主要分为两步
本文的核心内容就是具体的注册中心配置使用
zookeeper的安装
安装地址
将conf目录下的zoo_sample.cfg文件,复制一份,重命名为zoo.cfg
在步骤2的基础上,修改zoo.cfg配置文件中zookeeper的数据文件存储位置及添加zookeeper日志文件位置(方法查错),(数据日志配置需另加),具体步骤如下
dataDir=../tmp/data
dataLogDir=../tmp/log
# 添加此配置项
admin.serverPort=8888
zoo.cfg配置文件参数说明
# tickTime 客户端与服务器或者服务器与服务器之间维持心跳,也就是每个tickTime时间就会发送一次心跳。通过心跳不仅能够用来监听机器的工作状态,还可以通过心跳来控制Flower跟Leader的通信时间
# initLimit 集群中的follower服务器(F)与leader服务器(L)之间初始连接时能容忍的最多心跳数
#syncLimit 集群中flower服务器(F)跟leader(L)服务器之间的请求和答应最多能容忍的心跳数
# dataDir 用来存放myid信息跟一些版本,日志,跟服务器唯一的ID信息等。
# dataLogDir 存放事务日志的文件夹
# clientPort 客户端连接的接口,客户端连接zookeeper服务器的端口,zookeeper会监听这个端口,接收客户端的请求访问!这个端口默认是2181。
# maxClientCnxns 允许连接的客户端数目,0为不限制,通过IP来区分不同的客户端
- zkCli.cmd 验证是否安装成功
- zkServer.cmd 启动zookeeper服务
下载地址——prettyzoo
npm install
打包即可,注意要检查是否完成node.js的安装
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
server:
port: 10086
spring:
application:
name: eureka-server
eureka:
client:
service-url:
defaultZone: http://127.0.0.1:10086/eureka
@SpringBootApplication
@EnableEurekaServer
public class EurekaApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaApplication.class, args);
}
}
下载地址——Nacos下载
解压安装包
打开配置文件(nacos安装目录 -> conf -> application.properties)
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=123456
\### Default web context path:
server.servlet.contextPath=/nacos
\### Default web server port:
server.port=8848
执行sql文件(nacos安装目录 -> conf ->nacos-mysql.sql)
通过修改nacos.core.auth.enabled为true,就可以开启nacos认证。开启后客户端必须配置username、password。
在nacs安装目录下的bin目录中运行命令,默认是集群模式启动,单机模式启动需要指定模式。
Windows命令:startup.cmd -m standalone
Linux命令:sh startup.sh -m standalone
命令运行成功后直接访问:http://localhost:8848/nacos
默认账号密码都是:nacos
下载地址——Consul
wget https://releases.hashicorp.com/consul/1.3.0/consul_1.3.0_linux_amd64.zip
unzip consul_1.3.0_linux_amd64.zip
mv consul /usr
./consul
本文内容主要在单机模式下下载安装注册中心,更详细的内容我推荐在下面这本书中去获取
京东链接:购买地址
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/87852
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。