随笔分类 -  心情文字

摘要:大家好,我是勇哥。最近,我花了两个月时间重写了我们的短信服务项目(知识星球版本)。这次重构主要基于几个核心需求: 不同类型的短信需要发送隔离 营销短信、验证码短信和通知短信的时效性要求不同,需要从队列、拉取、消费到发送的链路完全独立。 渠道配置需要更灵活 不同短信渠道(如腾讯云、阿里云)的配置项不同 阅读全文
posted @ 2026-01-11 16:30 勇哥编程游记 阅读(20) 评论(0) 推荐(0)
摘要:在日常开发中,我们经常需要处理文件上传、下载、存储与访问的场景,比如图片、视频、日志文件、模型数据集等。传统的文件系统难以满足高并发、分布式部署以及云原生化的需求。而 MinIO 作为一款高性能、轻量级、兼容 Amazon S3 协议的对象存储服务,正是为此而生。 本文将带你从零开始,通过 Dock 阅读全文
posted @ 2025-10-14 21:10 勇哥编程游记 阅读(834) 评论(0) 推荐(1)
摘要:这篇文章,分享一个开源项目:sensitive-word 。 Github 地址:https://github.com/houbb/sensitive-word sensitive-word 是一个功能强大的 Java 敏感词过滤框架,它不仅提供了基础的敏感词检测功能,还支持单词标签分类分级、繁简体 阅读全文
posted @ 2025-10-08 22:49 勇哥编程游记 阅读(570) 评论(0) 推荐(2)
摘要:在日常开发中,我们经常会遇到需要根据不同条件执行不同逻辑的场景,导致代码中出现大量的if/else嵌套。这不仅降低了代码的可读性和可维护性,还会增加后续扩展的难度。 本文将介绍四种优雅的设计模式来优化这种"条件爆炸"问题: 1 策略模式 01 概念 首先我们来看下策略模式的定义。 策略模式(Stra 阅读全文
posted @ 2025-09-29 18:05 勇哥编程游记 阅读(743) 评论(0) 推荐(4)
摘要:负载均衡(Load Balancing)是一种计算机网络和服务器管理技术,旨在分配网络流量、请求或工作负载到多个服务器或资源,以确保这些服务器能够高效、均匀地处理负载,并且能够提供更高的性能、可用性和可扩展性。 这篇文章,我们聊聊六种通用的负载均衡算法。 1 轮询 (Round Robin) 轮询是 阅读全文
posted @ 2025-09-01 01:21 勇哥编程游记 阅读(488) 评论(0) 推荐(0)
摘要:项目地址:https://github.com/makemyownlife/magic-admin 1 项目背景 从职业生涯伊始,我一直是微服务架构的坚定拥趸,这很大程度上源于长期深耕互联网行业,习惯了高并发、分布式架构下的开发模式。 然而,去年在优化某航空公司核心用户中心系统时,我的技术认知受到了 阅读全文
posted @ 2025-07-30 20:50 勇哥编程游记 阅读(1542) 评论(6) 推荐(3)
摘要:项目地址:https://github.com/makemyownlife/magic-admin 笔者在知乎、Github 上搜索不少快速开发框架 ,很多的话题都绕不开若依 RuoYi 。 开源世界 RuoYi 单体框架有三个不同的项目,分别是:ruoyi-vue 、ruoyi-vue-plus 阅读全文
posted @ 2025-05-11 01:22 勇哥编程游记 阅读(6166) 评论(5) 推荐(9)
摘要:这篇文章,我们聊聊 四种实时通信技术:短轮询、长轮询、WebSocket 和 SSE 。 1 短轮询 浏览器 定时(如每秒)向服务器发送 HTTP 请求,服务器立即返回当前数据(无论是否有更新)。 优点:实现简单,兼容性极佳 缺点:高频请求浪费资源,实时性差(依赖轮询间隔) 延迟:高(取决于轮询频率 阅读全文
posted @ 2025-04-23 21:52 勇哥编程游记 阅读(1183) 评论(2) 推荐(5)
摘要:这篇文章,分享一款替代 GitLab 的开源软件 gogs ,Github 上有 4 万多颗 star ,笔者认为它非常优秀 ,适合中小企业。 1 Gogs 简介 Gogs 是一款极易搭建的自助 Git 服务,它使用 Go 语言开发,只要 Go 语言支持的平台它都支持,包括 Linux 、Mac O 阅读全文
posted @ 2025-03-29 21:23 勇哥编程游记 阅读(275) 评论(0) 推荐(0)
摘要:当资源对象的创建/销毁比较耗时的场景下,可以通过"池化"技术,达到资源的复用,以此来减少系统的开销、增大系统吞吐量,比如数据库连接池、线程池、Redis 连接池等都是使用的该方式。 Apache Commons Pool 提供了通用对象池的实现,用于管理和复用对象,以提高系统的性能和资源利用率。 1 阅读全文
posted @ 2025-01-22 21:09 勇哥编程游记 阅读(702) 评论(0) 推荐(1)
摘要:同学们在准备系技术面试,或者想了解架构底层工作原理时,经常不知道如何进行体系化的学习。 今天给大家推荐一个开源项目:system-design-101,这个项目的宗旨是:将复杂系统通过图片和简单术语进行解释,帮助你准备系统设计面试。 Github 地址: https://github.com/Byt 阅读全文
posted @ 2024-11-21 11:39 勇哥编程游记 阅读(1394) 评论(0) 推荐(1)
摘要:SPI 全称为 Service Provider Interface,是一种服务发现机制。 SPI 的本质是将接口实现类的全限定名配置在文件中,并由服务加载器读取配置文件,加载实现类。这样可以在运行时,动态为接口替换实现类。正因此特性,我们可以很容易的通过 SPI 机制为我们的程序提供拓展功能。 1 阅读全文
posted @ 2024-10-28 20:54 勇哥编程游记 阅读(484) 评论(0) 推荐(1)
摘要:编写技术文章是程序员分享经验和记录学习成果的重要方式。 为了让写作变得更轻松,有许多实用工具可以帮助提升效率,比如 Markdown 编辑器、画图工具等。 接下来,笔者将介绍四款简单实用的工具,帮助程序员更轻松地编写技术文章。 1 Typora :Markdown 编辑器 Typora 是一款简洁而 阅读全文
posted @ 2024-09-19 22:05 勇哥编程游记 阅读(532) 评论(1) 推荐(0)
摘要:Redis 列表(List)是一种简单的字符串列表,它的底层实现是一个双向链表。 生产环境,很多公司都将 Redis 列表应用于轻量级消息队列 。这篇文章,我们聊聊如何使用 List 命令实现消息队列的功能以及剖析消费者线程模型 。 1 核心流程 生产者使用 LPUSH key element[el 阅读全文
posted @ 2024-09-10 23:20 勇哥编程游记 阅读(858) 评论(2) 推荐(2)
摘要:这篇文章,聊聊一个大家经常使用的编程模式 :Mybatis +「where 1 = 1 」。 笔者人生第一次重大的线上事故 ,就是和使用了类似的编程模式 相关,所以印象极其深刻。 这几天在调试一段业务代码时,又遇到类似的问题,所以笔者觉得非常要必要和大家絮叨絮叨。 1 OOM 事故 笔者曾服务一家电 阅读全文
posted @ 2024-06-02 20:35 勇哥编程游记 阅读(1637) 评论(13) 推荐(1)
摘要:10 几年前,互联网产业蓬勃发展,相比传统 IT 企业,互联网应用每天会产生海量的数据。 如何存储和分析这些数据成为了当时技术圈的痛点,彼时,分库分表解决方案应运而生。 当时最流行的 Java 技术论坛是 javaeye ,有位淘宝的技术人员分享了一篇分库分表的文章 ,这篇文章,我反复看了几十遍,想 阅读全文
posted @ 2024-05-20 22:55 勇哥编程游记 阅读(229) 评论(0) 推荐(0)
摘要:这篇文章,我们聊聊线程安全使用 HashMap 的四种技巧。 1方法内部:每个线程使用单独的 HashMap 如下图,tomcat 接收到到请求后,依次调用控制器 Controller、服务层 Service 、数据库访问层的相关方法。 每次访问服务层方法 serviceMethod 时,都会在方法 阅读全文
posted @ 2024-05-19 23:09 勇哥编程游记 阅读(524) 评论(1) 推荐(2)
摘要:2018 年,做为架构负责人,接到一个架构需求:实现一个简单易用的 RocketMQ SDK 。 因为各个团队 RocketMQ 原生客户端配置起来千奇百怪,有的配置存在风险,各团队负责人都需要一个简洁易用的 RocketMQ SDK 。 我立马调研相关开源的方案,当时 RocketMQ-Sprin 阅读全文
posted @ 2024-05-06 22:57 勇哥编程游记 阅读(452) 评论(0) 推荐(2)
摘要:kkFileView 是一款文件文档在线预览解决方案,采用流行的 Spring Boot 框架构建,易于上手和部署。 该项目基本支持主流办公文档的在线预览,包括但不限于 doc、docx、xls、xlsx、ppt、pptx、pdf、txt、zip、rar,以及图片、视频、音频等格式。 1 Docke 阅读全文
posted @ 2024-05-01 23:19 勇哥编程游记 阅读(2838) 评论(1) 推荐(3)
摘要:Redis Stream 是 Redis 5.0 版本中引入的一种新的数据结构,它用于实现简单但功能强大的消息传递模式。 这篇文章,我们聊聊 Redis Stream 基本用法 ,以及如何在 SpringBoot 项目中应用 Redis Stream 。 1 基础知识 Redis Stream 的结 阅读全文
posted @ 2024-04-15 09:09 勇哥编程游记 阅读(2822) 评论(2) 推荐(2)