说明:反刍笔记仅做个人学习中遇到问题的梳理。
1.分布式 集群 高可用 可扩展 分别指什么?
分布式:很多人干不同的事情
集群:很多人干相同的事情
高可用:一个人挂掉不影响正常进展
可扩展:几个人不够再喊几个
2.要解决高并发,首先要解决高可用,那么高可用的解决方案都有什么?
集群、负载均衡、限流、降级、熔断
集群:很多人都干一件事
负载均衡:把请求分摊给不同的服务器
限流:用户访问高峰期,限制用户请求 (限流的技术方案:js脚本判断,一秒只放一个请求过去。or zuul网关:所有请求都需要经过zuul网关,每秒只放固定数量的请求过去,先做拦截,再做熔断,返回一个固定的提示信息,等访问高峰期经过后在恢复正常。)
3.高并发的解决方法都有什么?
分布式、静态化、缓存、异步并发、池化、队列。
分布式集群:加服务器
静态化技术:访问频率高的数据,生成静态页面,保存在服务器端,不需要在进行渲染,直接返回静态页面。
缓存技术:redis做缓存,减少每次请求的访问时间
异步并发:请求量有波峰有波谷,用异步削峰填谷,在业务量不那么繁忙的时候慢慢处理。比如Rabbitmq消息队列,下单后先返回默认页面,然后存放消息在队列中,等业务不繁忙时慢慢处理。
池化:tomcat线程池
队列:比如刚刚讲的消息队列
4.node.js是什么?
node.js:运行在服务端的 JavaScript,无需依赖游览器解析
比较火的解决方案:服务器端用node.js,页面,游览器端用:react.js vue.js
数据端用MongoDB,这样可以不用后端,只要前端
5.SEO是什么?
搜索引擎优化
6.project-项目 parent 父母
7.group ld坐标 group组;群;类;团体;群体;集体
8.snapshot 快照的意思
在项目创建时版本号后面加SNAPSHOT,代表快照版,可以稳定使用,但仍在继续改进版本
详情:版本号后面有SNAPSHOT是什么意思_来老铁干了这碗代码的博客-CSDN博客_版本加snapshot
9.遇到问题:创建项目报错:
No archetype found in remote catalog. Defaulting to internal catalog Archetype not found in any catalog. Falling back to central repository. Add a repository with id 'archetype' in your settings.xml if archetype's repository is elsewhere.
翻译一下:
在远程目录中没有发现原型。默认为内部编目 在任何目录中都没有找到原型。返回到中央存储库。 如果prototype的存储库在其他地方,在settings.xml中添加id为' prototype '的存储库。
遂百度,有一个老哥的答案比较贴切,并给出了详细解决方案:idea 原型创建maven项目报错 - The desired archetype does not exist_kmkang2021的博客-CSDN博客_the desired archetype does not exist
看到老哥的博客我大概就明白了,大概就是项目创建的时候没有选择maven目录,导致他找不到,没有完全按照老哥说的,但是重新创建了项目,选择了maven目录,问题解决。
10.遇到问题:版本号飘红,提示:找不到项目 'org.springframework.boot:spring-boot-starter-parent:2.0.7.RELEASE'
遂百度,看到有个老哥遇到了一模一样的问题:创建maven项目出现spring-boot-starter-parent无法找到,父节点报错 - 代号997的个人空间 - OSCHINA - 中文开源技术交流社区
按照他的方法尝试,问题解决。
11. 跟着老师的教程走,创建新模块时,发现老师创建后的模块自动生成了resources文件夹,而我的却没有。
resources
英 [rɪˈzɔːsɪz]
npl.资源;财力;智谋;智力;个人素质;
百度后了解到,原来resources文件夹是资源文件夹,可以自己手动在idea中生成,详见教程:IDEA 中创建 Test 文件夹,Resources文件夹 等各种文件夹_syrdbt的博客-CSDN博客_idea test文件夹
解决,随后遇到老师的文件夹是蓝色的,代表为核心代码文件夹,而我的也没有蓝色,于是照葫芦画瓢手动创建。
12.@springbootapplication注解报红
一个无脑的报错,@springbootapplication注解报红,百度都说是地址错误,idea没找到文件夹,但是我看了我配置的没问题,我按照下面教程删除了一个文件夹,重新加载项目,并补上了引入就好了!解决 IDEA中创建Spring boot工程启动类注解@SpringBootApplication报红_mojiezhao的博客-CSDN博客_springbootapplication报红解决
13.@EnableEurekaServer注解爆红,
百度到的解决方案要么说什么boot和cloud版本不兼容,要么说没下载完让删了重新下,我挨个试了都没解决我的问题,其实根本原因是没有imprort!!
最终是点idea的提示:他说要帮我将库 'Maven: org.springframework.cloud:spring-cloud-netflix-eureka-server:2.0.2.RELEASE' 添加到类路径,我点了一下,添加成功了,报错就消失了。
14.报错:Unsatisfied dependency expressed through field 'eurekaServerBootstrap
Unsatisfied dependency expressed through field 'eurekaServerBootstrap'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'eurekaServerBootstrap' defined in class path resource [org/springframework/cloud/netflix/eureka/server/EurekaServerAutoConfiguration.class]: Unsatisfied dependency expressed through method 'eurekaServerBootstrap' parameter 1; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'eurekaServerContext' defined in class path resource [org/springframework/cloud/netflix/eureka/server/EurekaServerAutoConfiguration.class]: Unsatisfied dependency expressed through method 'eurekaServerContext' parameter 2; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'peerEurekaNodes' defined in class path resource [org/springframework/cloud/netflix/eureka/server/EurekaServerAutoConfiguration.class]: Post-processing of merged bean definition failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [org.springframework.cloud.netflix.eureka.server.EurekaServerAutoConfiguration$RefreshablePeerEurekaNodes] from ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]
大意:
通过字段'eurekaServerBootstrap'表示不满足的依赖;unsatisfieddependencyexception:在类路径资源[org/springframework/cloud/netflix/eureka/server/EurekaServerAutoConfiguration.class]中创建名称为“eurekaServerBootstrap”的bean时出错:通过方法“eurekaServerBootstrap”参数1表示的依赖不满足;unsatisfieddependencyexception:在类路径资源[org/springframework/cloud/netflix/eureka/server/EurekaServerAutoConfiguration.class]中创建名称为“eurekaServerContext”的bean时出错:通过方法“eurekaServerContext”参数表示的依赖关系不满足……
尝试了目之所及的所有办法,都没有解决,最终第二天删文件重新写了一遍,恢复正常……
我原称之为玄学……
15.Eureka.Client.serviceUrl飘红,没有打错,尝试了几种写法都报错,最终复制粘贴上一模一样的代码,报错消失了……我原称之为玄学……
16.spring-boot-starter-jdbc飘红,报错:Eureka.Client.serviceUrl,停止服务用maven重新加载代码后解决。
17.Invalid packaging for parent POM com.leyou.item:leyou-item:1.0.0-SNAPSHOT, must be "pom" but is "jar"
翻译:必须为“POM”,但为“jar”。
一般MAVEN的工程的父模块的POM.XML的打包方式为pom方式,子模块工程的POM.XML的打包方式为jar包方式,把jar改成pom就OK了。
18.Could not find artifact com.leyou.item:leyou-item-interface:jar:1.0.0-SNAPSHOT
无法找到artifact com. leu .item: leu -item-interface:jar:1.0.0-SNAPSHOT
19.报错,zuul绑定属性失败
2023-02-14 20:34:03.501 ERROR 14296 --- [ main] o.s.b.d.LoggingFailureAnalysisReporter :
*************************** APPLICATION FAILED TO START ***************************
Description:
Failed to bind properties under 'zuul.routes' to java.util.Map
Reason: No converter found capable of converting from type [java.lang.String] to type [java.util.Map
Action:
Update your application's configuration
翻译:
*************************** 应用程序无法启动 ***************************
描述:
在“zuul”下绑定属性失败。路由到java.util.Map
原因:没有找到能够从[java.lang. type]进行转换的转换器。to type [java.util.Map
行动:
更新应用程序的配置
我找到了我zuul网关的配置,有一行飘红:
提示我routes后面不是键值对,特喵的,我用的英文冒号怎么就不是键值对了!!!
然后我在冒号后面加了个空格,问题就解决了……我真是栓Q……
20.报错 eureka.client绑定属性失败
*************************** APPLICATION FAILED TO START ***************************
Description:
Failed to bind properties under 'eureka.client.service-url' to java.util.Map
Reason: No converter found capable of converting from type [java.lang.String] to type [java.util.Map
Action:
Update your application's configuration
还是刚刚的问题!我找了半天没发现我配置文件有问题!结果发现是另外一个文件没有空格!!
文章来源
发表评论