ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

NetAssistant v1.0.0 正式发布!

NetAssistant v1.0.0 正式发布! 经过一段时间的迭代和用户反馈NetAssistant 终于迎来了v1.0.0 正式版感谢所有用户的支持和 Issue 反馈这个版本带来了多项重磅功能和大量体验优化特别是针对网络调试中常见的痛点做了针对性改进。项目地址https://github.com/sunjary/netassistant 重磅新功能1. 内置高并发压力测试引擎这是 v1.0.0 最重量级的功能现在 NetAssistant 不仅仅是一个调试工具更内置了专业级的 TCP/UDP 压力测试能力帮你快速验证服务端性能。核心特性支持 TCP/UDP 协议压测可配置并发客户端数量和发送速率实时统计面板实时展示 QPS当前/峰值、总发送/成功/失败数量、活跃连接数当前/峰值、断连/重连、收发字节数延迟分位数Ping-Pong 模式p50/p95/p99/平均/最大延迟统计清晰了解性能分布精准定位长尾延迟注意仅在「Ping-Pong往返」模式下显示延迟卡片该模式发送后等待响应才能统计 RTT吞吐模式下不采集延迟变量模板支持${seq}全局递增序号、${worker_id}工作线程ID、${counter}线程本地计数器、${timestamp}毫秒时间戳、${uuid}随机UUID、${random:min:max}区间随机整数构造多样化压测报文hex模式下数值变量自动输出为十六进制格式长短连接模式支持短连接每次请求新建连接和长连接压测令牌桶速率限制精准控制发送频率避免突发流量冲击CSV 报告导出压测结束后导出详细统计报告便于后续分析配置自动保存压测配置自动持久化下次打开自动回填常用压测场景无需重复配置压测引擎采用零 UI 依赖的纯逻辑设计性能出色适用场景自研服务端并发吞吐、延迟分布、稳定性评估上线前性能瓶颈定位极限压力下的鲁棒性测试2. 消息收藏与管理调试过程中遇到关键报文现在可以一键收藏了点击消息上的收藏按钮即可将重要消息加入收藏夹支持为收藏项添加备注说明标记这条消息的用途和含义收藏列表支持关键字搜索即使收藏了很多消息也能快速定位收藏配置自动持久化重启应用不丢失3. 日志记录与消息导出重要的调试过程需要留存记录v1.0.0 提供了两种记录方式满足不同场景日志实时记录手动开启点击「日志记录」开关即可开始记录再次点击关闭开启后所有收发消息实时异步写入日志文件每条消息自动flush落盘不阻塞 UI日志文件命名规则{协议}_{地址}_{端口}_{数字序号}.log自动递增序号不覆盖默认保存到文档/NetAssistant/logs/目录日志路径支持自定义修改点击旁边的铅笔编辑按钮即可更改保存位置日志文件名可点击直接打开日志所在目录断开连接时自动刷新并关闭日志文件确保数据完整写入随时手动导出不需要一直记录日志也可以随时点击导出按钮手动导出当前消息记录支持三种导出格式TXT方便人工阅读和归档JSON结构化数据便于程序处理CSV表格格式可用 Excel 打开做统计分析导出包含完整消息历史、时间戳、方向、源地址等信息4. JSON 格式化与美化调试 JSON 格式接口时一长串压缩的 JSON 根本没法看v1.0.0 提供了完善的JSON格式化功能发送端格式化在文本输入模式下输入框旁提供「美化」和「压缩」按钮可以在发送前格式化你要发送的JSON内容接收端显示切换顶部工具栏提供「格式:原始/美化/压缩」切换按钮可以一键切换所有消息的显示格式原始原样显示美化2空格缩进换行层次清晰易读压缩去除所有空格换行紧凑展示如果内容不是合法JSON格式化时会原样返回不会出错5. UDP 服务端手动添加客户端UDP 是无连接协议传统 UDP 服务端只能等客户端先发消息才能回复现在这个问题解决了UDP 服务端模式下新增「添加客户端」按钮手动输入目标客户端的IP:端口地址添加完成后即可主动向该地址发送数据内置输入格式校验错误格式实时提示防止误输入6. 连接配置编辑之前保存的连接配置想改地址端口不用删除重建了已保存的连接配置现在支持直接编辑修改右键或点击编辑按钮即可修改地址、端口、协议类型等配置调整配置更方便不用反复创建删除✨ 功能增强与体验优化TCP 解码器大幅优化粘包问题处理更稳定配置界面彻底重构解码器配置对话框重新设计参数配置更直观清晰解码逻辑优化原始数据、行解码、长度前缀解码、JSON 解码都更稳定支持更灵活的参数配置适配更多私有协议格式切换解码器无需断开重连实时生效UDP 场景优化特别针对上位机/物联网设备发现这是一个非常贴心的改进专门为嵌入式和物联网调试设计场景说明在调试上位机、物联网设备、嵌入式模块时经常需要向广播地址如192.168.1.255发送设备发现指令此时局域网内的多个设备会从各自不同的 IP 地址回复响应。之前的问题这些回复的源地址与发送目标广播地址不一致属于非预期地址会被过滤或忽略导致设备发现时根本看不到回复v1.0.0 的改进UDP 客户端移除了源地址过滤所有发送到绑定端口的数据包都会正常接收显示包括广播回复对于来自非预期地址的回复源地址用浅红色高亮显示鼠标悬停提示「非预期地址的回复」这样既不会丢失设备发现的重要响应又能清晰区分哪些是目标地址的正常回复哪些是广播场景下其他设备的响应这个改进让局域网设备发现、多设备响应场景的调试变得顺畅很多消息显示优化消息内容改用JetBrains Mono 等宽字体字节对齐更整齐十六进制和文本模式可读性大幅提升消息列表渲染性能优化即使压测产生大量消息UI 依然保持流畅消息复制按钮功能恢复并优化复制更可靠跨平台体验改进Linux 修复解决了 GNOME 桌面环境下窗口无法拖动的问题暗黑/亮色主题切换更流畅主题跟随系统更及时应用退出逻辑重构资源清理更彻底不会残留后台进程断开连接时确保 socket 正确关闭避免端口占用GPUI 框架升级到最新版本整体渲染性能和稳定性提升⚡ 性能提升有意思的是在开发压力测试功能的过程中我们用压测功能对 NetAssistant 自身进行了高并发测试借此发现并修复了多个性能瓶颈消息批量处理优化高并发场景下消息不再逐条触发UI重绘改为批量更新大幅降低CPU占用日志批量写入高消息量场景下日志异步批量写入避免IO成为瓶颈内存优化优化消息存储结构长时间高负载运行内存占用更稳定减少不必要的内存拷贝压测引擎优化工作线程调度更高效支持更高并发速率限制器优化令牌桶算法优化发送速率控制更精准平滑连接管理性能大量连接管理时的状态更新更高效经过这些优化在高并发消息场景下UI依然保持 60fps 流畅同时 NetAssistant 的启动速度 100ms空闲内存 20MB 的轻量特性也得以保留。 安装与升级Windows推荐使用 winget 安装或升级# 首次安装wingetinstallSunJary.NetAssistant# 升级到 v1.0.0winget upgrade SunJary.NetAssistantwinget 支持自动更新后续升级只需一条命令。其他平台直接从 GitHub Release 页面下载对应平台的安装包 https://github.com/sunjary/netassistant/releasesLinux下载netassistant-linux-x64.tar.gz解压后运行./netassistantmacOS下载压缩包解压后拖入 Applications 文件夹首次运行右键选择「打开」 后续计划v1.0.0 是一个里程碑但我们不会停下脚步后续版本计划文件数据源从文件读取发送内容多语言支持十六进制编辑器SSE 调试支持更多数据格式的编解码WebSocket 协议支持欢迎在 GitHub Issues 提出你的需求和建议 最后NetAssistant 从 v0.1.0 一路走来从最初只支持基础 TCP/UDP 通信到 v1.0.0 加入了压测、收藏、导出、日志等完整功能感谢所有用户的反馈和贡献。NetAssistant 的设计理念始终是简单易用但功能强大。无论是网络应用开发、物联网设备对接、嵌入式系统调试还是服务端性能压测它都能成为你的得力助手。如果你在使用中遇到任何问题或者有功能建议欢迎来 GitHub 提 Issue。如果这个工具对你有帮助请给它一个 ⭐️ 支持一下这对我非常重要 https://github.com/sunjary/netassistant祝大家调试愉快Bug 越来越少 v1.0.0 界面一览NetAssistant v1.0.0 — 让网络调试更简单
返回列表