
零散的一些技术方案实现
文章平均质量分 80
头孢头孢
一个懒人
展开
-
揭秘!GitLab CI/CD 配置优化的秘诀
,以支持 Docker-in-Docker(DinD)或挂载宿主机 Docker socket。启动 Docker-in-Docker 容器,Runner 以特权模式连接它执行构建与推送。:确认 CI 变量无误,Harbor 支持的认证方式(如 LDAP、OIDC)是否与凭证匹配。:在项目设置中适当增加 pipeline 超时时间,或拆分镜像层次以复用缓存。:尽量使用专用的 CI 账号和最小权限,避免在脚本中硬编码密码。:你的 Harbor 域名,例如。:Harbor 中的项目名,如。原创 2025-04-10 09:39:17 · 286 阅读 · 0 评论 -
groovy相关的语法糖
简化集合和映射的声明。原创 2025-04-01 18:32:03 · 969 阅读 · 0 评论 -
数据校验-validation-中@NotNull groups 详细用法以及示例
NotNull(message = "用户名不能为空", groups = {CreateGroup.class, UpdateGroup.class})@NotNull(message = "密码不能为空", groups = CreateGroup.class)// 省略 getter 和 setterusername字段在创建和更新时均不能为空。password字段仅在创建时不能为空。原创 2025-04-01 16:19:35 · 353 阅读 · 0 评论 -
k8s常用总结
运行 Pod 和容器,包含 kubelet、kube-proxy 以及容器运行时(如 containerd、CRI-O)。提供对一组 Pod 的稳定访问,通过 ClusterIP、NodePort、LoadBalancer 等方式实现服务暴露。负责集群管理,包括 API Server、Controller Manager、Scheduler 和 etcd 存储。最小的调度单位,一个 Pod 内可包含一个或多个紧密关联的容器,通常共享网络命名空间和存储卷。原创 2025-04-01 15:53:16 · 922 阅读 · 0 评论 -
OpenSearch日志管理系统搭建
购买阿里云 ECS 服务器至少准备一台用于部署 OpenSearch 集群(建议至少3台节点实现高可用)另一台或多台服务器用于部署 Logstash 和 Filebeat(Filebeat可部署在日志产生端,也可作为容器或DaemonSet部署于 Kubernetes 集群中)网络要求所有组件(OpenSearch、Logstash、Filebeat、Dashboards)需处于同一 VPC 内,确保内网通信顺畅配置安全组,开放必要端口(如:OpenSearch 默认 9200、Dashboards 默认原创 2025-04-01 09:46:27 · 930 阅读 · 0 评论 -
zsh安装以及安装配置oh-my-zsh&安装zsh-autosuggestions&zsh-syntax-highlighting
通过以上步骤,你应该可以成功安装并启用 zsh-autosuggestions 和 zsh-syntax-highlighting 插件。oh‑my‑zsh 是一个流行的 zsh 配置框架,提供了许多主题、插件以及易于定制的功能。如果遇到问题,可以查看终端输出的错误信息,根据提示修改配置文件或安装缺少的依赖。此时,oh‑my‑zsh 应该能够找到并加载这两个插件,错误信息也会消失。检查是否启用了 oh‑my‑zsh 以及配置的主题和插件是否生效。oh‑my‑zsh 附带了一系列插件,你可以在。原创 2025-03-28 16:53:59 · 709 阅读 · 0 评论 -
@Timed注解的使用方法以及与监控系统集成
Timed注解用于自动记录方法执行时间和调用次数,降低手动采集指标的复杂度。它与 Micrometer 集成,可以将数据上报到 Prometheus 等监控系统。配置 Spring Boot Actuator 和相应的监控后端后,你就可以实时监控方法性能,为系统优化和故障排查提供数据支持。原创 2025-03-27 18:20:23 · 508 阅读 · 0 评论 -
groovy和java
Groovy 是一种运行在 JVM(Java Virtual Machine)上的动态语言,兼具和。它可以无缝与 Java 代码互操作,并且在构建脚本、DSL(领域特定语言)、测试以及 Web 开发中被广泛使用。原创 2025-03-25 10:53:04 · 283 阅读 · 0 评论 -
EasyExcel自定义合并单元格多行合并根据自定义字段RowWriteHandler以及CellWriteHandler实现方式
原文转载自这里在此基础上进行了调整。原创 2025-03-17 17:06:38 · 476 阅读 · 0 评论 -
Caffeine+Redis 实现百万 QPS技术方案
多级缓存方案可以有效降低数据库访问压力,提高响应速度,并支持百万级 QPS。通过利用 Caffeine 的本地高速缓存和 Redis 的分布式扩展能力,可以在高并发场景下获得较高的缓存命中率,同时通过延时双删等策略保证数据的一致性。此方案适用于需要实时数据访问和高并发查询的大型分布式系统。原创 2025-03-14 11:13:18 · 354 阅读 · 0 评论 -
Apache Flink介绍
Flink 工作流程:从数据输入(Source)到数据转换处理(Transformations)、状态管理与 Checkpoint,再到数据输出(Sink),构成完整的流处理体系。基础组件:包括 JobManager、TaskManager、状态后端、Checkpoint 机制、Source/Sink Connectors、以及 Watermark 机制等。优点:Flink 提供统一的流批处理 API、强大的状态管理和容错能力,非常适合实时数据分析、流式 ETL 和事件驱动应用。使用场景。原创 2025-03-14 10:16:43 · 284 阅读 · 0 评论 -
缓存数据一致性问题,延迟双删策略
延迟双删策略通过在数据库更新后延时第二次删除缓存,来降低并发环境中缓存不一致的风险。推荐的延迟窗口通常在 100 毫秒到 500 毫秒之间,初始设置可以为 200-300 毫秒,具体值需根据实际数据库更新延时、系统并发情况和缓存响应时间进行调优。通过这种策略,可以尽可能保证缓存与数据库数据的一致性,减少“脏数据”问题。具体设置窗口时间可以根据实际情况判定。原创 2025-03-13 10:44:52 · 522 阅读 · 0 评论 -
在高并发系统中如何保证一条消息只能被消费一次
中间件层如果条件允许,使用支持事务的消息系统(如 Kafka 的事务机制)以减少重复消息发送。配置手动提交 offset 和合适的重试机制。消费者端幂等设计强制每条消息携带全局唯一标识,并在业务处理前做去重检查。利用分布式锁或数据库事务确保同一消息只被一个消费者处理。业务处理设计确保业务逻辑具有幂等性,即使同一消息被处理多次,结果也不会重复或冲突。监控与日志配置完善的监控和日志系统,实时监控消息消费情况和重复消费情况,以便快速定位和解决问题。原创 2025-03-10 20:57:52 · 452 阅读 · 0 评论 -
clickhouse和cassandra数据库介绍
在大数据时代,不同的数据库针对不同场景有着各自的优势。ClickHouse 和 Apache Cassandra 分别代表了 OLAP 分析型数据库和高并发写入的 NoSQL 数据库。下面将详细介绍这两者的基本特性、主要优势与劣势,并通过对比表展示两者的关键区别。类型:开源的列式存储数据库,专为在线分析处理(OLAP)设计。开发者:由俄罗斯搜索引擎公司 Yandex 开发,并开源。核心目标:极速处理海量数据的聚合、过滤和分析查询,适合大规模数据分析场景。类型。原创 2025-03-10 20:37:26 · 489 阅读 · 0 评论 -
Spring boot分库分表方案
高并发处理能力:通过水平扩展、多节点部署和负载均衡,实现海量并发请求的处理。高可用与容错:采用分布式架构和冗余设计,确保单点故障不会影响整体系统运行。分库分表策略:对大数据量表进行水平分库分表,降低单库单表的访问压力,提高查询和写入性能。缓存层:利用分布式缓存(如 Redis)存储热点数据,减少对数据库的直接访问。异步处理:利用消息队列和异步机制,解耦业务处理,提高系统响应速度。| 客户端/网关层 |v| 负载均衡器 (Nginx) || | |v v v。原创 2025-03-06 09:45:45 · 695 阅读 · 0 评论 -
结合滑动窗口算法实现基于历史趋势预测限流策略
通过结合滑动窗口算法、PID 控制器和令牌桶限流,我们可以实现一个自适应限流器,该限流器能根据系统历史负载趋势动态调整限流参数。滑动窗口算法:实时统计一定时间窗口内的请求数量(如平均 QPS),为反馈控制提供数据支持。PID 控制器:根据目标与实际指标计算误差,通过比例、积分、微分算法计算出一个调整量。令牌桶限流:根据 PID 输出调整令牌生成速率,从而控制进入系统的请求数。中间件支持。原创 2025-02-14 09:59:53 · 567 阅读 · 0 评论 -
令牌桶限流器和PID结合使用的一些细节
PID(比例-积分-微分)控制器用于根据误差调整令牌桶速率,使系统负载保持在设定目标范围内。利用 PID 控制器动态调整令牌桶的速率,实现自适应限流。方案,能够根据系统负载自动调整限流策略。这样,我们就实现了一个。原创 2025-02-14 09:53:08 · 525 阅读 · 0 评论 -
怎么做自适应限流
基本原理自适应限流采用闭环反馈控制,根据实时监控数据(如响应时间、错误率)与目标值计算误差。使用 PID 控制器(比例、积分、微分)计算调整量,动态修改限流参数。关键算法令牌桶算法:通过令牌生成控制请求流量。PID 控制算法:根据误差计算调整输出,实现动态速率控制。技术实现通过线程安全的令牌桶实现请求控制。通过 PID 控制器计算输出,用于实时调整令牌生成速率。将这两者结合构建一个自适应限流器。中间件选择Bucket4j及。原创 2025-02-14 09:39:45 · 1032 阅读 · 0 评论