6.Nacos

1.单机部署

  1.1 官网

https://nacos.io/zh-cn/index.html
https://github.com/alibaba/Nacos

  1.2.版本说明

https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E

  1.3.下载地址

https://github.com/alibaba/nacos/releases/tag/2.2.0

  1.4.安装

    解压安装包,直接运行bin目录下,默认账号密码都是nacos,命令运行成功后直接访问http://localhost:8848/nacos,结果页面

startup.cmd -m standalone

2.注册中心

    2.1 支付项目

    1) 父POM

    2.2.6.RELEASE以上版本集群报错,大概意思是找不到grpc的端口

 <dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>2.2.6.RELEASE</version><type>pom</type><scope>import</scope>
</dependency>

    2) POM

 <!--nacos-->
<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>

    3) YML

server:port: 9001spring:application:name: nacos-payment-providercloud:nacos:discovery:server-addr: localhost:8848 #配置Nacos地址

    4) 主程序

@EnableDiscoveryClient
@SpringBootApplication
public class PaymentMain9001 {public static void main(String[] args) {SpringApplication.run(PaymentMain9001.class,args);}
}

  2.2 订单项目

    1) POM

 <dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>

    2) YML

spring:application:name: order-nacos-servicecloud:nacos:discovery:server-addr: localhost:8848

    3) 主程序

@EnableDiscoveryClient
@SpringBootApplication
public class OrderNacosMain {public static void main(String[] args) {SpringApplication.run(OrderNacosMain.class, args);}
}

    4) 业务类

        ApplicationContextBean

@Configuration
public class ApplicationContextBean {@Bean@LoadBalancedpublic RestTemplate getRestTemplate(){return new RestTemplate();}
}

       OrderNacosController

@RestController
public class OrderController {@Resourceprivate RestTemplate restTemplate;private String serverURL = "http://nacos-payment-service";@GetMapping(value = "/payment/get/{id}")public String paymentInfo(@PathVariable("id") Long id){return restTemplate.getForObject(serverURL+"/payment/get/"+id,String.class);}}

3.配置中心

  3.1 POM

<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>

  3.2 YOM

     1) bootstrap.yml

        此文件不写,yaml格式无法加载

spring:profiles:active: devcloud:nacos:discovery:server-addr: localhost:8848config:server-addr: localhost:8848file-extension: yaml

    2) application.yml

server:port: 8001
spring:application:name: nacos-payment-service

  3.3 业务类


@RestController
@RefreshScope
public class ConfigClientController
{@Value("${config.info}")private String configInfo;@GetMapping("/config/info")public String getConfigInfo() {return configInfo;}
}

 通过 Spring Cloud 原生注解@RefreshScope  实现配置自动更新

  3.4 Nacos中添加配置信息

    1) 配置规格

${prefix}-${spring.profiles.active}.${file-extension}

    2) 说明

  • prefix 默认为 spring.application.name 的值,也可以通过配置项 spring.cloud.nacos.config.prefix来配置
  • spring.profiles.active 即为当前环境对应的 profile
  • file-exetension 为配置内容的数据格式,可以通过配置项 spring.cloud.nacos.config.file-extension 来配置,官网上说目前只支持 properties 和 yaml 类型,但我的版本只有properties 成功过

    3) 配置新增

4.配置mysql

  修改配置文件application.properties

spring.datasource.platform=mysql### Count of DB:
db.num=1### Connect URL of DB:
db.url.0=jdbc:mysql://192.168.2.18:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=root### Connection pool configuration: hikariCP
db.pool.config.connectionTimeout=30000
db.pool.config.validationTimeout=10000
db.pool.config.maximumPoolSize=20
db.pool.config.minimumIdle=2

启动

startup.cmd

5.集群配置

   修改配置配置文件cluster.conf

  1) 单机配置:

192.168.2.93:8840
192.168.2.93:8850
192.168.2.93:8860

  2) 多服务器

6.nginx

  6.1 配置

upstream nacosserver{server 192.168.2.18:8840;server 192.168.2.18:8850;server 192.168.2.18:8860;}server {listen       8023;server_name  localhost;#charset koi8-r;#access_log  logs/host.access.log  main;location / {root   html;index  index.html index.htm;			proxy_pass http://nacosserver;}
}

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

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

相关文章

小区跑腿服务

社区跑腿服务是指在社区范围内为居民提供各种便利的服务&#xff0c;包括购物代劳、快递代取、家政服务等。 这种服务的出现&#xff0c;满足了居民生活中诸多需求&#xff0c;受到了广泛的欢迎和认可。 首先&#xff0c;社区跑腿服务方便了居民的日常生活。 居民无需亲自前…

Unity 数据存储PlayerPrefs管理类

Unity 数据存储PlayerPrefs管理类 Unity 数据存储PlayerPrefs管理类实现存取实体类对象存储格式为Json格式Singleton.csInventoryEntity.csDataManager.cs用法如下 Unity 数据存储PlayerPrefs管理类 实现存取实体类对象 存储格式为Json格式 源码如下&#xff1a; Singleton…

克魔助手工具下载、注册和登录指南

下载安装克魔助手 摘要 本文介绍了如何下载安装克魔助手工具&#xff0c;以及注册和登录流程。通过简单的步骤&#xff0c;用户可以轻松获取并使用该工具&#xff0c;为后续的手机应用管理操作做好准备。 引言 克魔助手是一款免费的手机管理工具&#xff0c;通过该工具用户…

2023年第十六届山东省职业院校技能大赛高职组“应用软件系统开发”赛项样题

第十六届山东省职业院校技能大赛 高职组“应用软件系统开发”赛项样题 目录 一&#xff0e;竞赛须知 二&#xff0e;竞赛任务 模块一&#xff1a;系统需求分析&#xff08;25分&#xff09; 模块三&#xff1a;系统部署测试&#xff08;20分&#xff09; 需要竞赛源码或资…

Linux常用压缩和解压缩命令

在Linux系统中&#xff0c;有多种压缩和解压缩命令可供使用。以下是一些常用的压缩和解压缩命令的详细解释&#xff1a; 压缩命令 1. gzip 压缩文件&#xff1a; gzip file 这将压缩file并生成一个名为file.gz的压缩文件。 保留原始文件&#xff1a; gzip -c file > fil…

微服务的调用使用

在微服务架构中&#xff0c;不同的微服务之间通常通过网络进行调用和通信。常见的方式包括&#xff1a; 1. **HTTP/HTTPS调用&#xff1a;** 微服务可以通过HTTP或HTTPS协议进行调用。使用HTTP请求方法&#xff08;如GET、POST、PUT、DELETE&#xff09;来执行操作&#xff0c…

【AUTOSAR OS】了解AUTOSAR操作系统基本概念(1)--任务

目录 前言 一、任务Task 什么是“基础任务”和“扩展任务”?以及他们适用于什么场景?

文章解读与完整程序——《考虑“源-荷-储”协同互动的主动配电网优化调度研究》

摘要&#xff1a;伴随智能电网的建设和清洁能源的开发利用,配电网中的负荷类型呈现多元化发展,分布式电源、可控负荷、储能等资源的增加让单向潮流的传统配电网逐渐向双向潮流的主动配电网结构转变。在能源结构转变的同时,清洁能源自身的随机性和波动性给配电网带来了更大的调峰…

2023.12.25 关于 Redis 数据类型 Hash 常用命令、内部编码、应用场景

目录 Hash 数据类型 Hash 操作命令 HSET HGET HEXISTS HDEL HKEYS HVALS HGETALL HMGET HLEN HSETNX HINCRBY HINCRBYFLOAT HSTRLEN Hash 编码方式 理解什么是压缩 Hash 实际应用 Cache 缓存 Hash 数据类型 整体上来说 Redis 是键值对结构&#xff0c;其中 …

使用docker创建自己的Android编译容器

文章目录 背景步骤1.创建Dockerfile2.编写Dockerfile指令3.编译4.使用 背景 每次拿到新机器或者系统重装&#xff0c;最麻烦的就是各种环境配置&#xff0c;最近学习了一下docker的知识&#xff0c;用dockerfile创建一个Android编译容器&#xff0c;这样就不用每次都吭哧吭哧的…

python 通过(三维坐标)生成(三维曲面地形图)和(圆柱曲面地形图)

有需要源代码CSDN私信我 注意 python项目移植前要进行以下操作 1.python项目备份 2.生成requirements.txt的库文件 以pycharm为例&#xff0c;生成Python项目所需要的依赖库/包文档&#xff1a;requirements.txt_如何将pycharm项目安装的库文件导出为requirement.txt-CSDN博…

揭秘千巡翼X4卫星通讯无人机

揭秘千巡翼X4卫星通讯无人机 在无人机作业的时候&#xff0c;经常遇到这些异常场景&#xff0c;例如通信网络中断&#xff0c;强干扰&#xff0c;导致无人机无法与飞手通信等。而这些给无人机作业带来三大难题&#xff1a; 难题1&#xff0c;山区作业时通信中断&#xff0c;飞…

【前端框架】NPM概述及使用简介

什么是 NPM npm之于Node,就像pip之于Python,gem之于Ruby,composer之于PHP。 npm是Node官方提供的包管理工具,他已经成了Node包的标准发布平台,用于Node包的发布、传播、依赖控制。npm提供了命令行工具,使你可以方便地下载、安装、升级、删除包,也可以让你作为开发者发布…

教你如何为自己的个人网站选择SSL证书?

在互联网飞速发展的今天&#xff0c;各类互联网技术和工具日新月异&#xff0c;越来越多的人都可以低技术门槛来开办自己的独立博客、自媒体、个人站点等通过这些平台来发布自己想要公开的资讯&#xff0c;或者以此来提供相关的网络服务以及展示、销售自己的作品、商品。殊不知…

Cookie的详解使用(创建,获取,销毁)

文章目录 Cookie的详解使用&#xff08;创建&#xff0c;获取&#xff0c;销毁&#xff09;1、Cookie是什么2、cookie的常用方法3、cookie的构造和获取代码演示SetCookieServlet.javaGetCookieServlet.javaweb.xml运行结果如下 4、Cookie的销毁DestoryCookieServletweb.xml运行…

Swift 周报 第四十二期

文章目录 前言新闻和社区苹果 CEO 库克透露接班计划&#xff0c;希望继任者来自公司内部消息称苹果自研 5G 调制解调器开发再“难产”&#xff0c;将推迟到 2026 年 提案正在审查的提案 Swift论坛推荐博文话题讨论关于我们 前言 本期是 Swift 编辑组整理周报的第四十二期&…

pytest前置和后置操作

一、前置说明 pytest 提供了 setup 和 teardown 的功能,用于在测试执行前后进行一些必要的准备和清理工作,以确保测试的可控性和可维护性。 二、操作步骤 1、编写测试代码 def setup_module():print("\n===============Setup module")def teardown_module():pr…

Android10(SDK29)以后存储问题

如果你的targetSDK>29 1&#xff1a;使用系统给app分配的内部存储不需要存储权限&#xff1f; 例如&#xff1a;context.getExternalFilesDir(null)&#xff0c;随意使用 2&#xff1a;不能随意在外部存储创建文件/文件夹&#xff1b; 例如&#xff1a;Environment.getE…

maven工具的搭建以及使用

文章目录 &#x1f412;个人主页&#x1f3c5;JavaEE系列专栏&#x1f4d6;前言&#xff1a;&#x1f380;首先进行maven工具的搭建&#x1f993;1.[打开下载 maven 服务器官网](http://maven.apache.org)&#x1fa85;2.解压之后&#xff0c;配置环境变量&#x1f3e8;3.打开设…

[前端已死论]——“Java 已死、前端已凉”

一、为什么会出现“前端已死”的言论 信息溯源&#xff1a;“前端已死”的论调是如何传播的&#xff1f; - 知乎 前端已死的真相&#xff01; - 知乎 好几次看到有其他程序员说&#xff1a;“前端已死&#xff01;”&#xff0c;这句话虽然太极端了&#xff0c;但是我是比较…