内蒙古建设厅网站,建设工程教育网论坛官网,专业网页设计制作价格,网站建设推广实训总结系列文章目录
JavaSE基础知识、数据类型学习万年历项目代码逻辑训练习题代码逻辑训练习题方法、数组学习图书管理系统项目面向对象编程#xff1a;封装、继承、多态学习封装继承多态习题常用类、包装类、异常处理机制学习集合学习IO流、多线程学习仓库管理系统JavaSE项目员工…系列文章目录
JavaSE基础知识、数据类型学习万年历项目代码逻辑训练习题代码逻辑训练习题方法、数组学习图书管理系统项目面向对象编程封装、继承、多态学习封装继承多态习题常用类、包装类、异常处理机制学习集合学习IO流、多线程学习仓库管理系统JavaSE项目员工管理系统、多表查询、反射实现DBHelper学习DML、DDL、数据库对象学习JavaWeb网络编程、各种标签、CSS学习ECMAScript、BOM学习DOM、jQuery学习Servlet、JSP、Cookie、Ajax学习融资管理系统JavaWeb项目框架MyBatis框架学习逆向工程、Spring框架IOC、AOP学习SpringMVC框架学习SpringBoot框架学习招聘网站框架项目Vue介绍、窗体内操作、窗体间操作学习Vue路由配置、网络请求访问框架项目、element组件介绍学习标准管理系统Vue项目微服务Linux安装、Nginx反向代理、负载均衡学习Docker学习Jenkins学习Nexus学习Spring Security学习RabbitMQ学习Redis学习MongoDB学习MongoDB学习Nacos学习 文章目录 系列文章目录前言一、Nacos介绍1. Spring Cloud介绍2. 微服务和微服务架构介绍3. Nacos介绍 二、Nacos安装1. 拉取Docker镜像2. 安装Nacos 三、Nacos整合SpringBoot1. 注册中心1.1 创建Maven项目1.2 添加配置信息1.3 编写bootstrap.yml配置文件1.4 编写application.properties配置文件1.5 编写SpringBootMain启动类1.6 访问Nacos 2. 配置中心2.1 配置application.yml文件2.2 配置UserController文件2.3 访问网站2.4 添加依赖2.5 创建命名空间2.6 配置中心添加配置文件2.7 修改bootstrap.yml配置文件2.8 再次访问页面 总结 前言
本文我们要讲述 Nacos学习 在下攸攸太上这是在地球上所用假身的所用假名 一、Nacos介绍
1. Spring Cloud介绍
Spring Cloud是一个基于Spring Boot的分布式系统开发工具包它整合了各种成熟的服务框架如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等。通过Spring Boot的简便开发风格Spring Cloud简化了分布式系统基础设施的开发使得分布式系统的部署和维护变得简单易懂。它并不是重复造轮子而是将各家公司开发的经过实际考验的服务框架进行整合封装提供一键启动和部署的便利性。总之Spring Cloud为开发者提供了一套简单易用的工具包用于构建高效、可靠的分布式系统。
2. 微服务和微服务架构介绍
微服务是一种软件架构风格通过将原本庞大的单体应用拆分成多个小而独立的服务来构建系统。每个微服务都运行在自己的进程中并通过轻量级的通信机制进行相互协作。微服务之间可以独立开发、部署和扩展每个服务都可以使用不同的技术栈和数据库。通过将系统拆分成多个小的服务微服务架构可以提供以下优势
灵活性和可伸缩性由于每个微服务都是独立的开发团队可以根据需要独立开发、测试、部署和扩展每个服务。这使得系统更加灵活并能够根据需求快速进行横向扩展以应对高并发和大流量的需求。
独立部署和快速迭代微服务架构允许团队独立部署和更新每个微服务而无需影响整个系统。这意味着团队可以更快地推出新功能和修复bug快速响应市场需求。
技术多样性每个微服务都可以使用适合其需求的技术栈和数据库。这使得团队能够选择最适合每个服务的技术从而提高开发效率和系统性能。
容错性和可伸缩性由于每个微服务都是独立的一个服务的故障不会影响整个系统的稳定性。此外系统可以根据负载需求对每个服务进行独立的扩展以确保高可用性和高性能。
总之微服务架构通过将系统拆分成多个小的、独立的服务提供了灵活性、可伸缩性和快速迭代的优势。它使得团队能够更加敏捷地开发和维护系统并且能够更好地应对高并发和大规模应用的需求。
3. Nacos介绍
Nacos是阿里巴巴开源的一个动态服务发现和配置管理平台它是Spring Cloud Alibaba的核心组件之一。Nacos具有两个核心功能注册中心和配置中心。
作为注册中心Nacos可以实现服务的注册和发现。服务提供者在启动时将自己注册到Nacos上服务消费者可以通过查询Nacos获取可用的服务实例列表并进行负载均衡和调用。Nacos提供了丰富的服务发现功能支持基于DNS和HTTP的服务发现并支持多种服务注册方式如主动注册和配置文件注册等。它还支持健康检查和自动摘除故障节点以保证系统的稳定性和可靠性。
作为配置中心Nacos可以集中管理系统的配置信息。开发团队可以将应用的配置文件存储在Nacos中并通过Nacos的配置接口获取配置信息。Nacos支持动态配置刷新可以在配置变更时自动通知应用程序进行更新无需重启应用。此外Nacos还提供了配置的分组、命名空间和灰度发布等功能方便进行配置的管理和控制。
除了注册中心和配置中心的功能Nacos还具有其他特性如服务路由和流量管理、服务熔断和降级、动态DNS服务等。它可以与Spring Cloud和Spring Boot无缝集成并提供了便捷的API和控制台界面来管理和监控服务。
总结起来Nacos是一个功能强大的注册中心和配置中心它为微服务架构提供了服务发现和配置管理的核心功能。通过使用Nacos开发团队可以轻松实现服务的注册和发现并统一管理系统的配置信息提高开发效率和系统的可维护性。
二、Nacos安装
1. 拉取Docker镜像
docker pull nacos/nacos-server:1.3.12. 安装Nacos
mkdir -p /usr/local/docker/nacos/init.d /usr/local/docker/nacos/logsdocker run -d \
-p 8848:8848 \
-e MODEstandalone \
-e PREFER_HOST_NAMEhostname \
-v /usr/local/docker/nacos/init.d:/home/nacos/init.d \
-v /usr/local/docker/nacos/logs:/home/nacos/logs \
--name nacos nacos/nacos-server:1.3.1三、Nacos整合SpringBoot
1. 注册中心
1.1 创建Maven项目 1.2 添加配置信息 parentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.0.7.RELEASE/version/parentpropertiesjava.version1.8/java.versionproject.build.sourceEncodingUTF-8/project.build.sourceEncodingproject.reporting.outputEncodingUTF-8/project.reporting.outputEncodingspring-boot.version2.6.13/spring-boot.versionjwt.version0.7.0/jwt.versionfastjson.version1.2.60/fastjson.versionspring-cloud-alibaba.version2.0.3.RELEASE/spring-cloud-alibaba.versionspring-cloud.versionFinchley.SR2/spring-cloud.version/propertiesdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopecompile/scope/dependencydependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactId/dependency!--json--dependencygroupIdcom.alibaba/groupIdartifactIdfastjson/artifactIdversion${fastjson.version}/versionscopecompile/scope/dependencydependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-nacos-discovery/artifactId/dependency/dependenciesdependencyManagementdependenciesdependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-dependencies/artifactIdversion${spring-cloud.version}/versiontypepom/typescopeimport/scope/dependencydependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-alibaba-dependencies/artifactIdversion${spring-cloud-alibaba.version}/versiontypepom/typescopeimport/scope/dependency/dependencies/dependencyManagementbuildpluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactIdconfigurationclassifierexec/classifier/configuration/plugin/plugins/build1.3 编写bootstrap.yml配置文件
spring:cloud:nacos:discovery:server-addr: 192.168.108.186:88481.4 编写application.properties配置文件
spring.application.namenacos011.5 编写SpringBootMain启动类
package com.jjy;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;SpringBootApplication
public class SpringBootMain {public static void main(String[] args) {SpringApplication.run(SpringBootMain.class);}
}编写后启动程序
1.6 访问Nacos
用户名、密码均为nacos 在服务管理下的服务列表点击详情 记住这个IP一会会用到192.168.56.1
2. 配置中心
2.1 配置application.yml文件
server:port: 99common:name: zhangsanage: 202.2 配置UserController文件
package com.jjy.controller;import lombok.Setter;
import org.springframework.beans.factory.annotation.Value; //注意这一项
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;RestController
RequestMapping(/user)
Setter
public class UserController {Value(${common.name})private String name;Value(${common.age})private Integer age;GetMappingpublic String test(){return name----age;}}再次启动项目
2.3 访问网站 2.4 添加依赖
在dependencies标签中添加依赖
dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-nacos-config/artifactId
/dependency2.5 创建命名空间 自定义命名空间名以及描述后点击新建 命名空间ID保存好一会会用7e56a725-f51a-4603-b421-49add0ae9c4b
2.6 配置中心添加配置文件
进入配置管理下的配置列表后点击nacos0926后点击号 DataID自定义后、描述可有可无最后将如下内容填入配置内容最后发布
common:name: lisi同样的流程再次配置一个nacos0926copy
common:age: 252.7 修改bootstrap.yml配置文件
注意缩进
spring:cloud:nacos:discovery:server-addr: 192.168.108.186:8848config:server-addr: 192.168.108.186:8848file-extension: yamlnamespace: 7e56a725-f51a-4603-b421-49add0ae9c4b #命名空间ID粘贴复制过来即可。shared-configs:- data-id: nacos0926.yaml #Data ID粘贴复制过来即可。group: DEFAULT_GROUP #Group 粘贴复制过来即可。- data-id: nacos0926copy.yaml #Data ID粘贴复制过来即可。group: DEFAULT_GROUP #Group 粘贴复制过来即可。inetutils:preferred-networks: 192.168.56 # IP 粘贴复制过来即可。重新启动项目
2.8 再次访问页面 总结
本文讲述了 Nacos实现微服务架构中的服务发现、配置管理 在下攸攸太上最近疯狂发文章只是为了得到一周九篇才能拿到的劳模勋章