SpringBoot2.x高级优化
2021-09-10 13:59:24 0 举报
AI智能生成
SpringBoot2.x和SpringCloud的高级优化
作者其他创作
大纲/内容
1.SpringBoot性能强优化
1.SpringBoot扫包的优化
SpringBoot原来扫描包带来的问题
优化方案
2.Undertow服务器
1.undertow的简介
2.将SpringBoot内置的Tomcat移除,添加undertow服务器
3.JVM对微服务的调优
1.在实际的工作中,结合SpringBoot进行JVM的调优
JVMGC对微服务的生产部署调参的优化方案
2.Alibaba的SpringCloud
1.Alibaba Cloud简介
1.1.SpringCloud Alibaba github地址:https://github.com/alibaba/spring-cloud-alibaba/blob/master/README-zh.md
1.2.主要功能
1.3.相应的组件简介
2.Nacos
2.1Nacos概述
具体的Nacos注册中心的更多详细资料请看官方文档:https://nacos.io/zh-cn/index.html
2.2Nacos搭建
2.2.1.https://github.com/alibaba/nacos/releases 需要注意的是:下载的Nacos版本要跟idea中配置SpringCloudmaven依赖的版本一致
2.2.2.下载的步骤:
2.2.3.启动Nacos:http://localhost:8848/nacos/index.html#/login 默认的账号密码为nacos/nacos
2.3Nacos的使用
2.3.1.增加外部Mysql数据库来存储数据
2.3.2.数据库版本要求:5.6.5,Mysql8以下
2.3.3.在本机或者其他服务器安装mysql数据库,并在mysql当中创建一个名为:nacos_config的数据库表
2.3.4.然后在nacos的安装包里面conf包下有提供一个名为nacos-mysql.sql数据表文件,在mysql中执行这个nacos提供的名为nacos-mysql.sql的文件
2.3.5.在nacos安装包里面的conf包下有一个application.properties文件,在此文件中修改连接mysql的相关属性
2.4.Nacos的配置管理
2.4.1.通过Nacos的图形化管理页面来发布配置
2.4.2.通过JAVA的程序来获取刚刚发布的配置信息
2.4.3.创建一个maven工程,名为:nacos-demo01
pom文件的依赖
2.4.4.在工程下创建一个类,然后在这个类中编写获取nacos配置信息的代码
2.4.5.配置管理的基础应用操作
对于Nacos配置管理,Namespace、group、Data ID这些都是一个配置的一个集合。
2.5.Nacos在分布式微服务的应用
2.5.1.分布式应用配置管理
2.5.2.如何在分布式微服务当中启用 Nacos 来进行统一的配置管理
2.5.3.首先先在nacos当中发布两个配置
2.5.4.再发布一个配置
2.5.5.创建一个maven的父工程,名为:nacos-config
POM文件
2.5.6.在父工程中创建一个两个子模块,第一个模块名为:nacos-server1,第二个模块名为:nacos-servertwo
2.5.7.两个子模块的pom文件依赖
2.5.8.在nacos-server1工程下的resources下创建一个bootstrap.yml文件
2.5.9.在nacos-server1工程和nacos-servertwo工程下都创建一个Springboot的启动类
2.5.10.在nacos-server1工程下读取bootstrap.yml里面的属性值
2.5.11.创建一个controller相关的类用来读取配置文件的信息并且显示到页面上
2.6.Nacos的服务发现
2.6.1.什么是服务的发现?
2.6.2.创建一个微服务父工程,名为:nacos-discovery
2.6.2.1.pom文件的依赖
2.6.3.在父工程中再创建一个子模块服务的提供者,名为:nacos-provider
2.6.3.1.pom文件的依赖
2.6.3.2.application.yml
2.6.3.3.创建一个ProviderController来提供相关的服务
2.6.3.4.再创建一个启动类,并在启动类中增加两个注解 @EnableDiscoveryClient和@EnableFeignClients 然后启动该启动类,最后注册到Nacos注册中心当中
2.6.4.在父工程中再创建一个子模块服务的消费者,名为:nacos-consumer
2.6.4.1.pom文件的依赖
2.6.4.2.application.yml
2.6.4.3.创建一个ProviderClient接口类来通过Feign来远程调用服务提供者的数据
2.6.4.4.再创建一个ConsumerController来演示效果
2.6.4.5.创建一个启动类,名为:NacosConsumerApplication,并且启动,来测试是否远程调用成功
2.7.Nacos多集群的负载均衡
服务的消费者调用服务的提供者多集群的负载均衡
在服务的提供者nacos-provider里面设置动态端口来演示多集群
默认采用的是轮询的策略来进行负载均衡的
0 条评论
下一页