自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

6个日的博客

记录点滴

  • 博客(167)
  • 资源 (3)
  • 收藏
  • 关注

原创 日志服务搭建-ES-FileBeat-Kibana

日志系统的搭建使用

2023-03-08 17:23:11 2423

原创 prometheus 配置服务器监控、服务监控、容器中服务监控与告警

Promethues + Grafana + Alertmanager + cAdvisor 监控docker运行的服务并告警。

2023-03-08 17:09:09 4546

原创 一次线上cpu近200%的问题排查

线上问题排查处理

2023-03-07 19:57:33 1358

原创 API开发接口设计 采用微信accessToken授权方式

accessToken设置开发Api

2022-11-18 15:58:32 1346

原创 1]解决java.util.concurrent.RejectedExecutionException

今天学习了java的并发,线程池,同一时间执行一个操作。报错:java.util.concurrent.RejectedExecutionException,排查发现是等待队列设小了,导致拒绝策略,当队列满时,处理策略报错异常。上代码:package aqs;import java.util.concurrent.*;/** * @author WHM * 实现指定时间内做一定事情 * @date 2021年08月06日 16:27 */public class Cou

2021-08-06 18:04:01 20864 1

原创 来对比一下rank()、dense_rank()、row_number()这三者之间的区别

在where 取数中可以明显的看出 where row = 11 / where row = 12 where row = 13的区别。

2023-08-25 15:06:10 2282

原创 idea 使用debug 启动项目的时候 出现 Method breakpoints may dramatically slow down debugging

在IntelliJ IDEA中,你可以通过以下步骤全局取消断点: 打开 "Run" 菜单。选择 "View Breakpoints"(或使用快捷键Ctrl+Shift+F8)。在弹出的 "Breakpoints" 窗口中,你可以看到已设置的所有断点。去掉断点,后重新debug启动,在打断点,正常使用。2. idea 里面的项目,很多地方都有。,现在想要取消全部的断点,那么如何取消;但是正常启动是可以的,debug不行。

2023-08-15 15:01:45 3728

原创 Exception in thread “main“ java.lang.UnsupportedClassVersionError 50报错处理

之间正常走jenkins+docker自动化部署的项目,今天改了一个文件,点了一下,竟然没有部署上去,提示如上,如下。初步排查应该是对应的java版本问题,这里发现原来已经升级到11项目,但是dockerfile中还是引用的8,改成。jenkins中配置也改成11。

2023-06-15 20:32:13 1479

原创 dubbo的默认2次调用,导致数据不一致

今天在排查实习生写的代码,发现dubbo的服务被调用了2次,第一次把数据给请掉了,但是没有返回成功,第二次直接提示数据不存在,导致服务不能用。重启服务,发现正常使用,在实体类中,如果涉及到传输,io还是要做序列化的。这短话,定位到问题,应该是定义了实体类,但是没有序列化,提示必须要序列化。基于这个场景,以为是调用时间太长,触发了重复调用。就在服务提供上加了10s的延迟,不重复调用。

2023-06-14 13:56:32 847

原创 Day01 项目简介&分布式基础概念

市面上有5种常见的电商模式B2BB2CC2BC2CO2O;1B2B模式, 是指商家与商家建立的商业关系。如:阿里巴巴2B2C模式, 就是我们经常看到的供应商直接把商品卖给用户,即商对客模式,也就是通常说的商业零售,直接面向消费者销售产品和服务。如:苏宁易购、京东、天猫、小米商城3C2B模式,即消费者对企业。先有消费者需求产生而后有企业生产,即先有消费者提出需求,后有生产企业按需求组织生产4C2C模式,客户之间自己把东西放上网去卖,如:淘宝,闲鱼5。

2023-06-13 19:58:56 675

原创 Google Chrome谷歌浏览器崩溃,错误代码: STATUS_STACK_BUFFER_OVERRUN

5、找到硬件强制实施的堆栈保护。勾选替代系统设置 -> 选择开 -> 勾选仅审核。4、输入chrome.exe(edge浏览器输入msedge.exe)1、开始菜单搜索:Exploit Protection,打开进入。2、切换到程序设置,点击添加程序进行自定义。重启就好了,最近改解决的问题。3、选择按程序名称添加。

2023-06-13 14:37:34 1657

原创 Linux - sudo:/etc/sudoers 可被任何人写

2. 添加一条 xxxx ALL=(ALL) ALL xxx是自己的账号名称。1. 先用root把 chmod 777 /etc/sudoers 设置可修改。这样就可以sudo mkdir aaa执行sudo权限的操作。需求就是除了root账号,别的账号也能执行mkdir等命令。3. sudoers的权限被改了,改回来就好了。# 当前操作系统发行版信息。# 当前操作系统内核信息。#当前操作系统版本信息。这个能解决上面的报错。

2023-06-07 17:43:33 1976

原创 tomcat和undertow、jetty、netty的区别

Tomcat:免费开源,轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。只实现了JSP/Servlet的相关规范,不支持EJB。虽说是tomcat服务器,但是并不是真正的硬件,它是部署在电脑上的软件服务。tomcat的作用。

2023-06-06 19:57:42 2816

原创 Mysql查询优化

在多种情况下,可能会导致查询结果从缓存中清除,例如:.数据可能已被修改您可能运行了一条语句,其文本与缓存的语句略有不同(小写/大写,换行符,...)缓存可能已达到其大小限制之一(内存,查询计数,块等),并决定逐出您的特定查询高速缓存碎片过多,即使某些内存仍然可用,也会强制高速缓存修剪查询等等...mysql的缓存随时都有可能清空,长时间的sql还是会有 问题,这时候就会在对查询做优化。

2023-06-06 19:29:46 449

原创 MySQL的explain字段解释

MySQL的explain字段解释 ,type类型含义:1.id3.table4.type(重要)7. key8.key_len9. ref10. rows(重要)12. Extra(重要)如下:Explain命令是查看查询优化器是如何决定执行查询的主要方法。这个功能有局限性,并不总会说出真相,但它的输出是可以获取的最好信息,值得花时间去了解,因为可以学习到查询是如何执行的。学会解释explain将会帮助你了解MySQL优化器是如何工作的。具体问题还要具体分析。

2023-06-06 19:04:58 613

原创 mysql加索引,数据库卡死

公司的一个内部项目,由于突然导入了几十万的数据,数据量翻了一倍,导致了某个页面打开很慢。通过sql日志看到主要是由于慢查询引起的,通过explain这个sql,发现主要是由于这个SQL没有命中索引,进行了全表扫描,慢是肯定了的。还好有show processlist,可以查看哪些线程正在执行,也可以查看锁表的线程。但是面对增加索引,突然页面就在那转,感觉卡死,而且表也不能使用。加索引要考虑,1是不是已经有很多索引,不然写入表后,写入会变慢。果然,杀死了,这张表立马就可以用了。

2023-06-06 16:16:03 1365

原创 Spring三级缓存详解

如果创建的 Bean 是有代理的,那么注入的就应该是代理 Bean,而不是原始的 Bean。但是,Spring一开始并不知道 Bean是否会有循环依赖,通常情况下(没有循环依赖的情况下),Spring 都会在“完成填充属性并且执行完初始化方法”之后再为其创建代理。提前暴露的对象,虽然已实例化,但是没有进行属性填充,还没有完成初始化,是一个不完整的对象。让我们来分析一下“A的某个field或者setter依赖了B的实例对象,同时B的某个field或者setter依赖了A的实例对象”这种循环依赖的情景。

2023-06-01 19:49:56 1758

原创 RESTful API 设计指南

RESTful API 是目前比较成熟的一套互联网应用程序的API设计理论。

2023-06-01 16:13:00 477

原创 Java 8 中Map转成对象

实体类,如果要控制输出属性,就展示要输出的,比如上面11个属性,只要2个,写一个输出对象,就只有2个属性的,我这根据有个需求,不同公司返回该对象的不同字段展示。2 List<HashMap<Object,Object>> 转为 List<AlertDeviceInfo>1. HashMap<Object,Object> 转成对象 AlertDeviceInfo。JSON + JAVA 8 Stream处理该问题。

2023-06-01 09:12:57 1904

原创 针对大量log日志快速定位错误地方

tail/head简单命令使用: 第一种方式:(根据关键字查找出行号) 过滤用grep拿到的日志很少,我们需要查看附近的日志。我是这样做的,首先: 得到关键日志的行号表示查询13230539行之后的日志则表示在前面的查询结果里再查前10条记录 第二种方式:查看指定时间段内的日志首先要进行范围时间段内日志查询先查看是否在当前日之内存在grep '11:07 18:29:20' catalina.outgrep '11:07 18:31:11' catalina.out第三种方式:查看日志中特定字符的匹配数

2023-06-01 08:52:29 750

原创 今天Maven导入到私有参考expected START_TAG or END_TAG not TEXT (position: TEXT seen 错误原因及解决方法

过程中,空格的格式不规范,或者格式有问题,maven会出现加载错误,导致我们的jar包也不能正确导入而报红。我们只需要将这些有问题的空格删除,然后回车,规整代码,就行了。是别人复制给我这一块,微信发我的。拿对方源文件,复制内容,

2023-05-25 18:28:38 91

原创 导入报错:Limits: MIN_INFLATE_RATIO: 0.010000, Entry: xl/drawings/drawing1.xml

与此同时,我觉得,以前并没有遇到这样的问题啊,这文件也不大,在看看文件里面的Sheet2,Sheet3都是空白的,也会进入压缩,抱着试一试的心态,就去掉多余模板的sheet2,sheet3,也不是道复制哪边的,太不认真了,再次执行原来的代码。只有sheet1有使用,是导入的文件内容,Sheet2,Sheet3是空白,也没有使用,下载模板不知道为什么要下载下来。这时候只能定位是模板中Sheet2,sheet3格式有问题,最终的解决方案也是调整模板,但是了解了一个压缩爆炸的思想,还是挺有意思的。

2023-05-23 16:06:40 1317

原创 技术选型对比- RPC(Feign VS Dubbo)

Dubbo支持更多功能、更灵活、支持高并发的RPC框架。SpringCloud全家桶里面(Feign、Ribbon、Hystrix),特点是非常方便。Ribbon、Hystrix、Feign在服务治理中,配合Spring Cloud做微服务,使用上有很多优势,社区也比较活跃,看将来更新发展。业务发展影响着架构的选型,当服务数量不是很大时,使用普通的分布式RPC架构即可,当服务数量增长到一定数据,需要进行服务治理时,就需要考虑使用流式计算架构。

2023-05-10 11:37:02 3744 1

原创 解决:Information:java: javacTask: 源发行版 8 需要目标发行版 1.8

提示:解决:Information:java: javacTask: 源发行版 8 需要目标发行版 1.8。

2023-05-10 10:24:15 410

原创 长连接 、短连接、心跳机制与断线重连

client向server发起连接,server接受client连接,双方建立连接。Client与server完成一次读写之后,

2023-05-09 18:08:10 1193

原创 搞定面试官-JUC面试专题强化

JUC。

2023-05-09 11:39:09 304

原创 你是否线上有使用ThreadLocal,如果结合多线程,请慎用

不同客户端请求的客户端信息(wifi 还是 4G,机型,app名称,电量等)显然不一样,dubbo 业务线程拿到客户端请求后首先会将有用的请求信息提取出来(如本文中的 Map clientInfo),但这个 clientInfo 可能会在线程调用的各个方法中用到,于是如何存储就成为了一个现实的问题,相信有经验的朋友一下就想到了,没错,用 Threadlocal!为什么用它,它有什么优势,简单来说有两点无锁化提升并发性能简化变量的传递逻辑。

2023-04-27 11:21:21 401

原创 MySQL 字段为 NULL 的5大坑,99%人踩过

本文我们讲了当某列为NULL时可能会导致的 5 种问题:丢失查询结果、导致空指针异常和增加了查询的难度。因此在最后提倡大家在创建表的时候尽量设置的约束,如果某列确实没有值,可以设置空值('')或 0 作为其默认值。

2023-04-27 09:38:38 817

原创 JAVA中Hutool工具类库,请不要在重复造轮子

谐音 “糊涂”,寓意追求 “万事都作糊涂观,无所谓失,无所谓得” 的境界。Hutool 是一个 Java 工具包,也只是一个工具包,它帮助我们简化每一行代码,减少每一个方法,让 Java 语言也可以 “甜甜的”。Hutool 最初是我项目中 “util” 包的一个整理,后来慢慢积累并加入更多非业务相关功能,并广泛学习其它开源项目精髓,经过自己整理修改,最终形成丰富的开源工具集。

2023-04-27 09:11:23 1069

原创 lambda的toMap是不是要注意点,线上事故

);相信很多为了减少2层for循环,for循环查sql,都会定义Map的类型,去减少嵌套而java8提供了toMap,简直就是方便。相信很多人都用过这个方法,那这段代码到底有没有问题?我最开始以为没有,不就是转换成map吗,能有什么问题,至到吃过亏了,才知道其它有个坑在这,稍不注意就掉坑了。这不,前阵子有个同事又踩坑了,还是大坑。上线后,第一天,相安无事主键冲突!!!如果Map的key里面有重复值,Collectors.toMap会报主键重复的错误。

2023-04-26 20:04:26 602

原创 【JeecgBoot】关于 jeecg-boot 的项目理解、使用心得和改进建议

最近有一些小项目,互相没有关联的,想找一个脚手架直接开发业务。

2023-04-26 19:57:33 2557

原创 JVM常用调优参数 ——JVM篇

1. 内存相关通过这些参数可以对JVM的内存分配做调整Xms堆区初始值-Xms2g或Xmx堆区最大值-Xmx2g或Xmn新生代最大值-Xmn512m或PermSize(JDK1.8以后已废弃)永久代初始大小(JDK1.8以后已废弃)永久代最大值(JDK1.8以后用于替换PermSize)元数据区初始大小(JDK1.8以后用于替换MaxPermSize)元数据区最大值Xss线程栈最大值-Xss256k或。

2023-04-21 17:07:26 1510

原创 2023最新面试题-Java-7

利用自定义注解结合SpringAOP可以完成权限控制、日志记录、统一异常处理、数字签名、数 据加解密等功能。实现场景(API接口数据加解密)1)自定义一个注解,在需要加解密的方法上添加该注解2)配置SringAOP环绕通知3)截获方法入参并进行解密4)截获方法返回值并进行加密。

2023-04-14 17:32:47 504

原创 2023最新面试题-Java-6

红黑树的构成

2023-04-14 12:17:42 850

原创 2023最新面试题-Java-5

网上的大部分自定义类加载器文章,几乎都是贴一段实现代码,然后分析一两句自定义的 原理。但是我觉得首先得把为什么需要自定义加载器这个问题搞清楚,因为如果不明白它的作用的情况 下,还要去学习它显然是很让人困惑的。首先介绍自定义类的应用场景:(1)加密:Java代码可以轻易的被反编译,如果你需要把自己的代码进行加密以防止反编译,可以先将 编译后的代码用某种加密算法加密,类加密后就不能再用Java的去加载类了,这时就需要自 定义ClassLoader在加载类的时候先解密类,然后再加载。

2023-04-14 10:42:49 712

原创 2023最新面试题-Java-4

为了能让HashMap存取高效,尽量较少碰撞。

2023-04-13 19:45:52 647

原创 2023最新面试题-Java-3

JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个 对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为 java语言的反射机制。

2023-04-13 17:14:38 552

原创 2023最新面试题-Java-2

Java语言是强类型语言,对于每一种数据都定义了明确的具体的数据类型,在内存中分配了不同 大小的内存空间。细化的数据类型就是占用空间的基本元素。

2023-04-13 11:40:07 382

原创 2023最新面试题-Java-1

知其然知其所以然Java之父:詹姆斯·高斯林 (James Gosling)。

2023-04-13 11:23:09 263

原创 JAVA所有版本特性【JAVA 1.0 - JAVA 20】

(详细请前往:Oracle Java SE Support Roadmap),JDK 9和 JDK 10都是一个短期版本,故稳定长期的版本可能是JAVA 11(LTS - Long Term Support)版本。增加对Native PKI(Public Key Infrastructure), Java GSS(Generic Security Service),Kerberos和LDAP(Lightweight Directory Access Protocol)支持;JIT,性能比较差,运行速度慢。

2023-04-13 11:11:48 968

编译原理-词法分析(java)

课设中的词法分析器-考虑到关键字-符号-非法标识符-16进制-8进制

2018-06-25

Solr(Lucene)+SpringMVC实现电商站内搜索功能

系统在自己一步一步部署下完成站内搜索,可以了解Solr集合SpringMvc的使用,对Solr安装使用可以提升许多,我还有一篇文展描述了步骤, 配置完好的solr(中文分析器)+我配置的SolrHome+mysql的数据库+javaweb程序 希望共同进步

2018-04-21

SpringBoot+MyBatis+Mysql+Easyui+Ajax实现CURD实例

通过Spring Initializr快速生成springboot项目+mybatis generator反向生成代码+easyui 的表单设计(增删改查-分页)+ajax异步操作+mysql源数据库+单元测试+详细注解及个人编程的运到困难

2018-04-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除