deskvideosys 办公行为管理软件的部署架构

deskvideosys 办公行为管理软件服务器端使用的是 B/S 架构,采用 golang+vue 框架来编程,agent 端直接使用的是 vc++编程框架,然后通过tcp协议连接服务器端,所以deskvideosys架构 可以作为终端安全管理,上网行为管理,数据防泄漏等产品的基本框架,目前开源代码己经打通了 agent 端与 服务器端的通信,可以在此架构上直接添加代码就可完成二次开发,下图是架构图:

从架构图上能看出,服务端端运行一个 web 服务与一个后端管理服务,Agent 端运行着 Agent 服务,后端管理服务可以接受多个agent服务的连接,

Agent 服务收集终端的数据并管控终端, web 服务主要提供前端展示功能和后端管理服务的通信,后端管理服务采用插件制,主要负责对收集过来数据的清洗与分析,把分析好的数据向 web 端展示,控制前端的命令信息分发给agent 端,

下面大家可以看下web服务的框架代码:

func main() {
        flag.StringVar(&utils.FlagVarConfFile, "config", "", "configure file path")
        flag.Parse()
        tail := flag.Args()
        log.SetPrefix("[DeskVideosys] ")
        log.SetFlags(log.Lshortfile | log.LstdFlags)

        log.Printf("git commit code:%s", gitCommitCode)
        log.Printf("build date:%s", buildDateTime)
        routers.BuildVersion = fmt.Sprintf("%s.%s", routers.BuildVersion, gitCommitCode)
        routers.BuildDateTime = buildDateTime
 

        sec := utils.Conf().Section("service")
        svcConfig := &service.Config{
                Name:        sec.Key("name").MustString("DeskVideosys_Service"),
                DisplayName: sec.Key("display_name").MustString("DeskVideosys_Service"),
                Description: sec.Key("description").MustString("DeskVideosys_Service"),
        }

        httpPort := utils.Conf().Section("http").Key("port").MustInt(10008)
        p := &program{
                httpPort:   httpPort,
        }
        s, err := service.New(p, svcConfig)
        if err != nil {
                log.Println(err)
                utils.PauseExit()
        }
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值