nacos安装配置和单机部署教程
首先说明:次教程是针对的nacos版本:1.3.2,不同的版本,可能略有不同。
Springcloudalibaba的版本与Springboot的版本与nacos版本需要对应
Nacos支持三种部署模式
- 单机模式 - 用于测试和单机试用。
- 集群模式 - 用于生产环境,确保高可用。
- 多集群模式 - 用于多数据中心场景。
单机部署:
1、首先去官网下载nacos
Releases · alibaba/nacos · GitHub
默认是集群启动的,可以修改为单机启动模式:
Windows启动脚本命令:
startup.cmd -s standalone
nacos初体验
父maven的版本依赖
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><modules><module>order-nacos</module><module>stock-nacos</module></modules><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.3.2.RELEASE</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>com.example.springcloudalibaba</groupId><artifactId>demo</artifactId><version>0.0.1-SNAPSHOT</version><name>springcloudalibabaDemo</name><description>Demo project for Spring springcloudalibaba</description><properties><java.version>1.8</java.version><spring.cloud.alibaba.version>2.2.5.RELEASE</spring.cloud.alibaba.version><sping.boot.version>2.3.2.RELEASE</sping.boot.version><spring.cloud.version>Hoxton.SR8</spring.cloud.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><dependencyManagement><!--springcloudalibaba的版本管理,通过dependency继承--><dependencies><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>${spring.cloud.alibaba.version}</version><type>pom</type><scope>import</scope></dependency><!--springboot的版本管理器--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>${sping.boot.version}</version><type>pom</type><scope>import</scope></dependency><!--springcloud的版本管理器--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring.cloud.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><!--打包的插件 --><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>
在每个子模块中引入nacos依赖
<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!--nacos 服务注册发现--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency></dependencies>
每个子模块中配置nacos,端口不同
server:port: 8021
#nacos配置
# 应用名称,nacos会将该名称当做服务名称
spring:application:name: stock-servicecloud:nacos:server-addr: 127.0.0.1:8848discovery:username: nacospassword: nacos #登录nacos可视化界面的用户名和密码namespace: public #命名空间
配置好nacos后会将服务自动注册
nacos的服务调用依赖负载均衡器,默认是ribbon。在消费者端配置restTemplate用于调用提供者端的服务接口
package per;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.client.RestTemplateBuilder;
import org.springframework.cloud.client.loadbalancer.LoadBalanced;
import org.springframework.context.annotation.Bean;
import org.springframework.web.client.RestTemplate;@SpringBootApplication
public class OrderApplication {public static void main(String[] args) {SpringApplication.run(OrderApplication.class,args);}@Bean@LoadBalanced // 负载均衡器注解,nacos的服务调用依赖于负载均衡(nacos无法将服务名称转化为服务地址,需要使用负载均衡器,默认使用轮询的方式)public RestTemplate restTemplate(RestTemplateBuilder builder){RestTemplate RestTemplate = builder.build();return RestTemplate;}
}
编写服务提供者
package per.pz.controller;import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
@RequestMapping("stock")
public class stockController {//读取配置文件中的端口@Value("${server.port}")String port;@RequestMapping("/reduct")public String reduct(){System.out.println("扣减库存");return "扣减库存111"+port;}
}
编写服务消费者
package per.pz.controller;import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;@RestController
@RequestMapping("order")
public class oderController {@AutowiredRestTemplate RestTemplate;@RequestMapping("/add")public String add(){System.out.println("下单成功");
// 服务间的通讯,没有使用微服务的方式
// 方法的缺点是在代码中写死服务地址,所以使用注册中心解决
// String msg = RestTemplate.getForObject("http://localhost:8021/stock/reduct",String.class);
// nacos服务调用,无需使用地址,使用服务名称即可String msg = RestTemplate.getForObject("http://stock-service/stock/reduct",String.class);return "下单成功111"+msg;}
}
nacos安装配置和单机部署教程相关推荐
- 手把手Android Studio全套安装+配置+真机部署教程【多图超详细】
目录 一.Android Studio安装教程 二.Android项目的创建 三.Android Studio下安装部署真机 Hello,你好呀,我是灰小猿,一个超会写bug的程序猿, 今天在这里和大 ...
- Nacos安装配置教程
Nacos安装配置教程_其他_大数据知识库 Nacos注册中心 Nacos是阿里巴巴的产品,现在是SpringCloud中的一个组件.相比Eureka功能更加丰富,在国内受欢迎程度较高. 官方入门手册 ...
- maven配置自动部署到服务器上,jenkins+svn+maven安装配置并自动化部署成功(超级详细)...
jenkins+svn+maven安装配置并自动化部署成功(超级详细) jenkins+svn+maven安装配置并自动化部署成功(超级详细) 简言 写这篇博客的原因是因为每次部署服务器的流程都是在做 ...
- mysql5.7.14操作命令_Mysql5.7.14安装配置方法操作图文教程(密码问题解决办法)
本篇文章主要涉及mysql5.7.14用以往的安装方法安装存在的密码登录不上,密码失效等问题的解决办法,希望可以帮到有同样困扰的朋友. 具体过程如下: 一.软件下载: 2.将下载的文件进行减压,作者的 ...
- IDEA中安装配置Jrebel热部署插件用法笔记
今天给大家介绍一下IDEA中安装配置Jrebel热部署插件用法,希望对大家能有所帮助! 1.Jrebel插件介绍 JRebel属于一款JAVA虚拟机插件,它可以让你的项目在不需要进行重新编译的情况下, ...
- linux 重启kettle服务_Linux下安装配置kettle的部署
原标题:Linux下安装配置kettle的部署 欢迎关注天善智能微信公众号,我们是专注于商业智能BI,大数据,数据分析领域的垂直社区. 对商业智能BI.大数据分析挖掘.机器学习,python,R等数据 ...
- 宝塔Linux面板的安装配置以及基本使用教程(超详细)
文章目录 一. 宝塔Linux面板的功能 二.宝塔Linux面板的安装 1. 访问宝塔官网,点击"立即免费安装" 2. 点击"安装脚本" 3. 我的服务器部署的 ...
- windows server 2012 服务器nacos 安装配置以及集群搭建
一.安装配置nacos 1.简介 nacos官网文档介绍:https://nacos.io/zh-cn/docs/what-is-nacos.html 2.下载安装 这里我使用1.3.2 地址:htt ...
- 1、solr包结构介绍,solrCore的安装配置,solr部署到Tomcat,多solrCore配置,配置中文分词器,界面功能介绍,Schema.xml的基本使用,数据导入
一.下载solr,下载地址是:http://archive.apache.org/dist/lucene/solr/,选择自己想要的solr的版本,本项目使用的版本是4.10.3 二.如果想下载Luc ...
最新文章
- 知乎热议!学完Python之后,我的编程能力竟然退化了!
- 部署 instance 到 OVS vlan100 - 每天5分钟玩转 OpenStack(138)
- 石墨烯区块链(4)API
- 【循序渐进学Python】14.数据库的支持
- 下拉框控件、列表控件、ComboBox
- 改革以来计算机应用发展总结,计算机应用基础总结论文
- Win7图片查看器打印不了图片怎么办
- 可变大小、颜色边框、样式的UISwitch
- gpu tensorflow 怎么看是否安装成功_安装keras模块以及使用GPU加速
- 《鸟哥Linux私房菜之基础篇》(第四版)学习笔记 —— 1、Linux是什么与如何学习
- swiper半圆形旋转
- 我喜欢用计算机300,我喜欢的人_作文300字_小学四年级作文_第一范文网
- Win10 屏幕保护突然不出现怎么办
- scrapy 爬虫 环境搭建入门(一)
- 一年365天每天进步 5‰或1%和每天退步 5‰或1%最后的结果分别是多少
- 微信小程序入门教程学习笔记
- HashMap 底层源码详解(jdk1.8)
- com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException异常产生的原因及解决办法
- 羊抗HBsAg偶联CdSe/ZnSe/ZnS量子点|抗乙肝表面抗原抗体偶联CdSe/ZnSe/ZnS量子点|羧基量子点偶联anti-HBsAg多克隆抗体
- UCAS - AI学院 - 自然语言处理专项课 - 第7讲 - 课程笔记
热门文章
- /” 和 “\” 有什么区别
- 淘宝电商数据分析-Python
- turtle设置背景图片
- 2020年 Top 6+ 最佳免费字体网站
- 毕业设计-基于机器自动驾驶目标检测研究-YOLO
- php获取数据编码,php 获取编码和转换编码
- 生日蛋糕(noi99)
- android开发--mp3播放器项目源代码(xml文件解析,.lrc,.mp3文件下载,同时显示歌词)
- c++二叉排序树的非递归插入与递归插入,递归之间不同写法的思考
- 基于用户的音乐推荐平台