代理模式


定义 代理模式(Proxy Pattern)是软件工程中的一种设计模式,它属于结构型模式,用于在不直接访问实际对象的情况下,通过一个或多个代理对象来间接访问某个对象或执行某些操作。 目的 这种模式的主要目的是: 控制访问:代理可以在访问真实对象之前或之后添加额外的操作,如权限检查、延迟初始化、日志记

zuul 网关超时优化


1. 概述 前段时间,线上的服务不知道为啥,突然全部的服务都超时,所有的请求经过网关都超时,后来进行链路追踪排查,发现有一个服务链接 RDS 数据库,一个查询花费了 20S 的查询时间,导致后续调用该服务的应用都超时。然后超时的连接占满了 zuul 的转发池,最终导致了所有经过 gateway 的服

PostgresSql VACUUM 剖析


为什么需要 Vacuum MVCC MVCC:Multi-Version Concurrency Control,即多版本并发控制。 PostgreSQL 使用多版本并发控制(MVCC)来支持高并发的事务处理,同时保持数据的一致性和隔离性。MVCC 是一种用于管理数据库并发操作的技术,它允许多个事务

记一次有 pg_attribute 引起的数据膨胀


背景 不知道从何时开始,数据库空载时的性能消耗越来越高,当业务高峰期,CPU 和内存都处于高负载的情况下,观看 AWS 的监控,发现负载空载时占用很高。 并且占用较高的 Top5 分为为: autovacuum: VACUUM ANALYZE pg_catalog.pg_attribute auto

PGSQL快速生成模拟数据


#PgSql 背景 有时候,我们为了测试数据库的性能,通常需要快速构建测试数据,PgSql 提供了快速构建数据的工具,方便我们能够快捷的构建模拟数据。 生成函数 顺序生成 生成 SQL -- 生成一批顺序值 SELECT id FROM GENERATE_SERIES

PGSQL 批量更新


PGSQL 批量更新 概述 在我们的平常业务中,经常需要批量更新数据,例如:现阶段需要更新 1000 个包裹的上网时间,每个包裹的上网时间是不一样的,假如我们一个一个包裹更新,则需要与数据库进行 1000 次的交互,很大的消耗数据库的性能,并且更新的速度也很慢,因此,我们通常需要进行批量更新数据。

Hello Halo


如果你看到了这一篇文章,那么证明你已经安装成功了,感谢使用 Halo 进行创作,希望能够使用愉快。

从0开始搭建博客

Linux 

#博客 #Linux 从0开始搭建博客 1. 概述 本篇博客,我教大家从0开始搭建一个 bolo博客,bolo 博客 和 solo 博客的区别是皮肤更加多,并且可以帐号密码登录。 本篇博客主要的内容如下: linux 安装 docker,设置docker镜像加速 docker 安装 nginx do

Spring Aop 获取入参和出参

Java 

Spring Aop 获取入参和出参 1. 概述 本次,我利用 Spring Aop 的注解方式获取切入点的入参和出参,因为比较简单,所以就直接上代码了。 2. 代码编写 注解类 /** * 日志注解 * * @author Jiantao Yan * @title: Log * @dat

Spring AOP 切面执行顺序

Java 

Spring AOP 切面执行顺序 1. 概述 1.1 术语 Spring AOP 的相关术语: Aspect:切面,由一系列切点、增强和引入组成的模块对象,可定义优先级,从而影响增强和引入的执行顺序。事务管理(Transaction management)在java企业应用中就是一个很好的切面样例