美文网首页
Vert.x+CC-Topology实现简易RouterOS拓扑

Vert.x+CC-Topology实现简易RouterOS拓扑

作者: javacoo | 来源:发表于2023-05-01 16:30 被阅读0次

    由于工作涉及到卸数,分案,对程序处理的速度和性能要求较高,虽然目前基本满足需求,但随着业务的不断扩展,数据量的不断增加,终究会达到系统处理的瓶颈,且目前卸数,分案这两块相对独立的功能与业务管理系统耦合在一起,迭代,维护,运行都难免受到影响,所以后续计划将卸数,分案功能独立出来,作为单独工程迭代维护,独立部署。为此 结合业务特点综合考虑经济,性能,开发难易程度等方面因素,选择一个合适的开发框架至关重要。经过一番调研,最终Vert.x比较适合我们的应用场景,为了验证和了解Vert.x相关组件功能,熟悉其开发流程,积累开发经验,故基于Vert.x+CC-Topology实现了一个简易RouterOS拓扑图工具,以下是一些简单的功能界面上的成果展示。

    介绍

    RouterOS拓扑图工具是一款基于RouterOS通用管理软件云服务配置功能的网络设备运维软件,它可以根据设备间关系自动生成拓扑图,也可以由运维人员手动生成。实时显示拓扑图中设备的状态信息,如:设备型号,软件版本,CPU占用,上线时长,接收速率,发送速率,刷新时间等信息。还可以针对每台设备实时下发脚本,并由设备自动执行。也可以备份每台设备的配置信息,以免设备配置数据丢。可导出,导入拓扑图。可选择连线显示的信息来源端口等,总之它可以帮助运维人员随时掌握网络中设备的最新状态,完成一些时常的简单运维任务。

    软件架构

    RouterOS拓扑图价架构.png

    交互流程

    拓扑图.png

    安装环境

    1. 设备与拓扑图工具需打通网络。

    2. 通过RouterOS通用管理软件的云服务配置功能,配置拓扑图工具服务地址及端口

    功能说明

    1. 监控界面主要包括以下功能:左侧->编辑,刷新,定时刷新。右侧->放大,缩小,适应画布,实际尺寸,下载图片,导航器。

      • 编辑:点击编辑按钮,则进入编辑状态。

      • 刷新:点击刷新按钮,则刷新当前拓扑图节点数据,防止服务端推送不及时,设备状态信息更新延迟。

      • 定时刷新:刷新功能的自动版本,可以选择刷新频率:1,5,10,30分钟,也可选择关闭。

      • 右侧功能主要是对拓扑图界面的控制以及拓扑图下载。

    2. 编辑界面主要包括以下功能:左侧->返回,保存,自动绘制,导入,导出。右侧->撤销,重做,复制,粘贴,删除,放大,缩小,适应画布,实际尺寸,线条选择,导航器。

      • 返回:即返回监控界面。

      • 保存:保存当前绘制的拓扑图。

      • 自动绘制:根据当前网络中在线设备推送上来的设备report信息,确定相互关系,自动生成拓扑图。

      • 导入:导入通过导出功能导出的拓扑图json文件。

      • 导出:将当前拓扑图导出为json格式文件。

      • 右侧功能主要是完成拓扑图绘制的相关工具。

    系统截图

    1. RouterOS通用管理软件,云服务配置界面
    config.png
    1. RouterOS拓扑图工具实时监控界面
    index.png
    1. RouterOS拓扑图工具编辑界面

      1. 画布状态

        edit_1.png
      2. RouterOS拓扑图工具节点编辑状态

      edit_2.png
      1. RouterOS拓扑图工具自动绘制状态(缩小)

        edit_3.png

    总结

    总体来说Vert.x真的香啊!

    • Vert.x单个服务打包完成后大约7M左右的JAR,不依赖Tomcat、Jetty之类的容器,直接在JVM上跑。
    • Vert.x消耗的资源很低,一个1核2G的服务器已经能够部署许多个Vert.x服务。除去编码方面的问题,真心符合小项目和小模块。

    不过对于数据库操作多的应用,还需慎重选择。

    最后:仁者见仁,不喜勿喷,谢谢

    相关文章

      网友评论

          本文标题:Vert.x+CC-Topology实现简易RouterOS拓扑

          本文链接:https://www.haomeiwen.com/subject/skbojdtx.html