开源倾情奉献:基于.NET打造IP智能网络视频监控系统(四)服务端介绍

简介:

开源倾情奉献系列链接

服务端介绍

目前在服务端实现了 4 个 WCF 服务:

  • ServiceDiscovery(简称 SVD)
  • DeviceConnector(简称 DVC)
  • DeviceProfile(简称 DPS)
  • MediaPublisher(简称 MPS)

服务建议启动顺序

  1. SVD - 服务发现目前有时后启动不太稳定,暂时没有调试这个问题。
  2. DVC
  3. DPS
  4. MPS

Service Discovery Service

SVD 服务实现 WCF Discovery ,当有服务上线时接收注册,并通过服务接口实现向外提供检索指定类型服务的功能。

复制代码
1   [ServiceContract(SessionMode = SessionMode.Allowed)]
2   [ManagedServiceContract]
3   public interface IServiceDiscoveryService
4   {
5     [FaultContract(typeof(ServiceDiscoveryServiceFault))]
6     [OperationContract]
7     GetServicesResponse GetServices(GetServicesRequest request);
8   }
复制代码

Device Connector Service

DVC 服务负责提供接口创建、连接、保活摄像机设备。

  1. 使用 Gimela.Data.MagpieDatabase 文档数据库进行本地数据存取。
  2. 使用 Gimela.Media.Video 进行媒体流数据的建立。
  3. 使用 Gimela.Net.Rtp 进行媒体流的封装。
  4. 使用 Gimela.Net.Sockets 进行媒体流的传输。
  View Code

Device Profile Service

DPS 服务暴露简洁的接口,对外提供摄像机的基本信息,主要用以屏蔽或代理 DVC 服务。

  View Code

Media Publisher Service

MPS 服务负责配置摄像机的媒体流的发布。

复制代码
 1   [ManagedServiceContractAttribute]
 2   [ServiceContract(SessionMode = SessionMode.Allowed)]
 3   public interface IMediaPublisherService
 4   {
 5     /// <summary>
 6     /// 获取已发布摄像机的信息
 7     /// </summary>
 8     /// <param name="request"></param>
 9     /// <returns></returns>
10     [OperationContract]
11     [FaultContract(typeof(MediaPublisherServiceFault))]
12     GetPublishedCamerasResponse GetPublishedCameras(GetPublishedCamerasRequest request);
13 
14     /// <summary>
15     /// 发布摄像机视频流至指定接收器
16     /// </summary>
17     /// <param name="request"></param>
18     /// <returns></returns>
19     [OperationContract]
20     [FaultContract(typeof(MediaPublisherServiceFault))]
21     PublishCameraResponse PublishCamera(PublishCameraRequest request);
22 
23     /// <summary>
24     /// 取消发布摄像机视频流
25     /// </summary>
26     /// <param name="request"></param>
27     /// <returns></returns>
28     [OperationContract]
29     [FaultContract(typeof(MediaPublisherServiceFault))]
30     UnpublishCameraResponse UnpublishCamera(UnpublishCameraRequest request);
31   }
复制代码
目录
相关文章
|
10月前
|
机器学习/深度学习 算法 调度
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
664 0
|
前端开发 JavaScript 关系型数据库
使用 OpenAuth.Net 快速搭建 .NET 企业级权限工作流系统
使用 OpenAuth.Net 快速搭建 .NET 企业级权限工作流系统
356 0
|
9月前
|
网络协议 Linux 虚拟化
配置VM网络:如何设定静态IP以访问主机IP和互联网
以上就是设定虚拟机网络和静态IP地址的基本步骤。需要注意的是,这些步骤可能会因为虚拟机软件、操作系统以及网络环境的不同而有所差异。在进行设定时,应根据具体情况进行调整。
636 10
|
监控 安全 Go
使用Go语言构建网络IP层安全防护
在Go语言中构建网络IP层安全防护是一项需求明确的任务,考虑到高性能、并发和跨平台的优势,Go是构建此类安全系统的合适选择。通过紧密遵循上述步骤并结合最佳实践,可以构建一个强大的网络防护系统,以保障数字环境的安全完整。
254 12
|
监控 安全 网络安全
网络安全新姿势:多IP配置的五大好处
服务器配置多IP地址,既能提升网络速度与安全性,又能实现多站点托管和故障转移。本文详解多IP的五大妙用、配置方法及进阶技巧。从理论到实践,合理规划IP资源,让服务器性能跃升新高度。
397 2
|
SQL 监控 安全
网络安全与信息安全:漏洞、加密与安全意识
随着互联网的迅猛发展,网络安全和信息安全问题日益受到关注。本文深入探讨了网络安全漏洞、加密技术以及提高个人和组织的安全意识的重要性。通过分析常见的网络攻击手段如缓冲区溢出、SQL注入等,揭示了计算机系统中存在的缺陷及其潜在威胁。同时,详细介绍了对称加密和非对称加密算法的原理及应用场景,强调了数字签名和数字证书在验证信息完整性中的关键作用。此外,还讨论了培养良好上网习惯、定期备份数据等提升安全意识的方法,旨在帮助读者更好地理解和应对复杂的网络安全挑战。
|
SQL 安全 网络安全
网络安全与信息安全:知识分享####
【10月更文挑战第21天】 随着数字化时代的快速发展,网络安全和信息安全已成为个人和企业不可忽视的关键问题。本文将探讨网络安全漏洞、加密技术以及安全意识的重要性,并提供一些实用的建议,帮助读者提高自身的网络安全防护能力。 ####
520 17
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将从网络安全漏洞、加密技术和安全意识三个方面进行探讨,旨在提高读者对网络安全的认识和防范能力。通过分析常见的网络安全漏洞,介绍加密技术的基本原理和应用,以及强调安全意识的重要性,帮助读者更好地保护自己的网络信息安全。
384 10
|
存储 SQL 安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将介绍网络安全的重要性,分析常见的网络安全漏洞及其危害,探讨加密技术在保障网络安全中的作用,并强调提高安全意识的必要性。通过本文的学习,读者将了解网络安全的基本概念和应对策略,提升个人和组织的网络安全防护能力。

热门文章

最新文章