Java后端与架构初探
文章平均质量分 51
大大大大大碗面
学如逆水行舟,不进则退。点个关注,一起进步。欢迎来简历内推。
展开
-
Ribbon入门笔记
WHAT是什么?Spring Cloud Ribbon是一个基于HTTP和TCP的客户端负载均衡工具,它基于Netflix Ribbon实现。通过Spring Cloud的封装,可以让我们轻松地将面向服务的REST模版请求自动转换成客户端负载均衡的服务调用。Spring Cloud Ribbon虽然只是一个工具类框架,它不像服务注册中心、配置中心、API网关那样需要独立部署,但是它几乎存在于每一个Spring Cloud构建的微服务和基础设施中。因为微服务间的调用,API网关的请求转发等内容,实际上都.原创 2021-03-25 19:36:11 · 273 阅读 · 0 评论 -
Prometheus入门笔记
一个开源的监控项目,集成服务发现(Consul)、数据收集(Metrics)、存储(TSDB)及展示(通常是接入Grafana),外加一系列的周边支持(比如Springboot集成等等)在io.micrometer.core.annotation包下面,有一个非常核心的注解@Timed通过AOP的方式增强被注解的方法,实现对被注解的方法的耗时统计(TimeAspect)。...原创 2021-03-25 19:34:37 · 324 阅读 · 1 评论 -
Hystrix入门笔记
Hystrix[hɪst'rɪks],中文含义是豪猪,因其背上长满棘刺,从而拥有了自我保护的能力。GitHub:https://github.com/Netflix/Hystrix/wikiLogo↓↓↓常规服务调用,很可能因为某一个依赖服务的不可用而拖垮当前系统:使用Hystrix后,每个依赖服务都有自己的资源,实现了资源隔离和容灾:Hystrix的工作原理:防止任何单个依赖项耗尽所有容器(例如Tomcat)用户线程。 减少负载并快速失败,而不...原创 2021-03-25 19:32:54 · 205 阅读 · 0 评论 -
Feign入门笔记
注解本地接口实现RPC实例容器注入(动态代理)FeignClient注解的一些属性原创 2021-03-25 19:29:46 · 132 阅读 · 0 评论 -
Caffine Cache入门笔记
Caffine Cache是一个本地缓存框架,它也是站在巨人的肩膀上-Guava Cache,借着他的思想优化了算法发展而来。相比于Guava,他在过期策略上有了提升----W-TinyLFU。常见的缓存淘汰算法有FIFO,LRU,LFU:FIFO:先进先出,在这种淘汰算法中,先进入缓存的会先被淘汰,会导致命中率很低。 LRU:最近最少使用算法,每次访问数据都会将其放在我们的队尾,如果需要淘汰数据,就只需要淘汰队首即可。仍然有个问题,如果有个数据在 1 分钟访问了 1000次,再后 1 分钟没原创 2021-03-25 19:27:29 · 289 阅读 · 0 评论 -
ANTLR入门笔记
定义ANTLR, 语言识别的另一个工具(ANother Tool for Language Recognition ),(前身是PCCTS)是一种语言工具,它提供了一个框架,可以通过包含 Java,C++,或 C#动作(action)的语法描述来构造语言识别器,编译器和解析器。关键概念前端:定义语法规则,antlr通过g4文件来定义 lexer:词法解规则,就是将一个句子多个字符进行组装分成多个单词的规则 parser:语法解析,对分词后的整个句子进行解析,可以对每个分词单元做出自定义的处理原创 2021-03-25 19:26:51 · 3314 阅读 · 0 评论 -
多线程处理集合后如何保序
背景在批量接口调用时,我们不会选择循环遍历的串行调用方式,因为响应的时间会是所有调用时间之和,如查100个数据,每次查询50毫秒,循环调用串行的总时间时100*50=5000毫秒。一般会选择使用批量查询接口或多线程来解决上述问题。但多线程由于并行性,受网络波动影响,会出现后执行的先得到返回结果的情况,在某些需要保序的场景,就需要关注结果的顺序和请求的顺序是否一致了。举例针对业务场景...原创 2020-02-22 20:28:14 · 1778 阅读 · 0 评论 -
Tomcat 启动报错This is very likely to create a memory leak. Stack trace of thread
前言:部分参考自网上,侵删。1、问题描述启动tomcat部署项目时,报This is very likely to create a memory leak. Stack trace of thread错误。29-May-2018 12:30:09.322 SEVERE [localhost-startStop-1] org.apache.catalina.core.StandardC...原创 2020-02-04 16:44:02 · 6376 阅读 · 0 评论 -
MyBatis:Invalid bound statement (not found)
mybatis报错:Invalid bound statement (not found)的原因很多,但是正如报错提示一样,找不到xml中的sql语句,报错的情况分为三种:第一种:语法错误Java DAO层接口public void delete(@Param("id")String id);Java 对应的mapper.xml文件<?xml version="1....转载 2020-02-04 16:42:03 · 510 阅读 · 0 评论 -
MySql数据库select的执行过程、连接语句、范式等
Mysql种执行select时,数据库处理指令的流程: 1、FORM: 对FROM左边的表和右边的表计算笛卡尔积,产生虚表VT1。 2、ON: 对虚表VT1进行ON过滤,只有那些符合<join-condition>的行才会被记录在虚表VT2中。 3、JOIN: 如果指定了OUTER JOIN(比如left join、 right join),那么保留表中未匹配的行就会作为外部行添...原创 2019-06-21 13:49:26 · 582 阅读 · 0 评论 -
Nginx location 优先级
以下是优先级顺序:= 进行普通字符精确匹配。也就是完全匹配。 ^~ 表示普通字符匹配。使用前缀匹配。如果匹配成功,则不再匹配其他location。 ~ 表示执行一个正则匹配,区分大小写,~* 表示执行一个正则匹配,不区分大小写 常规写法如location /、location /test等location中指定路径的方式有两种:root和alias,区别如下:root:路径+l...原创 2019-04-23 17:15:54 · 1090 阅读 · 0 评论 -
Flannel网络原理(转载)
overlay网络简介覆盖网络就是应用层网络,它是面向应用层的,不考虑或很少考虑网络层,物理层的问题。详细说来,覆盖网络是指建立在另一个网络上的网络。该网络中的结点可以看作通过虚拟或逻辑链路而连接起来的。虽然在底层有很多条物理链路,但是这些虚拟或逻辑链路都与路径一一对应。例如:许多P2P网络就是覆盖网络,因为它运行在互连网的上层。覆盖网络允许对没有IP地址标识的目的主机路由信息,例如:Fr...转载 2019-04-17 13:43:22 · 5900 阅读 · 0 评论 -
Spring拦截器preHandle里页面跳转
1.Ajax请求:判断是否有权执行该操作,拦截后,返回指定的resultCode。2.非Ajax请求:判断是否有权访问该页面。拦截后跳转到指定的页面。原创 2018-05-04 16:08:22 · 7257 阅读 · 0 评论 -
SpringBoot+Shiro+redis配置文件@value取值为空
参考文章:这里出现原因:@Bean public LifecycleBeanPostProcessor getLifecycleBeanPostProcessor() { return new LifecycleBeanPostProcessor(); }LifecycleBeanPostProcessor用于在实现了Initializable接口的...原创 2018-09-27 15:57:42 · 1101 阅读 · 1 评论 -
Shiro异常类型
<!-- 身份认证异常 --> <!-- 身份令牌异常,不支持的身份令牌 --> org.apache.shiro.authc.pam.UnsupportedTokenException <!-- 未知账户/没找到帐号,登录失败 --> org.apache.shiro.authc.UnknownAccountExceptio...原创 2018-09-27 15:18:11 · 731 阅读 · 0 评论 -
SpringMVC @requestBody 请求的json字段不匹配 出现400错误
场景描述:原来请求是可达的,后来由于业务需求,在请求的字段里增加了一个标记位,仅作为标记使用,不在@requestBody后紧跟的对象的属性字段中。原因分析:检查JSON格式数据是否正确,错误的格式是不能被正确mapping的,可以在浏览器中搜索json在线工具进行校验。 json中的参数字段一定要在@requestBody后紧跟的对象的属性字段中也存在,也就是json中发送的字段只能比...原创 2018-09-25 13:38:19 · 8603 阅读 · 0 评论 -
Shiro使用笔记-权限比较
anon org.apache.shiro.web.filter.authc.AnonymousFilterauthc org.apache.shiro.web.filter.authc.FormAuthenticationFilterauthcBasic org.apache.shiro.web.filt...原创 2018-06-13 11:12:43 · 269 阅读 · 0 评论