我正在尝试为视频处理系统设计一种分布式体系结构。在这个系统中,有多个摄像头,多个处理工作站(我将它们命名为从节点),并且只有一个主节点。一个或多个摄像头连接到一个从节点,而客户端(最终用户)只知道主节点的IP地址。
我的问题是,如何才能使从属对象对客户端透明?例如,客户端可能想要观看摄像机的实况流。我想通过摄像头所连接的从机来观看。或者客户端可以调用查询(通过主节点),并且结果应该从多个从节点收集。
发布于 2019-08-02 12:54:47
如果不知道一些细节,就很难回答,但以下是一种方法。
如果从节点正在向主节点发送任何类型的消息,例如"Hi I am alive",则主节点能够使用套接字级别调用自动捕获它们的当前IP地址(具体方式取决于语言,在"C“中,在入站连接的套接字上使用GetPeerName() ),并保留活动/最近从节点的列表。
然后,当客户端(最终用户)连接到主节点时,您可以在概述页面上提供许多连接到从节点的超链接。以这种方式,主服务器更像是一个目录,而用户连接到从服务器来查看实际的镜头。(假设采用web类型的技术)
这方面的一个例子是网站insecam.org,它将你链接到公开开放的摄像头。在这种情况下,他们是在扫描摄像头以获取IP地址,但概念应该是清晰的。
https://stackoverflow.com/questions/57254595
复制相似问题