2025 年底,我进入锐捷网络参与 RG-SAM 企业认证计费与准入控制平台相关开发与维护工作。
相比之前接触的传统业务系统,这套系统最大的不同在于:
这段经历让我真正开始接触:
也让我对“后端开发”有了完全不同的理解。
RG-SAM 是一套企业级 NAC(网络准入控制)与认证计费平台。
系统主要包含:
核心目标是:
实现统一身份认证与网络准入控制。
简单来说:
终端设备接入网络时,需要经过认证,认证成功后才能正常上网。
而系统需要实时维护:
这些业务都属于典型的“强状态系统”。
以前做业务系统时:
大多数问题都比较固定。
比如:
但在 RG-SAM:
很多问题只有在真实网络环境下才会出现。
例如:
这些问题最大的特点是:
很难复现。
很多时候需要:
才能慢慢定位问题。
这是我印象比较深的一次问题。
现场反馈:
首页“在线人数”和“在线趋势”数据不一致。
一开始以为:
是不是 SQL 统计有问题。
但后面分析发现:
两边虽然都和 ONLINE_USER 有关,但并不是同一条链路。
直接统计 ONLINE_USER。
并不是直接查 ONLINE_USER。
而是:
OnlineUserCache → 统计任务 → ONLINE_NUM
也就是说:
趋势数据中间经过了一层缓存与统计沉淀。
最后定位发现:
问题并不在 ONLINE_USER。
而在:
OnlineUserCache 数据不完整。
导致统计任务写入 ONLINE_NUM 的数据偏小。
这次问题让我第一次真正理解:
企业系统里,“缓存链路”本身也是业务系统的一部分。
MAB(MAC Authentication Bypass)本质上是:
通过 MAC 地址完成无感知认证。
系统允许用户绑定多个 MAC。
但现场出现了:
用户 MAB 数量超过最大限制。
理论上:
达到最大值后应该自动淘汰旧 MAC。
但实际数据库里:
有用户存在数百条绑定记录。
后面结合:
分析后发现:
异常数据主要集中在系统升级期间。
最终推测:
升级过程中的批量处理绕过了正常业务限制逻辑。
这类问题和普通 CRUD 最大不同在于:
需要同时理解业务、缓存、数据库和历史数据。
以前虽然知道 Docker。
但真正接触 Kubernetes 是在这段时间。
工作期间经常需要:
kubectl get pods -A
kubectl logs
kubectl exec
查看:
也开始逐渐理解:
很多问题实际上:
并不是代码本身。
而是:
这让我开始意识到:
后端开发并不只是写代码。
还需要理解系统运行环境。
这段时间还有一个很大的变化:
开始大量使用 AI 辅助研发。
以前:
分析问题可能需要:
现在:
可以快速:
但我越来越觉得:
AI 最大的价值不是“替代思考”。
而是:
提高问题分析效率。
真正重要的仍然是:
因为 AI 可以帮你分析。
但最终决定:
还是需要人来判断。
在 RG-SAM 这段经历里,我最大的收获并不是:
“会了多少框架”。
而是:
开始真正理解:
也开始逐渐从:
“功能开发”
向:
“系统分析与问题解决”
转变。
这可能才是后端开发真正有价值的部分。