【复盘】2024年终总结
工作
重构风控系统
今年上半年其实就是整体重构系统,经历了多次加班的,其中的辛酸苦辣只有自己知道,现在来看的话,其实对自己还有一定的成长,从这件事情上也明白 绩效能不能拿到A,在分配的任务的时候就决定了。重构系统其实就是相当于在高速跑的汽车进行加油,如何保证无缝切换,保证应用、实例、数据等各个不出问题。以及通过各种方式进行避免各种可能出现的不可控情况。
- 做之前想清楚,列好对应的todo list,截止时间、分清责任人
- 多去想想可能的情况,以及可能出现情况的时候如何解决。
- 上下游系统的API对接兼容,以及职场中各种扯皮的事情等。
我们大概是这样做的,一部分人进行新需求的对接,另外一部分人进行系统重构,分阶段开发,一部分完成先上线。灰度->验收-> 分阶段切流等。用了半年左右的时间完成系统的迁移。
监控系统完善
在系统迁移完毕之后,就开始完善系统的监控报警体系,基本都是业界的参考哪些方式。当系统出现问题时,可以更直观的看到哪里出现问题。
重复的事情不要过三,对于重复的事情 我们要尽量自动化,不仅仅可以提升效率,也可以有更多时间做其他时间。
学习
回顾今天的学习主题,其实主要就是两部分 一个是八股文 MySQL 以及框架中间件源码的阅读。构建了自己对软件设计的知识体系以及大量阅读相关优秀框架、中间件源码,完善自己的技能树。感兴趣的朋友可以star下 。
技能树
https://github.com/qxlx/skill-tree
整体来说其实就是JUC->Spring->MVC->Tomcat-> mybatis -> cloud -> kafka -> netty 看的源码系列。并且附加 设计模式之美
- 1-4月 juc、jvm、redis、mysql 复盘学习
- 5-6月 spring\mvc\tomcat源码阅读
- 7月 boot\nacos 源码阅读
- 8-9月 netty 源码阅读 (孙帅netty)
- 10月 kafka 源码阅读
- 11-12月 spring 源码阅读(孙帅spring),IOC+AOP+事务
专栏:设计模式之美 (翻来看去 今年看了两遍)、乔新亮的CTO成长复盘、代码精进之路、代码止丑、许式伟的架构(部分)、软件设计之美、职场求生攻略、Spring编程常见错误50例(部分)、王争-(程序员职场生存指南、Java编程之美)专栏、Netty 核心原理剖析与 RPC 实践、深入拆解Tomcat Jetty(部分)、从 0 开始学微服务
以下梳理下自己这一年的一些思考
1.初级程序员在维护代码,高级程序员在设计代码、架构师在重构代码
2.技术方案设计是立足于业务需求的基础上进行设计的
3.优秀的代码后背的设计思想更重要
4.代码之下,不止技术,业务、管理等软实力也重要
5.随时具备离开的能力
25计划
- 1-2月 Myabtis源码,sql-analysis 源码阅读
- 3-4月 JUC写一个小册子,从理论到源码到实践
- 5月 结婚-暂停
- 6-8 月 RPC、Dubbo源码
- 9-10 RocketMQ源码
- 11-12 SpringAlibaba nacos、sentinel、openfeign 、gateway系列源码
其他
- 支付业务课程系列学习
- 王争-代码能力提升训练营、系统设计与架构 训练营、重学计算机专业 训练营
- 专栏
- 左耳听风、郭东白的架构课、周志明的架构课、李智慧 高并发架构实战课 、商业思维案例笔记、从 0 开始学大数据、技术与商业案例解读
- 书籍
- 代码大全、代码整洁之道、架构整洁之道、重构、编写可读代码的艺术、程序员职业素养、代码的未来
- 课外书籍: 明朝那些事
- 25年结婚后,花一周时间进行旅游。
2024文章整理
java基础
【Java基础】聊聊你不知道反射的那些事
【Java基础】聊聊你不知道的注解那些事
【Java基础】动态代理与代理模式哪些事儿
MySQL
【数据库】聊聊explain如何优化sql以及索引最佳实践
【数据库】聊聊InnoDB存储引擎结构
【数据库】聊聊MVCC机制与BufferPool缓存机制
【数据库】聊聊MySQL事务隔离级别与锁机制
【数据库】聊聊常见的索引优化-上
【数据库】聊聊常见的索引优化-下
【MySQL】聊聊自增id用完怎么办?
【MySQL】聊聊全表查询会不会把数据库内存打爆
【数据库】聊聊普通索引和唯一索引怎么选
【MySQL】如何判断一个数据库是否出问题
【MySQL】聊聊你不知道的前缀索引原理以及使用场景
【MySQL】聊聊脏页flush的原理和控制策略
【MySQL】聊聊count的相关操作
【MySQL】聊聊order by 是如何排序的
【MySQL】聊聊MySQL常见的SQL语句阻塞场景
【MySQL】聊聊唯一索引是如何加锁的
【MySQL】一般大厂数据库规约
【MySQL】聊聊数据库是如何保证数据不丢的
并发
【Java并发】聊聊Future如何提升商品查询速度
【Java并发】聊聊活锁
【Java并发】聊聊concurrentHashMap扩容核心流程
【Java并发】聊聊concurrentHashMap的put核心流程
【Java并发】深入浅出 synchronized关键词原理-下
【Java并发】深入浅出 synchronized关键词原理-上
【并发设计模式】聊聊生产者-消费者模式
【并发设计模式】聊聊Thread-Per-Message与Worker-Thread模式
【Java并发】聊聊Disruptor背后高性能的原理
JVM
【JVM】聊聊JVM生产环境常见的OOM问题
【JVM】聊聊常见的JVM排查工具
【JVM】聊聊JVM参数以及调优
【JVM】聊聊垃圾回收之三色标记算法
【Redis】聊聊Redis常见数据类型底层结构
【设计模式】聊聊观察者设计模式原理及应用
源码系列
【tomcat】tomcat系统架构以及核心启动流程
【tcomat】聊聊tomcat是如何打破双亲委派模型进行类加载的
【tomcat】Tomcat如何扩展Java线程池原理
【SpringBoot】SpringBoot核心启动流程源码解析
【SpringBoot】SpringBoot自动装配原理
【SpringBoot】SpringBoot内置Servlet容器源码分析-Tomcat
【Nacos】Nacos服务注册与发现 心跳检测机制源码解析
netty
【Netty】netty启动流程源码解析
【Netty】netty接收、读、写整体过程源码解析
【Netty】ChannelPipeline以及事件执行流程源码解析
【Netty】Netty时间轮实践与源码解析
【Netty】FastThreadLocal比ThreadLocal快之源码解析
【Netty】netty中都是用了哪些设计模式
Kafka 源码阅读
【消息队列】聊聊你不知道的Kafka消费者组重平衡详细流程
【Kafka】聊聊如何做Kafka集群部署方案
【Kafka】Kafka源码解析之producer过程解读
【Kafka】Kafka Producer的缓冲池机制原理
【Kafka】Kafka源码解析之Consumer过程解读
Spring源码系列
【Spring编程常见错误50例】02.原型bean被固定
【Spring编程常见错误50例】03.依赖注入常见错误-上
【Spring编程常见错误50例】03.依赖注入常见错误-下
【方案设计】基于AOP+ThreadLocal 记录耗时接口调用
【Spring编程常见错误50例】04. Spring Bean 生命周期常见错误-上
【Spring】聊聊@EventListener注解原理
【定时任务】定时任务技术实现原理和选型分析
【SpringAOP】深入浅出SpringAOP从原理到源码
【Spring事务】深入浅出Spring事务从原理到源码
相关文章:
【复盘】2024年终总结
工作 重构风控系统 今年上半年其实就是整体重构系统,经历了多次加班的,其中的辛酸苦辣只有自己知道,现在来看的话,其实对自己还有一定的成长,从这件事情上也明白 绩效能不能拿到A,在分配的任务的时候就决…...
QT 学习第十四天 QWidget布局
QT 学习十四天 布局 布局管理Qt Widgets 布局布局管理器简介基本布局管理器栅格布局管理器窗体布局管理器综合使用布局管理器设置部件大小可扩展窗口 布局管理 今天讲 Qt Widgets 和 Qt Quick 中的布局。 前者主要用布局管理器 后者除了布局管理器还有基于锚的布局(…...
各个Spring Cloud版本有何主要差异
Spring Cloud 的各个版本之间确实存在一些关键差异,这些差异主要体现在功能更新、性能优化、对新技术的支持以及对旧有技术的替代等方面。 1. Spring Cloud Dalston 这是 Spring Cloud 的一个早期版本,它提供了微服务架构所需的基本组件,如服…...
开发AI电子宠物 参考资料
开发AI电子宠物涉及多个方面,包括但不限于硬件选择、软件编程、人工智能算法的应用等。下面我将提供一个概览性的指南,并列出一些资源链接,帮助您开始自己的AI电子宠物项目。 AI电子宠物开发教程概览 1. 确定需求与规划 定义目标ÿ…...
数据结构与算法之动态规划: LeetCode 62. 不同路径 (Ts版)
不同路径 https://leetcode.cn/problems/unique-paths/description/ 描述 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “…...
操作系统论文导读(八):Schedulability analysis of sporadic tasks with multiple criticality specifications——具有多个
Schedulability analysis of sporadic tasks with multiple criticality specifications——具有多个关键性规范的零星任务的可调度性分析 目录 一、论文核心思想 二、基本定义 2.1 关键性指标 2.2 任务及相关参数定义 2.3 几个基础定义 三、可调度性分析 3.1 调度算法分…...
Android IO 问题:java.io.IOException Operation not permitted
问题描述与处理策略 1、问题描述 java.io.IOException: Operation not permittedjava.nio.file.FileSystemException: /storage/emulated/0/test/test.txt: Operation not permittedjava.io.IOException: Operation not permitted:异常为操作不被允许 java.nio.f…...
Unity Mesh生成Cube
1. 配置一个Cube的每个面的数据 一共是6个面,每个面包含的数据包括4个顶点的相对顶点坐标(Cube的中心为原点),法线方向,UV坐标,顶点渲染顺序,以及这个面用到的材质,因为这里是Top&am…...
Wend看源码-Java-Collections 工具集学习
摘要 java.util.Collections它提供了一系列静态方法,用于对集合(如List、Set、Map等)进行操作。这些操作包括排序、查找、替换、同步等多种功能,帮助开发者更方便地处理集合数据。以下是Collections 提供的一些主要方法的总结。…...
怎样用 Excel 做数据分析?
与其单纯地学习怎么使用Excel,不如结合AI工具来进行数据分析。 接下来就来盘一盘AI在Excel做数据分析方面会带来哪些改进和帮助。 原本不能非常复杂的公式,变成聊天的方式。Excel门槛被大大降低,以前技术大佬才能干的活,现在前台…...
深度学习——损失函数汇总
1. 连续值损失函数 总结:主要使用胡贝儿损失函数,应用于连续数值的预测之间的误差损失,参考地址 import torch import torch.nn as nna = torch.tensor([[1, 2], [3, 4]], dtype=torch.float) b = torch.tensor([[3, 5], [8, 6]], dtype=torch.float)loss_fn1 = torch.nn.M…...
KAFKA入门:原理架构解析
文章目录 一、认识kafka二、架构介绍2.1 工作流程2.2 Kafka可靠性保证2.3 Kafka存储 一、认识kafka Kafka到底是个啥?用来干嘛的? 官方定义如下: Kafka is used for building real-time data pipelines and streaming apps. It is horizont…...
记录第一次跑YOLOV8做目标检测
今天是24年的最后一天,终于要向新世界开始破门了,开始深度学习,YOLO来敲门~ 最近做了一些皮肤检测的功能,在传统的处理中经历了反复挣扎,终于要上YOLO了。听过、看过,不如上手体会过~ 1、YOLO是什么&#x…...
全场景——(十一)综合实现
文章目录 一、产品框架1.1 硬件框架1.2 设计思路1.2.1 上位机如何定位到传感器1.2.2 上位机如何读写传感器1.2.3 中控如何读写传感器1.2.4 上位机如何发送映射关系、传输固件1.2.5 上位机界面 1.3 软件框架 二、改造libmodbus 实现文件传输2.1 分析Write File Record 功能2.2 实…...
mysql系列7—Innodb的redolog
背景 本文涉及的内容较为底层,做了解即可,是以前学习《高性能Mysql》和《mysql是怎样运行的》的笔记整理所得。 redolog(后续使用redo日志表示)的核心作用是保证数据库的持久性。 在mysql系列5—Innodb的缓存中介绍过:数据和索引保存在磁盘上…...
数据表中列的完整性约束概述
文章目录 一、完整性约束概述二、设置表字段的主键约束三、设置表字段的外键约束四、设置表字段的非空约束五、设置表字段唯一约束六、设置表字段值自动增加七、设置表字段的默认值八、调整列的完整性约束 一、完整性约束概述 完整性约束条件是对字段进行限制,要求…...
深入解析 Wireshark 的 TLS 设置:应用场景与实操技巧
简述 在网络数据分析中,传输层安全(TLS)协议的流量解密和分析是一项重要的技能。Wireshark 提供了专门的设置选项,帮助用户处理 TLS 流量,例如解密会话、重组分片等。本文将详细解析上图所示的 Wireshark TLS 设置功能…...
小波与傅里叶变换在去噪效果上的对比分析-附Matlab源程序
👨🎓 博主简介:博士研究生 🔬 超级学长:超级学长实验室(提供各种程序开发、实验复现与论文指导) 📧 个人邮箱:easy_optics126.com 🕮 目 录 摘要一、…...
Tailwind CSS 实战:社交媒体信息流开发
在社交媒体的世界里,信息流就像是一条永不停歇的河流,承载着用户的分享与互动。记得在一个社交平台项目中,我们通过重新设计信息流的展示方式,让用户的平均浏览时长提升了 45%。今天,我想和大家分享如何使用 Tailwind …...
深入解析:谱分解、SVD与PCA在算法中的应用与实现
特征值分解(EVD)、奇异值分解(SVD)和主成分分析(PCA)是矩阵分解技术的三种重要形式,它们在人工智能中扮演了关键角色。随着数据维度的快速增长和信息复杂度的提升,这些技术为处理高维…...
C#编写的金鱼趣味小应用 - 开源研究系列文章
今天逛网,在GitHub中文网上发现一个源码,里面有这个金鱼小应用,于是就下载下来,根据自己的C#架构模板进行了更改,最终形成了这个例子。 1、 项目目录; 2、 源码介绍; 1) 初始化; 将样…...
Android 系统 AlarmManager 系统层深度定制
Android 系统 AlarmManager 系统层深度定制 目录 引言AlarmManager 概述AlarmManager 系统架构AlarmManager 核心代码解读AlarmManager 深度定制方法 修改 AlarmManagerService 修改定时任务调度策略增加定时任务类型定制内核层 修改定时触发精度增加定时触发类型优化定时任务…...
uniapp-vue3(下)
关联链接:uniapp-vue3(上) 文章目录 七、咸虾米壁纸项目实战7.1.咸虾米壁纸项目概述7.2.项目初始化公共目录和设计稿尺寸测量工具7.3.banner海报swiper轮播器7.4.使用swiper的纵向轮播做公告区域7.5.每日推荐滑动scroll-view布局7.6.组件具名…...
Debian-linux运维-docker安装和配置
腾讯云搭建docker官方文档:https://cloud.tencent.com/document/product/213/46000 阿里云安装Docker官方文档:https://help.aliyun.com/zh/ecs/use-cases/install-and-use-docker-on-a-linux-ecs-instance 天翼云常见docker源配置指导:htt…...
【每日学点鸿蒙知识】tensorflowlite编译、音频编码线程、沉浸式状态栏、TextArea最大字节数限制等
1、如何编译Tensorflow lite库? 之前项目基于tflite推理引擎做人脸识别的功能,鸿蒙侧如何复用tflite模型? tflite对Android和iOS本身支配了GPU支持,但是鸿蒙侧目前并没有,鸿蒙提供了自己的推理引擎,而且支…...
Windows上Git LFS的安装和使用
到Git LFS官网下载 传送门 初始化GitHub LFS和Git仓库 在仓库目录中运行: git lfs install再运行: git init跟踪大文件 git lfs track "*.zip"添加并提交文件 git add . git commit -m "Add large files"上传到我的github 配…...
嵌入式入门Day37
作业 驱动机械臂 #include <myhead.h>#define IP "192.168.124.16" #define SERPORT 8888int main(int argc, const char *argv[]) {//创建套接字int oldfd socket(AF_INET, SOCK_STREAM, 0);if (oldfd -1){perror("socket");return -1;}//连接服…...
MySQL 的事务与多版本并发控制(MVCC)的那些事
什么是事务原子性:一致性隔离性 问题1: 为什么MySQL要使用mvcc实现隔离性而不使用 锁 解决并发问题?持久性 问题2: MySQL 不是磁盘数据库吗,持久化为什么是 redo log 保证的?问题 3: redo log 储存了什么东西,持久化(崩溃恢复是怎么做的?)问题 4 : MySQL 的 bing log (二进制…...
二层交换机和三层交换机
一、交换机简述 交换机的主要功能包括物理编址、网络拓扑结构、错误校验、帧序列以及流控。交换机还具备了一些新的功能,如对VLAN(虚拟局域网)的支持、对链路汇聚的支持,甚至有的还具有防火墙的功能。 交换机除了能够连接同种类型…...
Win32汇编学习笔记01.环境配置
Win32汇编学习笔记01.环境配置-C/C基础-断点社区-专业的老牌游戏安全技术交流社区 - BpSend.net 环境配置 masm32下载 官网:http://www.masm32.com/安装 成功标志 环境配置: 将masm32下的bin目录添加到path新建include,将masm32目录下的in…...
[创业之路-232]:《华为闭环战略管理》-5-组织架构、业务架构、产品架构、技术架构、项目架构各自设计的原则是什么?
目录 一、组织架构设计原则 二、业务架构设计原则 三、产品架构设计原则 四、技术架构设计原则 五、项目架构设计原则 一、各自的组成元素 组织架构、业务架构、产品架构、技术架构、项目架构各自的组成元素具体如下: 组织架构 - 组织企业相似资源的方式&…...
数组方法 | vue修改数组
数组方法 修改原数组 push() 方法(在数组结尾处)向数组添加一个新的元素 var list["数学","历史"]; list.push("英语"); ["数学","历史","英语"]unshift() 方法(在开头&…...
tcp_rcv_synsent_state_process函数
tcp_rcv_synsent_state_process 是 Linux Kernel 中用于处理 TCP 连接在 SYN-SENT 状态下接收到报文的函数。这个函数在 TCP 三次握手阶段起到了至关重要的作用,处理了在客户端发送 SYN 请求之后收到服务器响应报文的各种情况。 以下是这个函数的解读和剖析: int tcp_rcv_sy…...
【Qt】信号和槽机制
目录 1.信号和槽的理解 Qt内置类的继承关系 2.connect方法 参数 使用示例 2.1 disconnect断开信号槽 2.2 查看内置类型的信号和槽 3.自定义槽函数 3.1 代码方式自定义槽函数 3.2 图形化方式自定义槽函数 4.自定义信号 5.带参数的信号和槽 6.信号和槽的关联关系 7…...
【Pytorch实用教程】循环神经网络中使用dropout需要注意的问题
文章目录 问题解答警告的具体含义解决方案示例代码总结问题 UserWarning: dropout option adds dropout after all but last recurrent layer, so non-zero dropout expects num_layers greater than 1, but got dropout=0.3 and num_layers=1 warnings.warn("dropout op…...
展望2025:在创新与协作中创造价值、奉献佳作
2025,就像远方闪耀着希望之光的灯塔,正逐步靠近我们的视野。在这个充满无限潜力的年份里,我们满怀壮志,立志创造更多价值,为大家呈上更多出类拔萃的作品。 往昔岁月,犹如一幅徐徐展开的长卷,上…...
秒鲨后端之MyBatis【3】自定义映射resultMap、动态SQL、MyBatis的缓存、MyBatis的逆向工程、分页插件(30000字)
这里我分享一下尚硅谷的pdf100页笔记和代码,大家可以参考学习。 笔记: 通过网盘分享的文件:MyBatis.pdf 链接: https://pan.baidu.com/s/14Iu1Zs-_5vZoRjBEjmagag?pwdyjh6 提取码: yjh6 --来自百度网盘超级会员v1的分享代码: …...
springboot之集成Elasticsearch
目录 二、Elasticsearch 是什么?三、Elasticsearch 安装四、Springboot 集成 Elasticsearch 的方式五、创建项目集成 Elasticsearch 2.创建 Spring Initializr 项目 es (3).新建实体类 User(4).新建 dao 接口类 UserRe…...
CLIP (Contrastive Language-Image Pre-training)用途及使用方法
CLIP (Contrastive Language-Image Pre-training) 是由 OpenAI 开发的多模态模型,可以同时处理图像和文本。在 Hugging Face 中使用 CLIP 模型主要有以下几个步骤和用途: 安装必要的库: pip install transformers pip install torch pip install Pillow导入所需模…...
2018年西部数学奥林匹克几何试题
2018G1 未完待续… 2018 G2 在 △ A B C \triangle ABC △ABC 中, E E E, F F F 分别在 A B AB AB, A C AC AC 上, 且 B F C E B C BFCEBC BFCEBC. I B I_B IB, I C I_C IC 分别为 ∠ A B C \angle ABC ∠ABC 和 ∠ A C B \angle ACB ∠ACB 所对的旁心, K K…...
华为配置 之 链路聚合
简介: 链路聚合(Link Aggregation)是一种计算机网络技术,通过将多个物理端口汇聚在一起,形成一个逻辑端口,以实现出/入流量吞吐量在各成员端口的负荷分担。当交换机检测到其中一个成员端口的链路发生故障时…...
MIT线性代数教材:Linear Algebra and Its Applications
这本教材是MIT线性代数课程所使用的教材,上课的老师是Gilbert Strang,而教材的作者也是Gilbert Strang。这本书内容比较直观,配图不少,叙述风格比较几何风格。习题也丰富,但并不怎么对我的胃口,因此我也怎么…...
SpringBoot 集成 Activiti 7 工作流引擎
一. 版本信息 IntelliJ IDEA 2023.3.6JDK 17Activiti 7 二. IDEA依赖插件安装 安装BPM流程图插件,如果IDEA的版本超过2020,则不支持actiBPM插件。我的IDEA是2023版本我装的是 Activiti BPMN visualizer 插件。 在Plugins 搜索 Activiti BPMN visualizer 安装 创…...
【数据结构】数据结构简要介绍
数据结构是计算机科学中用于组织、管理和存储数据的方式,以便于高效地访问和修改数据。 数据结构的分类: 数据结构可以大致分为两类:线性结构和非线性结构。 1. 线性结构 线性结构中的数据按顺序排列,每个元素有唯一的前驱和后…...
SQL Server导出和导入可选的数据库表和数据,以sql脚本形式
一、导出 1. 打开SQL Server Management Studio,在需要导出表的数据库上单击右键 → 任务 → 生成脚本 2. 在生成脚本的窗口中单击进入下一步 3. 如果只需要导出部分表,则选择第二项**“选择具体的数据库对象(Select specific database objects)”**&am…...
蓝桥杯JAVA刷题--001
文章目录 题目需求2.代码3.总结 题目需求 2.代码 class Solution {public String convertDateToBinary(String date) {if (date null || date.length() ! 10 || date.charAt(4) ! - || date.charAt(7) ! -) {throw new IllegalArgumentException("输入的日期格式不正确&…...
2025-01-01 NO2. XRHands 介绍
文章目录 软件配置1 XR Hands 简介2 XRHand2.1 Pose2.2 Handedness 3 XRHandJoint3.1 XRHandJointID3.2 XRHandJointTrackingState 4 XRHandSubsystem4.1 数据属性4.1.1 UpdateSuccessFlags4.1.2 UpdateType 4.2 处理器管理:注册和注销4.3 更新手部数据:…...
SQL 实战:复杂数据去重与唯一值提取
在实际开发中,数据重复是常见问题,例如用户多次登录记录、订单状态重复更新等。如何高效提取符合业务需求的唯一值或最新记录,对系统性能和数据准确性至关重要。 本文将探讨如何使用 SQL 的 窗口函数、分组查询 以及 DISTINCT 实现复杂场景下…...
基于BiLSTM和随机森林回归模型的序列数据预测
本文以新冠疫情相关数据集为案例,进行新冠数量预测。(源码请留言或评论) 首先介绍相关理论概念: 序列数据特点 序列数据是人工智能和机器学习领域的重要研究对象,在多个应用领域展现出独特的特征。这种数据类型的核心特点是 元素之间的顺序至关重要 ,反映了数据内在的时…...
基于 SensitiveWordBs 实现敏感词过滤功能
在现代的互联网应用中,敏感词过滤已成为一个必不可少的功能,尤其是在社交媒体、评论审核等需要保证内容健康的场景下。本文将基于开源库https://github.com/houbb/sensitive-word,详细讲解如何通过自定义敏感词库和工具类实现高效的敏感词过滤…...