这个一直在维护的项目终于成型了。
排版依旧是很丑……没啥艺术细胞……
Github项目地址:Need For Ping
简介
项目Need For Ping的最终项目,今后所有关于Need For Ping的项目均在此项目中更新。
本项目主要用于对网络稳定性的检测,可用于对不同提供商、不同区域的虚拟主机、VPS等网络稳定性的对比。
项目采用了thinkphp作为框架编写,并使用highcharts作为图表展示。服务器端需要php、mysql服务和linux环境,客户端则几乎对浏览器没有限制。
工作原理
项目工作方式是定时ping远端主机,收集丢包率和延迟,并用图表展示。
软件截图
代码组成
Bash部分
Public\shell下的shell文件负责每2分钟向目的机ping 100个包,收集延迟和丢包率,并保存到mysql数据库中
- needforping.conf负责保存shell所需的配置参数
- needforping.sh负责读取serverlist并调用goping
- goping.sh负责收集延迟和丢包率,并保存到临时文件中
- readline.sh负责将临时文件中的数据转换成为mysql数据
js部分
Public\js下的javascript文件负责数据查询入口和展示
- getquery.js负责ajax查询入口
- draw_LATENCY.js和draw_LOSS.js负责绘制图表框架
- draw_charts负责图表数据绘制
- highcharts 是开源js图表库
php部分
Application\Home\Controller下的php文件负责数据库查询
- IndexController.class.php负责读取查询列表
- QuerydbController.class.php负责返回查询数据
html部分
Application\Home\View\Index下的html文件负责界面展示
- index.html负责首页展示
项目展示
临时Demo 这是一台用旧笔记本改造的linux服务器,网络的稳定性会影响展示效果。以后会提供稳定的服务器做参考
更多细节与更新,请参见Github项目地址:Need For Ping
5 comments
Skip to comment form ↓
洛城东华
2015 年 9 月 1 日 在 上午 11:16 (UTC 8) Link to this comment
右边新浪微博的Widget Title忘改啦~
石樱灯笼
2015 年 9 月 1 日 在 下午 3:56 (UTC 8) Link to this comment
好眼力!
土木坛子
2015 年 9 月 6 日 在 下午 6:53 (UTC 8) Link to this comment
支持。
这服务本身,网上有很多类似的替代。
石樱灯笼
2015 年 9 月 7 日 在 上午 12:20 (UTC 8) Link to this comment
网上是有很多类似功能的替代品。我做这么个玩意主要也是提供一个思路,顺便给自己练练手。
网上多数的类似项目,都各有各的局限性,并不是万能的。我这个也只是有图形化的优点而已。但是只有icmp的ping做检测,还无法体现真实流量的情况。