当前位置: 首页 > news >正文

node怎么做网站中国目前最好的搜索引擎

node怎么做网站,中国目前最好的搜索引擎,网站甚而模板,网站建设美化中期报告文章目录 1. 前言2. 部署服务端2.1 准备工作2.2 集群节点配置2.3 鉴权配置2.4 配置数据源2.5 配置 IP2.6 配置端口2.7 启动集群 3. 部署模式3.1 直连模式3.2 地址服务器模式3.2.1 地址服务器3.2.2 配置 3.3 VIP 模式(推荐)3.3.1 Nginx3.3.1 域名 1. 前言…

文章目录

    • 1. 前言
    • 2. 部署服务端
      • 2.1 准备工作
      • 2.2 集群节点配置
      • 2.3 鉴权配置
      • 2.4 配置数据源
      • 2.5 配置 IP
      • 2.6 配置端口
      • 2.7 启动集群
    • 3. 部署模式
      • 3.1 直连模式
      • 3.2 地址服务器模式
        • 3.2.1 地址服务器
        • 3.2.2 配置
      • 3.3 VIP 模式(推荐)
        • 3.3.1 Nginx
        • 3.3.1 域名

1. 前言

官方文档

在实际生产环境中,必须保证 Nacos 高可用,所以需要使用集群模式部署。

2. 部署服务端

2.1 准备工作

由于是演示,所以直接选择在本机进行集群部署,环境说明:

  • JDK 1.8+
  • Windows 10 企业版(生产环境推荐使用 Linux
  • Mysql 5.7(本地单机模式,生产环境推荐主从、集群)
  • 下载最新版的 Nacos (下载地址)

2.2 集群节点配置

解压安装包,将 /nacos/cluster.conf.example 集群配置文件重命名为 cluster.conf

在这里插入图片描述

cluster.conf 添加集群节点 IP3 个或 3 个以上 Nacos 节点才能构成集群,这里只是演示,所以在本地安装三个不同端口的节点:

#it is ip
#example
127.0.0.1:8848
127.0.0.1:8850
127.0.0.1:8852

2.3 鉴权配置

生产环境中,安全性也是很重要的,需要添加相关鉴权配置,参考Nacos 2.x 系列【5】开启鉴权文档,\nacos\conf\application.properties配置文件中添加鉴权:

### If turn on auth system:
nacos.core.auth.enabled=true
nacos.core.auth.system.type=nacos
### Since 1.4.1, worked when nacos.core.auth.enabled=true and nacos.core.auth.enable.userAgentAuthWhite=false.
### The two properties is the white list for auth and used by identity the request from other server.
# 实际使用时请务必更换为自定义的其他有效值
nacos.core.auth.server.identity.key=cluster
nacos.core.auth.server.identity.value=89012345678901234567890123456789
### worked when 
### The token expiration in seconds:
nacos.core.auth.plugin.nacos.token.cache.enable=false
nacos.core.auth.plugin.nacos.token.expire.seconds=18000
### The default token (Base64 String):
# 实际使用时请务必更换为自定义的其他有效值
nacos.core.auth.plugin.nacos.token.secret.key=SecretKey012345678901234567890123456789012345678901234567890123456789

2.4 配置数据源

Nacos 集群模式和单机模式一样,默认也只支持Derby(内嵌数据库)、MySQL 数据库,生产环境建议使用 MySQL 或其他类型数据库,并搭建高可用。

参考 Nacos 2.x 系列【6】持久化 ,\nacos\conf\application.properties配置文件中添加数据源:

#*************** Config Module Related Configurations ***************#
### If use MySQL as datasource:
### Deprecated configuration property, it is recommended to use `spring.sql.init.platform` replaced.
# spring.datasource.platform=mysql
spring.sql.init.platform=mysql### Count of DB:
db.num=1### Connect URL of DB:
db.url.0=jdbc:mysql://127.0.0.1:3306/pearl_nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=123456### Connection pool configuration: hikariCP
db.pool.config.connectionTimeout=30000
db.pool.config.validationTimeout=10000
db.pool.config.maximumPoolSize=20
db.pool.config.minimumIdle=2

2.5 配置 IP

application.properties 配置节点 IP ,防止多网卡环境读取 IP 不正确问题:

### Specify local server's IP:
nacos.inetutils.ip-address=127.0.0.1

2.6 配置端口

服务端和客户端之间需要进行通信,集群节点之间也需要通信,会涉及到一些通信端口,需要确保这些端口未被占用,并在防火墙中放行。

涉及的端口:

端口与主端口的偏移量描述
8848主端口,客户端、控制台及 OpenAPI 所使用的 HTTP 端口
98481000客户端 gRPC 请求服务端端口,用于客户端向服务端发起连接和请求
98491001服务端 gRPC 请求服务端端口,用于服务间同步等
7848-1000Jraft 请求服务端端口,用于处理服务端间的 Raft 相关请求

由于是本机环境安装集群,所以将上面修改过配置的安装包,复制为三份:

在这里插入图片描述

修改 nacos-8850 启动端口:

### Default web server port:
server.port=8850

修改 nacos-8852 启动端口:

### Default web server port:
server.port=8852

注意:集群节点需要确保 cluster.conf 、数据库配置是一样的

2.7 启动集群

点击启动脚本 startup.cmd ,查看启动控制台:

在这里插入图片描述
访问任意一个节点控制台,可以查看到使用的是集群模式,在节点列表可以查看到节点信息:

在这里插入图片描述

3. 部署模式

Nacos 常用的部署模式有以下几种:

  • 直连:直接连真实 IP
  • 地址服务器:查询地址进行连接
  • VIP 模式:使用虚拟IP

3.1 直连模式

直连模式中,客户端直接连接所有集群节点,是最简单的模式:

在这里插入图片描述

Spring Cloud 客户端中,spring.cloud.nacos.discovery.server-addr 配置所有集群节点:

spring:application:name: order-democloud:nacos:# 服务端用户名密码username: nacospassword: nacos# 服务发现discovery:# 命名空间namespace: 0faa0970-1179-4143-8aa2-cac3ee6b42ec# 服务端地址,默认:127.0.0.1:8848server-addr: 127.0.0.1:8848,127.0.0.1:8850,127.0.0.1:8852# 配置中心config:namespace: 0faa0970-1179-4143-8aa2-cac3ee6b42ecserver-addr: 127.0.0.1:8848,127.0.0.1:8850,127.0.0.1:8852

这种方式,简单却不够灵活,一旦 IP 发生变化,需要修改配置重启应用,生产环境不推荐。

3.2 地址服务器模式

地址服务器即查询地址的服务器,发送一个请求,返回一串地址列表。在阿里内部比较普及,也是阿里中间件使用最广的一种寻址模式。

在这里插入图片描述
地址服务器模式,只需要配置一个地址即可,该地址可以使用 DNS 域名,而且可以轮询感知地址的变化。相较于直连模式来说,可靠性、可伸缩性更好,如果生产环境有地址服务器,可以选择该模式。

3.2.1 地址服务器

com.alibaba.nacos.client.naming.core.ServerListManager 服务列表管理器类中,可以看到在初始化服务器地址列表时,会优先根据 endpoint 参数查询从地址服务器查询地址列表,并开启线程轮询查询最新的地址并更新:

    private void initServerAddr(NacosClientProperties properties) {// 获取 endpoint 参数this.endpoint = InitUtils.initEndpoint(properties);// endpoint 不为空if (StringUtils.isNotEmpty(this.endpoint)) {// this.serversFromEndpoint = this.getServerListFromEndpoint();// 多线程轮询感知地址变化,及时更新地址列表this.refreshServerListExecutor = new ScheduledThreadPoolExecutor(1, new NameThreadFactory("com.alibaba.nacos.client.naming.server.list.refresher"));this.refreshServerListExecutor.scheduleWithFixedDelay(this::refreshServerListIfNeed, 0L, this.refreshServerListInternal, TimeUnit.MILLISECONDS);} else {// endpoint 为空, serverAddr 参数获取服务器地址列表,多个使用逗号分割String serverListFromProps = properties.getProperty("serverAddr");if (StringUtils.isNotEmpty(serverListFromProps)) {this.serverList.addAll(Arrays.asList(serverListFromProps.split(",")));if (this.serverList.size() == 1) {this.nacosDomain = serverListFromProps;}}}}

getServerListFromEndpoint 获取服务器地址列表方法:

在这里插入图片描述
endpoint 参数只需要配置 IP 和端口即可,请求接口的固定格式为:

String urlString = "http://" + this.endpoint + "/nacos/serverlist";

这里直接创建一个 Spring Boot 工程,添加一个访问接口(请求路径必须为/nacos/serverlist),直接返回多个集群节点地址:

@Controller
public class AddressController {@RequestMapping("/nacos/serverlist")public ResponseEntity<String> serverlist() {return ResponseEntity.ok().header("Content-Type", "text/plain").body("127.0.0.1:8848\r\n" +"127.0.0.1:8850\r\n" +"127.0.0.1:8852\r\n");}
}
3.2.2 配置

spring.cloud.nacos.discovery.endpoint 参数用于配置地址服务器,示例:

spring:cloud:nacos:# 服务端用户名密码username: nacospassword: nacos# 服务发现discovery:# 命名空间namespace: 0faa0970-1179-4143-8aa2-cac3ee6b42ecendpoint: 127.0.0.1:8080# 配置中心config:namespace: 0faa0970-1179-4143-8aa2-cac3ee6b42ecendpoint: 127.0.0.1:8080

3.3 VIP 模式(推荐)

VIPVirtual IP ,虚拟 IP作为客户端请求的目标 IP 地址。该模式下帮助 Nacos Client 屏蔽了后端真实 IP ,主需要关注 VIP 即可, VIP 很少会发生变化,扩容时,只需要让 VIP 感知到即可。

Nacos 官网也推荐将所有服务列表放到一个 VIP 下面,然后挂到一个域名下:
在这里插入图片描述
VIP 模式又可以分为以下两种:

  • SLB(负载均衡)模式:使用内网SLB(不可暴露到公网,以免带来安全风险),下面挂真实的集群节点IP,客户端直连SLB即可,地址为SLBIP:port
  • 域名 + SLB模式(推荐):使用内网SLB,并将其 IP 映射为域名,客户端直连域名即可,地址为nacos.com:port,可读性好,而且换IP方便
3.3.1 Nginx

SLB 这里使用开源的 Nginx ,在官网下载解压,nginx.conf 中使用 upstream 配置节点地址:

	# Nacos 集群节点upstream nacos {server 127.0.0.1:8848;server 127.0.0.1:8850;server 127.0.0.1:8850;}

location 中配置转发:

		location / {proxy_pass http://nacos;}

注意:使用VIP/nginx请求时,需要配置成TCP转发,不能配置http2转发,否则连接会被nginx断开。

3.3.1 域名

这里直接在 hosts 中配置一个本机域名:

127.0.0.1 nacos.com

启动 Nginx 访问http://nacos.com/nacos/

在这里插入图片描述
客户端服务地址直接填写域名即可:

spring:cloud:nacos:# 服务端用户名密码username: nacospassword: nacos# 服务发现discovery:# 命名空间namespace: 0faa0970-1179-4143-8aa2-cac3ee6b42ec# 服务端地址,默认:127.0.0.1:8848server-addr: nacos.com# 配置中心config:namespace: 0faa0970-1179-4143-8aa2-cac3ee6b42ecserver-addr: nacos.com
http://www.tj-hxxt.cn/news/63240.html

相关文章:

  • 怎么网站设计石家庄seo公司
  • 17网站一起做网店普宁轻纺城温馨可以推广赚钱的软件
  • 网站链接设计个人发布信息免费推广平台
  • 免费网站后台模版西安市seo排名按天优化
  • 没有网站怎么做cps中国产品网
  • 重庆做网站letide怎么在百度上做公司网页
  • 宝安网站公司抖音推广平台
  • 炫酷的网站开发网站seo在线优化
  • 网站建设预招标全国疫情高峰感染高峰
  • 中国建设法律法规网官方网站百度官方网站网址是多少
  • 广东网站推广百度推广账户优化方案
  • 电商网站建设过程常德政府网站市民留言
  • 网站开发模式有什么网络推广电话
  • 郑州网站建设乙汉狮网络搜索引擎seo排名优化
  • 网站域名地址沈阳百度seo关键词排名优化软件
  • 道滘镇网站仿做seo研究院
  • 做微博网站好不好互联网论坛
  • 如何优化网站关键词楼市最新消息
  • 毕业论文代做网站可信吗站群优化公司
  • 网络营销课程主要讲什么内容海淀seo搜索引擎优化公司
  • 电商类网站怎么做 seo广告推广有哪些平台
  • 网站怎么做微信送红包活动百度下载安装2021最新版
  • 上海市工程建设标准化信息网站网站关键字优化
  • 广告设计专业课程抖音seo排名系统
  • 做视频素材怎么下载网站中国免费网站服务器下载
  • 枣强网站建设公司360竞价推广怎么做
  • wordpress 3.8.2北京seo实战培训班
  • wordpress职场博客百度seo指数查询
  • 青海网站建设公司哪家好十堰seo优化
  • 哈尔滨无障碍网站建设网络推广推广培训