fscan/Plugins
ZacharyZcR 095437ad1a feat: 实施内存分配优化提升扫描性能
主要优化:
• 创建字符串构建器池,字符串连接性能提升18倍,内存减少99.8%
• 实施切片和Map对象池复用机制,减少频繁内存分配
• 优化SSH凭证生成,预分配切片容量减少58.6%内存使用
• 改进端口扫描和ICMP模块的Map容量预估机制
• 保持100%向后API兼容性

性能改进:
- 字符串操作: 8154ns→447ns (18x提升)
- 内存分配减少: 99.8% (8.3GB→16MB)
- SSH凭证生成: 内存减少58.6%
- 对象池复用率: 100%

新增文件:
+ common/utils/stringbuilder.go - 字符串构建器池
+ common/utils/slicepool.go - 切片对象池
+ common/utils/mappool.go - Map对象池
+ common/utils/benchmark_test.go - 性能基准测试
+ Common/utils/ - 大写版本兼容目录

修改文件:
* Common/Parse.go - 使用优化的字符串连接和去重函数
* Plugins/SSH.go - 凭证生成预分配优化
* Core/ICMP.go - 网段统计Map容量预估
* Core/PortScan.go - 端口排除Map预分配

通过专业基准测试验证,显著改善大规模扫描场景的内存效率和性能表现。
2025-08-07 01:09:54 +08:00
..
ActiveMQ.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
Base.go refactor: 输出格式重构,重构SMB、SMB2、FTP的一些验证逻辑 2025-01-01 05:24:49 +08:00
Cassandra.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
DCInfo.go refactor: 统一包命名规范并清理冗余文件 2025-08-06 01:30:18 +08:00
DCInfoUnix.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
Elasticsearch.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
FindNet.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
FTP.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
IMAP.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
Kafka.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
LDAP.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
LocalInfo.go refactor: 统一包命名规范并清理冗余文件 2025-08-06 01:30:18 +08:00
Memcached.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
MiniDump.go refactor: 统一包命名规范并清理冗余文件 2025-08-06 01:30:18 +08:00
MiniDumpUnix.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
Modbus.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
Mongodb.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
MS17010-Exp.go refactor: 统一包命名规范并清理冗余文件 2025-08-06 01:30:18 +08:00
MS17010.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
MSSQL.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
MySQL.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
Neo4j.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
NetBIOS.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
Oracle.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
POP3.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
Postgres.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
RabbitMQ.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
RDP.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
Redis.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
Rsync.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
SMB2.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
SMB.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
SmbGhost.go refactor: 统一包命名规范并清理冗余文件 2025-08-06 01:30:18 +08:00
SMTP.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
SNMP.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
SSH.go feat: 实施内存分配优化提升扫描性能 2025-08-07 01:09:54 +08:00
Telnet.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
VNC.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00
WebPoc.go refactor: 统一包命名规范并清理冗余文件 2025-08-06 01:30:18 +08:00
WebTitle.go fix: 修复进度条显示错位问题,实现真正的固定底部进度条 2025-08-06 05:00:21 +08:00