- 博客(150)
- 资源 (1)
- 收藏
- 关注
转载 java jvm堆内存分析工具MAT(导出运行中jvm堆内存、加载导出文件分析)
Historam 统计各类实例数、堆内存占用数(byte)勾选你要dump的jvm并填写导出路径,点next继续。解压后运行MemoryAnalyzer.exe。对当前运行的jvm dump堆内存。加载导出的jvm内存dump文件。加载本地的dump文件。
2024-07-11 14:31:55
85
1
转载 Linux命令-查看内存、GC情况及jmap 用法
clstats是-permstat的替代方案,在JDK8之前,-permstat用来打印类加载器的数据 打印Java堆内存的永久保存区域的类加载器的智能统计信息。这个命令执行,JVM会将整个heap的信息dump写入到一个文件,heap如果比较大的话,就会导致这个过程比较耗时,并且执行的过程中为了保证dump的信息是可靠的,所以会暂停应用, 线上系统慎用。描述:打印等待终结的对象信息。VisualVM是一个免费的工具,它是JDK的一部分,可以提供实时的内存使用情况,包括堆内存、永久代和元空间的使用情况。
2024-07-11 12:03:06
592
原创 上传文件报: /tmp/undertow的解决办法
按理来说,重启之后,上传文件应该去找最新生成的undertow文件路径,但是还在找原来的文件,这个不清楚原因。有了解的,欢迎留言指教。采用了网上常用方式都没用,包含重启,修改yml的配置、修改SpringBoot启动参数。最后把文件补上就可以了。再次上传文件就可以了。
2023-05-11 18:41:23
1223
1
原创 gradle下载依赖报错:Connect to 127.0.0.1:8888 [/127.0.0.1] failed: Connection refused: connect
Connect to 127.0.0.1:8888 [/127.0.0.1] failed: Connection refused
2023-03-03 10:28:29
1191
1
转载 SSL certificate problem: self signed certificat
SSL certificate problem: self signed certificat
2023-01-18 10:01:22
1882
原创 【设计模式】29.结构型模式-装饰模式(Decorator)
装饰模式能够在不改变原来对象结构和功能的前提下,动态的给对象增加新的功能,相比于使用子类扩展的方式,装饰模式更加的灵活。
2022-09-29 16:21:13
210
原创 【设计模式】27.结构型模式-适配器(Adapter)
将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类能一起工作
2022-09-13 15:12:27
230
原创 【设计模式】25.行为型模式-解释器(Interpreter)
给定一个语言,定义它的文法的一种标识,并定义一个解释器,这个解释器使用该表示来解释语言中的句子
2022-08-31 09:42:13
159
原创 【设计模式】24.行为型模式-备忘录(Memento)
一、描述 定义:在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样可以在以后将对象恢复至原来保存的状态。 理解:当需要保存某个对象的操作数据或者该对象状态时,使用另外一个类记录原始对象的数据以及状态,以便回退到以前的某种数据。 角色: 1.Originator(原发器):定义原始类的数据以及状态信息,包含创建备忘录的方法。 2.Memonto(备忘...
2022-08-22 18:05:00
144
原创 9-分表查询耗时过长问题解决
问题背景:需要查询指定条件下的数据信息,但是总是会查询超时,经排查,由于同一个业务表分成了5张分表,总数据量在4千万多,不到5千万。但是如果查询条件中不含有分片键,导致全表扫描,耗时过长。之前看SharedingSphere的官网可以实现强制路由,因此想尝试一下这种机制,指定查询某张分表减少查询耗时。借着这个问题正好研究一下SharedingSphere的强制路由机制。好,进入正题:一、Hin...
2022-08-15 15:42:00
1532
原创 【设计模式】23.行为型模式-访问者(Visitor)
一、描述 访问者模式是一种将数据结构与数据操作分离开来的行为模式。每个访问者标识一个作用于某对象结构中各元素的操作,它可以使你在不改变各元素的类的前提下定义作用于这些元素的新操作。 角色: 1.结构类:包含元素类,添加访问者类。 2.抽象元素类:定义接收访问者访问的抽象方法。 3.具体元素类:调用访问者访问当前元素的方法 4.抽象访问者类:为对象结构中的具体元素类定义一种...
2022-08-08 10:19:00
153
原创 【设计模式】22.行为型模式-迭代器(Iterator)
一、描述 提供一种方法来访问聚合对象,而不暴露这个对象的内部表示,其别名为游标。聚合对象提供数据以及数据访问功能,若聚合对象变化的话,数据访问也要同步修改,不符合开闭原则。在客户访问和聚合对象之间插入迭代器,实现解耦。迭代器模式可以为不同的容器提供一致的遍历行为,而不用关心容器内容元素组成结构 角色: 1.抽象聚合类:定义一系列组成聚合对象的方法,并且定义创建抽象类的方法 2...
2022-08-01 09:51:00
108
原创 【设计模式】21.行为型模式-中介者(Mediator)
一、描述 定义一个中介对象来简化原有对象之间的交互关系,降低系统中对象间的耦合度,使原有对象之间不必相互了解。 角色: 1.抽象中介类:它是中介者的接口,提供了同事对象注册与转发同事对象信息的抽象方法 2.具体中介类:实现中介者接口,定义一个 List 来管理同事对象,协调各个同事角色之间的交互关系,因此它依赖于同事角色。 3.抽象同事类:定义同事类的接口,保存中介者对象,提...
2022-07-25 10:55:00
129
原创 【设计模式】20.行为型模式-观察者(Observer)
一、描述 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。也称为发布-订阅模式。 角色: 1.抽象目标类:除自身业务逻辑外,包含增加、删除、唤醒观察者功能。 2.具体目标类:为那些在目标发生改变时需获取通知的对象定义一个更新接口。 2.抽象观察类:定义响应抽象方法。 3.具体观察类:继承抽象观察类,实现抽象方法。 ...
2022-07-20 17:34:00
176
原创 【设计模式】19.行为型模式-状态(State)
一、描述 允许一个对象在其内部状态发生改变时改变其行为能力。对象的行为依赖于它的状态,并且可以根据它的状态改变而改变它的相关行为。每个状态通过持有Contetxt的引用,来实现状态转移。 一个对象的状态改变了,那么他的操作也会随之改变。 角色: 1.使用环境角色(Context):根据不同的状态在相同方法下作出不同行为的类。 2.抽象状态类(AbstractState):定义...
2022-07-15 09:36:00
108
原创 8.分库分表-MAX_CONNECTIONS_SIZE_PER_QUERY设置导致系统崩溃
一、问题描述 发生在生产环境的真实案件,加了一张分表之后,导致系统挂掉,此外,分表还未有任何数据记录。分表配置与其他相同分表的配置相同。二、排查过程 1.刚开始系统挂掉时,以为是系统问题,因此重启系统。重启完成之后,系统正常了几分钟之后,又继续宕机。 2.去除新增的分表之后,系统正常。三、数据背景 1.一共10张表涉及到分表,根据订单号orderId进行分表,每张表已有4张分...
2022-07-13 09:43:00
1021
2
原创 【设计模式】18.行为型模式-职责链(Chain of Responsibility)
一、描述: 把请求从链中的一个对象传到下一个对象,直到请求被响应为止。通过这种方式去除对象之间的耦合。避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止。 角色: 1.抽象处理者角色:定义处理的抽象方法,可以设置具体处理者 2.具体处理者角色:实现抽象处理方法。 (1)每个角色可处理它负责的请求,...
2022-07-11 09:53:00
112
原创 【设计模式】17.行为型模式-命令(Command)
一、描述 将一个请求封装为一个对象,使请求者和接收者分离开来,实现解耦。可以提供命令的撤销和恢复功能。 角色: 1.请求者:发出请求,调用命令。 2.抽象命令类:定义抽象接口。 3.具体命令类:实现抽象命令类中的抽象接口,将命令发送给接收者。 4.接收者:接收命令,并且做出相关操作。 类图:二、优点 1.将请求者与接收者解耦,降低耦合度。请求者不需要知道接受...
2022-07-04 10:33:00
119
原创 【设计模式】15.行为型模式-模板方法(TemplateMethod)
一、描述 定义一个操作中的算法的骨架,而将一些步骤延迟到子类中,使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 角色: 1.抽象模板类:负责定义算法方法 2.具体模板类:实现抽象模板类方法 类图: 二、优点 1.封装不变部分,扩展可变部分 2.提取公共代码,便于维护 3.行为由父类控制,子类实现三、缺点 1.每一个不同的实现都需要一...
2022-06-28 15:49:00
120
原创 【设计模式】16.行为型模式-策略(Strategy)
一、描述 定义了一系列算法,并将每个算法封装起来,使它们可以相互替换,且算法的改变不会影响使用算法的客户。 1.角色 (1)抽象类:定义算法方法。 (2)具体实现类:继承抽象类,实现算法方法。 2.类图二、以快速排序算法、合并排序算法为例,类图很简单,和上面的类图差不多,所以就不画了。直接上代码: 1.抽象计算类public interface Calc...
2022-06-28 15:49:00
106
原创 【设计模式】13.创建型模式-抽象工厂(AbstractFactory)
一、描述 提供一个创建产品族的接口,其每个子类可以生产一系列相关的产品。不同于工厂方法模式,工厂方法模式的工厂只能生产一种产品。 抽象工厂的角色分类: 1.抽象产品:定义产品的使用方法。 2.具体产品:实现抽象产品,定义了该种产品的具体使用方法。 3.抽象工厂:定义生产产品的功能。 4.具体工厂:实现抽象工厂,可以生产一系列产品。 类图:二、优点...
2022-06-22 09:38:00
126
原创 【设计模式】14.创建型模式-建造者(Builder)
一、描述 是将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。在用户不知道对象的建造过程和细节的情况下就可以直接创建复杂的对象。建造者模式按顺序创建复杂对象(把内部的建造过程和细节隐藏起来)。 角色包含以下分类: 产品(Product):产品以及其包含的属性。 抽象建造者(AbstractBuilder):包含产品实体、建造产品属性的抽象方法、返...
2022-06-22 09:38:00
137
原创 7.@Data注解及其hashCode设值的研究
今天写原型模式的示例时,涉及到Object的clone方法,发现了一个问题,加了@Data的实体在使用clone方法之后,二者比对的hash值相同,使用get、set方法的实体,在使用clone方法之后,二者比对的hash值不同,把示例贴出来,如下:1.使用@Data:@Datapublic class User implements Cloneable { private S...
2022-06-14 16:45:00
964
原创 【设计模式】12.创建型模式-工厂方法(Factory Method)
一、描述 定义一个用于创建产品的接口,由子类工厂决定生产什么产品。解决了简单工厂模式破坏开闭原则的弊端 工厂方法模式的角色包含: 1.抽象工厂:构造了一个生产产品的接口方法。 2.具体工厂:指定生产某种产品,实现了抽象工厂的接口方法。 3.抽象产品:定义了一系列产品的通用使用方法。 4.具体产品:某一种产品的具体使用方法。 工厂方法的类图: 二...
2022-06-14 09:51:00
89
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人