发明内容
本发明提供一种多终端集群组网通信控制方法、装置、服务器及集群组网,其主要目的在于解决因SSH协议端口被封,导致无法实现多终端集群组网通信控制的问题。
为实现上述目的,本发明提供的一种多终端集群组网通信控制方法,包括:
利用套接字技术,建立与所述集群组网中的被控端服务器间的通信信道;
通过所述套接字技术监听客户端访问所述集群组网的远程控制指令,对所述远程控制指令进行地址解析,得到所述远程控制指令对应的被控端服务器,并利用所述通信信道,将所述远程控制指令发送到对应的被控端服务器;及
接收所述被控端服务器执行所述远程控制指令得到的执行结果,并将所述执行结果发送到所述客户端。
可选地,所述建立与所述集群组网中的被控端服务器间的通信信道,包括:
利用网络通信协议,分别创建所述主控端服务器网络地址和所述被控端服务器网络地址;
利用所述套接字技术,创建所述主控端服务器、所述被控端服务器、所述主控端服务器网路地址、所述被控端服务器网络地址间的关联关系,得到所述主控端服务器与被控端服务器间的通信信道。
可选地,所述创建所述主控端服务器网络地址和所述被控端服务器网络地址,包括:
从所述集群组网中,分别为所述主控端服务器和被控端服务器指定一个端口;
利用网络通信协议,将所述主控端服务器IP地址与所述主控端服务器的端口进行绑定,得到主控端服务器网络地址;
利用网络通信协议,将所述被控端服务器IP地址与所述被控端服务器的端口进行绑定,得到被控端服务器网络地址。
可选地,创建所述主控端服务器、所述被控端服务器、所述主控端服务器网路地址、所述被控端服务器网络地址间的关联关系,包括:
将部署在所述主控端服务器上的实时通信模块与所述主控端服务器网络地址进行关联;
将部署在所述被控端服务器上的实时通信模块与所述被控端服务器网络地址进行关联;
将所述集群组网中所有所述被控端服务器网络地址与部署在所述主控端服务器上的实时通信接口进行关联,得到所述主控端服务器与被控端服务器间的通信信道。
可选地,所述通过所述套接字技术监听客户端访问所述集群组网的远程控制指令,包括:
通过部署在所述主控端服务器上的实时通信接口监听访问所述集群组网的远程控制指令;
若监听到客户端访问所述集群组网的远程控制指令,则接收所述远程控制指令;
通过所述实时通信接口,将所述远程控制指令转发到部署在所述主控端服务器上的实时通信模块。
可选地,所述利用所述通信信道,将所述远程控制指令发送到对应的被控端服务器,包括:
通过部署在所述主控端服务器上的实时通信模块,将所述远程控制指令发送到部署在所述主控端服务器上的实时通信接口;
通过所述实时通信接口,根据所述被控端服务器网络地址,将所述远程控制指令发送到对应被控端服务器。
可选地,所述接收所述被控端服务器执行所述远程控制指令得到的执行结果,并将所述执行结果发送到所述客户端,包括:
接收所述被控端服务器执行所述远程控制指令得到的执行结果;
通过部署在所述被控端服务器上的实时通信模块,将所述执行结果转发到部署在所述主控端服务器上的实时通信接口;
通过所述实时通信接口,转发所述执行结果到所述客户端。
第二方面,本发明提供了一种多终端集群组网通信控制装置,包括:
通道建立模块,用于利用套接字技术,建立与所述集群组网中的被控端服务器间的通信信道;
指令监听及解析模块,用于通过所述套接字技术监听客户端访问所述集群组网的远程控制指令,对所述远程控制指令进行地址解析,得到所述远程控制指令对应的被控端服务器,并利用所述通信信道,将所述远程控制指令发送到对应的被控端服务器;及
结果反馈模块,用于接收所述被控端服务器执行所述远程控制指令得到的执行结果,并将所述执行结果发送到所述客户端。
第三方面,本发明提供了一种服务器终端,所述服务器终端用于作为集群组网的主控端服务器,其中,所述服务器终端包括:
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现所述多终端集群组网通信控制方法。
第四方面,本发明提供了一种集群组网,所述集群组网包括多个服务器终端,其中一个服务器终端被指定作为主控端服务器,其他服务器终端作为被控端服务器,包括:
所述主控端服务器用于利用套接字技术,建立与所述被控端服务器间的通信信道,利用所述套接字技术监听客户端访问所述集群组网的远程控制指令,对所述远程控制指令进行地址解析,得到所述远程控制指令对应的被控端服务器;
所述被控端服务器用于执行所述远程控制指令,得到执行结果,利用所述通信信道,将所述执行结果回传到所述主控端服务器;
所述主控端服务器还用于将所述执行结果发送到所述客户端。
本申请实施例利用套接字技术构建集群组网的内部通信信道,所述套接字技术可以结合IP地址和端口的通信方式,来实现所述主控端服务器与所述集群组网中的被控端服务器间的通信,而不采用SSH协议端口,这样可以避免因安全考虑,SSH协议端口被封后,客户端无法远程控制所述集群组网。因此,本申请实施例提出的多终端集群组网通信控制方法、装置、服务器及集群组网,可以解决因SSH协议端口被封,导致无法实现多终端组网通信控制的问题。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本申请实施例提供一种多终端集群组网通信控制方法。所述多终端集群组网通信控制方法应用在一个集群组网中。本发明实施例中,所述集群组网可以由多台服务器终端组成,多台服务器终端共用通信信道、共享数据、共同对外提供服务。例如,某企业对外提供二手物品买卖平台,因每日交易业务量大,所述买卖平台,可以采用集群组网方式。
在所述集群组网中,其中一台服务器终端被指定作为主控端服务器,其他服务器终端作为被控端服务器。所述指定可以是由用户随机指定,也可以是根据预设的规则指定。
本发明实施例中,所述服务器终端包括,但不限于:单台服务器、服务器集群、云端服务器或云端服务器集群等。
参照图1所示,为本发明一实施例提供的多终端集群组网通信控制方法的流程示意图。在本实施例中,所述多终端集群组网通信控制方法运行于所述集群组网的主控端服务器中,包括:
S1、利用套接字技术,建立与所述集群组网中的被控端服务器间的通信信道;
本发明实施例中,所述套接字技术(Socket)是指基于TCP/IP(TransmissionControl Protocol/Internet Protocol,传输控制协议/网际协议)协议,利用一种结合IP地址和端口的通信方式,来实现所述主控端服务器与所述集群组网中的被控端服务器间的通信的技术。
所述IP地址可以用来区分所述集群组网中多台服务器终端,即每台服务器终端对应的IP地址不同。所述端口可以用来区分每台服务器终端上运行的多个服务或进程。通常一台服务器终端上会运行多个服务软件,对外提供不同的服务,每个服务软件根据功能不同又可以细分为不同的进程,可以对所述服务或进程指定相应的端口。本发明实施例中,利用所述套接字技术建立通信信道,通过所述通信信道将访问所述集群组网的远程控制指令,路由到指定IP地址的服务器终端,通过所述服务器终端上特定端口实现对所述远程控制指令的读写操作。
详细地,参阅图2所示,所述利用套接字技术,建立与所述集群组网中的被控端服务器间的通信信道,包括:
S11、利用网络通信协议,分别创建所述主控端服务器网络地址和所述被控端服务器网络地址;
详细地,本发明实施例中分别为所述主控端服务器和被控端服务器指定一个端口,利用网络通信协议,将所述主控端服务器IP地址与所述主控端服务器的端口进行绑定,得到主控端服务器网络地址,并利用网络通信协议,将所述被控端服务器IP地址与所述被控端服务器的端口进行绑定,得到被控端服务器网络地址。
S12、利用所述套接字技术,创建所述主控端服务器、所述被控端服务器、所述主控端服务器网路地址、所述被控端服务器网络地址间的关联关系,得到所述主控端服务器与所述被控端服务器间的通信信道。
详细地,本发明实施例利用所述套接字技术,在所述主控端服务器上部署实时通信模块和及实时通信接口,在所述被控端服务器上部署实时通信模块。进一步地,本发明实施例将部署在所述主控端服务器上的实时通信模块与所述主控端服务器网络地址进行关联;将部署在所述被控端服务器上的实时通信模块与所述被控端服务器网络地址进行关联;并将所述集群组网中所有所述被控端网络地址被控端服务器网络地址与部署在所述主控端服务器上的实时通信接口进行关联,得到所述主控端服务器与所述被控端服务器间的通信信道。
本发明实施例中,所述网络通信协议是基于TCP/IP的传输协议,可以是HTTP(Hypertext Transport Protocol,超文本传输)协议或HTTPS(Hypertext TransferProtocol Secure超文本传输安全)协议。本发明实施例中,以HTTP协议为例进行说明,例如,所述主控端服务器IP地址为10.114.1.23,所述主控端服务器的端口为1105,则所述主控端服务器网络地址为http://10.114.1.23:5500。
本发明实施例中,所述主控端服务器端口或所述被控端服务器端口可以复用对应服务器终端上已有的端口,也可以重新指定一个专属的端口,复用已有的端口,对业务服务不会造成影响。
所述实时通信模块是利用所述套接字技术封装的一组接口,提供双向实时通信机制,支持客户端使用不同的浏览器或在不同的移动设备上与所述主控端服务器进行通信。
所述实时通信接口是所述实时通信模块对外暴露的接口,在所述集群组网中,所述客户端、所述主控端服务器、所述被控端服务器之间传递的通信数据,均由所述实时通信接口先接收再转发到所述实时通信模块。
S2、通过所述套接字技术监听客户端访问所述集群组网的远程控制指令,对所述远程控制指令进行地址解析,得到所述远程控制指令对应的被控端服务器,并利用所述通信信道,将所述远程控制指令发送到对应的被控端服务器;
本发明实施例中,普通用户或运维人员可以通过所述客户端远程访问所述集群组网,所述客户端可以是手机终端或电脑终端。例如,运维人员在家通过自己的工作电脑,登录所述二手物品自助买卖平台,修改所述平台的普通用户的权限,其中所述修改所述平台的普通用户的权限,即为所述远程控制指令。
本发明实施例中,所述集群组网的多个所述被控端服务器对外提供的服务可以相同或不同,为实现业务的负载均衡,通常会根据所述远程控制指令,调用相应的所述被控端服务器对外提供服务。
所述远程控制指令携带目的地址信息,所述地址信息指向具体的所述被控端服务。
详细地,参阅图3所示,本发明实施例中,所述S2,包括:
S21、通过所述套接字技术监听客户端访问所述集群组网的远程控制指令;
详细地,本发明实施例通过部署在所述主控端服务器上的实时通信接口监听访问所述集群组网的远程控制指令;若监听到客户端访问所述集群组网的远程控制指令,则接收所述远程控制指令;通过所述实时通信接口,将所述远程控制指令转发到部署在所述主控端服务器上的实时通信模块。
S22、对所述远程控制指令进行地址解析,得到所述远程控制指令对应的被控端服务器;
详细地,本发明实施例调用预安装的文本解析器,通过所述文本解析器对所述远程控制指令进行地址解析,得到所述远程控制指令中携带的目的地信息和用户信息;通过预先配置的业务用户鉴权系统,对所述用户信息进行鉴权;若所述用户不是预先配置的合法用户,拦截所述远程控制指令;若所述用户为预先配置的合法用户,根据所述目的地信息,得到所述被控端服务器标识。
S23、利用所述通信信道,将所述远程控制指令发送到对应的被控端服务器。
详细地,本发明实施例根据所述被控端服务器标识,得到对应的被控端服务器的网络地址;通过部署在所述主控端服务器上的实时通信模块,将所述远程控制指令发送到部署在所述主控端服务器上的实时通信接口;通过所述实时通信接口,根据所述被控端服务器网络地址,将所述远程控制指令发送到对应被控端服务器。
本发明实施例中,所述实时通信接口提供了监听功能,实时监听访问所述主控端服务器端口的所述远程控制指令。
进一步地,所述文本解析器可以利用所述主控端服务器上运行的业务提供的文本解析器,也可以安装新的文本解析器,对所述远程控制指令进行文本解析操作。
所述被控端服务器标识是用来区分所述多终端集群组网中的多个被控端服务器的唯一标志。
所述业务用户鉴权系统,可以利用所述主控端服务器上运行的业务提供的用户鉴权系统,提供对所述远程控制指令对应的用户鉴权的功能。本发明另一个实施例中,可以创建新的用户鉴权系统,对所述远程控制指令对应的用户进行鉴权操作。
S3、接收所述被控端服务器执行所述远程控制指令得到的执行结果,并将所述执行结果发送到所述客户端。
详细地,参阅图4所示,所述S3,包括:
S31、接收所述被控端服务器执行所述远程控制指令得到的执行结果;
S32、利用所述主控端服务器的实时通信接口,将所述执行结果发送到所述客户端。
本发明实施例中,可以利用套接字技术,将所述集群组网中的服务器终端IP地址和端口结合,构建所述集群组网的内部通信信道。其中所述端口可以复用服务器终端上已有的提供业务服务的端口,不采用SSH协议端口,这样可以避免因安全考虑,SSH协议端口被封后,客户端无法远程控制所述集群组网。
同时,本申请实施例支持对访问所述集群组网的用户进行鉴权,可以通过所述集群组网既有的用户鉴权系统,也可以通过构建新的用户鉴权系统,对所述用户进行鉴权,从而保障所述集群组网通信控制的安全性。
因此,本申请实施例提出的多终端集群组网通信控制方法、装置、服务器及集群组网,可以解决因SSH协议端口被封,导致无法实现多终端组网通信控制的问题。
如图5所示,是本发明一实施例提供的多集群组网的通信控制装置的功能模块图。
本发明所述多集群组网的通信控制装置100可以安装于电子设备中。根据实现的功能,所述多集群组网的通信控制100可以包括通道建立模块101、指令监听及解析模块102、结果反馈模块103。本发明所述模块也可以称之为单元,是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。
所述通道建立模块101,用于利用套接字技术,建立与所述集群组网中的被控端服务器间的通信信道。
所述指令监听及解析模块102,用于通过所述套接字技术监听客户端访问所述集群组网的远程控制指令,对所述远程控制指令进行地址解析,得到所述远程控制指令对应的被控端服务器,并利用所述通信信道,将所述远程控制指令发送到对应的被控端服务器。
所述结果反馈模块103,用于接收所述被控端服务器执行所述远程控制指令得到的执行结果,并将所述执行结果发送到所述客户端。
详细地,本发明实施例中所述多集群组网的通信控制装置100中的各个模块在使用时采用与上述的图1至图4中所述的通信控制方法一样的技术手段,并能够产生相同的技术效果,这里不再赘述。
如图6所示,是本发明一实施例提供的实现多终端集群组网通信控制方法的服务器终端的结构示意图。
所述服务器终端1可以是集群组网中的主控端服务器。所述服务器终端1包括,但不限于处理器10、存储器11和总线,还可以包括存储在所述存储器11中并可在所述处理器10上运行的计算机程序,如多终端集群组网通信控制程序。
其中,所述存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:SD或DX存储器等)、磁性存储器、磁盘、光盘等。所述存储器11在一些实施例中可以是服务器终端1的内部存储单元,例如该服务器终端1的移动硬盘。所述存储器11在另一些实施例中也可以是电子设备1的外部存储设备,例如服务器终端1上配备的插接式移动硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(Secure Digital,SD)卡、闪存卡(Flash Card)等。进一步地,所述存储器11还可以既包括服务器终端1的内部存储单元也包括外部存储设备。所述存储器11不仅可以用于存储安装于服务器终端1的应用软件及各类数据,例如多终端集群组网通信控制程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
所述处理器10在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述处理器10是所述电子设备的控制核心(Control Unit),利用各种接口和线路连接整个电子设备的各个部件,通过运行或执行存储在所述存储器11内的程序或者模块(例如多终端集群组网通信控制程序等),以及调用存储在所述存储器11内的数据,以执行服务器终端1的各种功能和处理数据。
所述总线可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。所述总线被设置为实现所述存储器11以及至少一个处理器10等之间的连接通信。
图6仅示出了具有部件的主控端服务器,本领域技术人员可以理解的是,图6示出的结构并不构成对所述服务器终端1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
例如,尽管未示出,所述服务器终端1还可以包括给各个部件供电的电源(比如电池),优选地,电源可以通过电源管理装置与所述至少一个处理器10逻辑相连,从而通过电源管理装置实现充电管理、放电管理、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述服务器终端1还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
进一步地,所述服务器终端1还可以包括网络接口,可选地,所述网络接口可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该服务器终端1与其他电子设备之间建立通信连接。
可选地,该服务器终端1还可以包括用户接口,用户接口可以是显示器(Display)、输入单元(比如键盘(Keyboard)),可选地,用户接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在服务器终端1中处理的信息以及用于显示可视化的用户界面。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
所述服务器终端1中的所述存储器11存储的多终端集群组网通信控制程序是多个指令的组合,在所述处理器10中运行时,可以实现:
利用套接字技术,建立与所述集群组网中的被控端服务器间的通信信道;
通过所述套接字技术监听客户端访问所述集群组网的远程控制指令,对所述远程控制指令进行地址解析,得到所述远程控制指令对应的被控端服务器,并利用所述通信信道,将所述远程控制指令发送到对应的被控端服务器;及
接收所述被控端服务器执行所述远程控制指令得到的执行结果,并将所述执行结果发送到所述客户端。
具体地,所述处理器10对上述指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
进一步地,所述服务器终端1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。所述计算机可读存储介质可以是易失性的,也可以是非易失性的。例如,所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。