- 博客(1662)
- 资源 (17)
- 收藏
- 关注
原创 docker--基础--2.5--部署--常用操作和配置
默认情况下,将来从docker hub(https://hub.docker.com/)上下载docker镜像,太慢。一般都会配置镜像加速器。
2024-08-12 17:14:23
268
原创 docker--基础--2.2--部署--离线安装--通过RPM
假设内网代理ip为:172.20.1.1。如果安装过,用以下命令删除docker。重新加载docker配置,并重启。执行登录命令,并输入账号和密码。
2024-08-12 17:11:32
108
原创 canal--基础--2.3--部署--常见错误
adapter的配置文件错误,修改配置文件中es的配置中的name为es7即可解决。配置文件中使用的mode的方式为rest,要在hosts的ip前面加上。
2024-06-03 19:04:40
240
原创 canal--基础--2.1--部署--实时同步MySQL数据到ES
由于canal是通过订阅MySQL的binlog来实现数据同步的,所以需要开启MySQL的binlog写入功能,并设置binlog-format为ROW模式。创建一个拥有从库权限的账号,用于订阅binlog,这里创建的账号为canal:canal。example是你的destination,可以根据自己的实际情况修改。按如下配置即可,主要是修改数据库相关配置。
2024-06-03 19:02:47
473
1
原创 sentinel--基础--08--规则持久化
目前,sentinel的所有规则都是内存存储,应用重启后所有规则都会丢失,在生产环境下,我们必须确保这些规则的持久化,避免丢失。
2024-05-26 21:26:24
373
原创 sentinel--基础--07--自定义异常
*** @Description 自定义异常结果**/@Component@OverrideString msg = "未知异常";msg = "请求被限流了";msg = "请求被热点参数限流";msg = "请求被降级了";msg = "没有权限访问";
2024-05-26 21:25:28
285
原创 sentinel--基础--5.3--隔离和降级--熔断降级
熔断降级是解决雪崩问题的重要手段。其思路是由断路器统计服务调用的异常比例、慢请求比例,如果超出阈值则会熔断该服务。即拦截访问该服务的一切请求,而当服务恢复时,断路器会放行访问该服务的请求。
2024-05-26 21:23:43
293
原创 sentinel--基础--5.2--隔离和降级--线程隔离(舱壁模式)
线程隔离就是通过线程数来控制服务调用并发数。比如给一个请求A配置3个线程,那么请求A的最大并发数就是3。高扇出(扇出:A服务调用B服务,B服务调用C1,C2,C3服务,那么B服务的扇出就是C1,C2,C3)并发线程数:是该资源能使用用的tomcat线程数的最大值。通过计数器来控制访问的并发数。比如上面,设置计数器为10,那么这个服务的并发数最大就是10。比如上面,给服务A设置线程池大小为10,给服务B设置线程池大小为5。就是给每个服务,设置它的线程池大小。接口设置流控规则,线程数不能超过2。
2024-05-26 21:22:23
359
原创 sentinel--基础--4.4--限流规则--热点参数限流
对0号的long类型参数限流,每1秒相同参数的QPS不能超过5,有两个例外。分别统计参数值相同的请求,判断是否超过QPS阈值。每秒12个线程,持续200秒。3个线程的请求路径如下。
2024-05-26 21:19:52
256
原创 sentinel--基础--4.3--限流规则--流控效果
而排队等待则是让所有请求进入一个队列中然后按照阈值允许的时间间隔依次执行。后来的请求必须等待前面执行完成,如果请求预期的等待时间超出最大时长则会被拒绝。可以看到,刚开始是没有拒绝QPS的,因为这些请求都在队列里面。后面有拒绝QPS是因为对应的请求超过了5秒。让所有的请求按照先后次序排队执行,两个请求的间隔不能小于指定时长。效果,预热时长为5,也就是说刚开始阀值是3,5秒后阀值是10。是指请求达到流控阈值时应该采取的措施,包括三种。这个资源设置限流,最大QPS为10,利用。5秒后阀值是10,所有请求都通过。
2024-05-26 21:18:34
316
原创 sentinel--基础--4.2--限流规则--流控模式
对某个资源进行流量管控这里是限制这个资源的单机QPS设置为1,即每秒只允许1次请求,超出的请求会被拦截并报错。
2024-05-26 21:17:02
315
原创 sentinel--基础--4.1--限流规则--簇点链路
簇点链路就是项目内的调用链路,链路中被监控的每个接口就是一个资源。默认情况下sentinel会监控SpringMVC的每一个端点(Endpoint),因此SpringMVC的每一个端点(Endpoint)就是调用链路中的一个资源。簇点链路 就是springMVC controller层中注解标识的方法。对某个资源进行流量管控这里是限制这个资源的单机QPS设置为1,即每秒只允许1次请求,超出的请求会被拦截并报错。
2024-05-26 21:14:34
373
原创 项目开发与总结--01--通知公告设计
管理员发布通知公告,可选择哪些人可看到这个通知公告,通过选人和选部门来确认访问人。选择组织的话,如果选择全集团,那么全集团包含下属单位的所有人都可以看到。目前xx局用户人数为30W。前端展示界面是个跑马灯的效果,且要做看过的公告,就不显示。
2024-05-10 14:11:31
360
原创 async-profiler--基础--02--命令说明
此时,可以使用-b N来增加buffer的容量。指定采样的间隔,以纳秒为单位。例如,-i 1000000 表示每1,000,000纳秒(即1毫秒)进行一次采样。用于指定要包含在或排除在采样之外的方法或类。这对于过滤掉不感兴趣的部分或专注于特定部分很有用。在生成的火焰图中折叠或隐藏某些函数。你可以通过指定线程ID或线程名称来实现这一点。可以选择其他类型的事件,如内存分配(-e alloc)。为生成的火焰图或结果文件设置标题。指定采样的持续时间,以秒为单位。该参数将结果写入指定的文件中。指定输出文件的名称。
2024-05-04 21:51:49
496
原创 jmeter--基础--01--介绍和安装
binaries:是可执行版,直接下载解压就可以使用。下载完成后解压文件(不需要安装),并配置环境变量。
2024-05-04 18:17:12
196
原创 动态代理--基础--02--jdk原理细节
这是被调用的方法的 Method 对象。它包含了被调用方法的名称、参数类型、返回类型等信息。你可以通过这个对象来获取方法的详细信息,并执行相应的逻辑。是 Java 反射 API 中的一个方法,用于动态地创建一个实现了指定接口的代理类实例。一个带有代理类的指定调用处理程序的代理实例,它由指定的类加载器定义,并实现指定的接口。:是生成字节流的方法,通过native方法生成Class对象。理解:返回一个实现接口的代理类,比如。用于处理代理实例上的方法调用。返回 代理实例方法的执行结果。
2024-05-01 22:39:20
326
2
原创 动态代理--基础--01--jdk和cglib原理和区别
利用反射机制生成一个实现代理接口的匿名类,在调用具体方法前调用InvokeHandler来处理。
2024-05-01 22:38:43
37
原创 算法--基础--01--MD5
全称Message-Digest Algorithm(消息摘要算法)是一种hash函数,可以产生出一个128bit的散列值(大整数)是一个不可逆的字符串变换算法:换句话说就是,即使你看到源程序和算法描述,也无法将一个MD5的值变换回原始的字符串,从数学原理上说,是因为原始的字符串有无穷多个。
2024-04-23 20:54:08
837
原创 Swagger--基础--2.2--集成Springboot3--swagger3
【代码】Swagger--基础--2.2--集成Springboot3--swagger3。
2024-04-18 21:59:22
216
原创 MYSQL--基础--4.1--索引--数据结构--二叉查找树、红黑树、B树,Hash表
红黑树的每个节点都包含一个额外的属性,表示节点的颜色(红色或黑色),这些颜色确保了在节点的插入和删除操作中树是平衡的。红黑树 原先一个节点存储 一个元素,现在改为 一个节点 存储 多个元素,这就是B树。因为一个节点存储了更多的元素,所以整体的高度会比红黑树来的低。红黑树是二叉搜索树的变种,具有自平衡特性,也称二叉平衡树。二叉查找树,也称二叉搜索树。
2024-03-31 17:20:36
416
原创 redis--20.4--锁--红锁(Redisson,RedLock)
当前客户端 对 大多数的redis节点加锁成功,就表示获取锁成功。为了取到锁,客户端做了以下操作。key的真正有效时间。
2024-03-30 18:55:26
356
原创 redis--20.2--锁--分布式锁(Redisson,RLock)
在上面任务调度的方法中,也是异步执行并且设置了一个监听器,在操作执行成功之后,会回调这个方法,如果调用失败会打一个错误日志并返回,更新锁过期时间失败;然后获取异步执行的结果,如果为true,就会调用本身,如此说来又会延迟10秒钟去执行这段逻辑,所以,这段逻辑在你成功获取到锁之后,会每隔十秒钟去执行一次,并且,在锁key还没有失效的情况下,会把锁的过期时间继续延长到30 秒,也就是说只要这台服务实例没有挂掉,并且没有主动释放锁,看门狗都会每隔十秒给你续约一下,保证锁一直在你手中。类型,这里key是指。
2024-03-30 18:35:49
1290
springMVC+mybaties框架搭建方式1
2018-05-21
FreeMarker中文版文档
2017-04-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人