服务器与数字电视终端通信的方法及系统的制作方法
【专利摘要】本发明适用于数字电视通信【技术领域】,提供了一种服务器与数字电视终端通信的方法及系统。其中,服务器与数字电视终端通信的方法包括:在服务器与数字电视终端之间建立HTTP的长连接的步骤;在服务器与数字电视终端之间建立与所述HTTP的长连接相关的线程的步骤;当数字电视终端开启,且服务器需要向数字电视终端发送信息时,服务器唤醒所述线程,并向数字电视终端推送所述信息的步骤;以及数字电视终端接收服务器推送过来的信息的步骤。本发明提供的服务器与数字电视终端通信的方法及系统,通过服务器主动推送信息给数字电视终端,能降低服务器负担,并且实现服务器主动传输数据给数字电视终端,以及服务器和数字电视终端的数据互通。
【专利说明】服务器与数字电视终端通信的方法及系统
【技术领域】
[0001]本发明属于数字电视通信【技术领域】,尤其涉及一种服务器与数字电视终端通信的方法及系统。
【背景技术】
[0002]在现有的服务器与数字电视终端通信方法中,一种比较普遍的实现方法是轮询(poll)机制,数字电视终端的浏览器通过运行一个定时程序,按照一定的时间间隔发送HTTP请求到服务器,并且利用异步JavaScript与XML技术(Asynchronous JavaScript andXML,AJAX)动态更新当前页面的文档对象模型(Document Object Model,D0M)。这样一来,浏览器不断的轮询会导致大量无效的HTTP请求,加重web服务器的机器负担。特别是随着客户端数量不断的增长,轮询会带来的大量请求压力。另外,浏览器轮询的定时时间的大小也不容易合理的设置。
[0003]另一种常用的实现方法是基于长轮询方式的Comet模型,其中,Comet是一种用于web的服务器推送技术。这一种实现方法中,服务器始终打开与浏览器的连接,并在数据可用时发送给浏览器。Comet模型与传统的AJAX不同点在于:服务器会阻塞请求,直到有数据传递或超时才返回,即维持长连接;客户端(即,浏览器)响应处理程序会在处理完服务器返回的信息后,再次发出请求,重新建立连接。
[0004]还有一种实现方法是基于HTTP streaming的AJAX实现的Comet模型。该方式与基于长连接的Comet不同之处在于:HTTP streaming重复使用同一个连接,而且永远不关闭这个连接,即,服务器与浏览器之间的TCP连接会一直保持,直到其中一方发送了一条明显的“关闭连接”的信息,或者有超时以及网络错误发生。在浏览器中通过HTTP仅能实现单向的通信,Comet可以一定程度上模拟双向通信,但效率较低,并需要服务器有较好的支持。
【发明内容】
[0005]本发明的目的在于提供一种服务器与数字电视终端通信的方法及系统,旨在解决现有轮询的通信方式导致的大量无效请求加重服务器负担的问题,特别是用户量不断增长带来的服务器压力的问题。
[0006]本发明是这样实现的,一种服务器与数字电视终端通信的方法,包括:在服务器与数字电视终端之间建立HTTP的长连接的步骤;在所述服务器与所述数字电视终端之间建立与所述HTTP的长连接相关的线程的步骤;当所述数字电视终端开启,且所述服务器需要向所述数字电视终端发送信息时,所述服务器唤醒所述线程,并通过所述HTTP的长连接向所述数字电视终端推送所述信息的步骤;以及所述数字电视终端接收所述服务器推送过来的所述信息的步骤。
[0007]较优的,还包括:所述数字电视终端显示所述服务器推送过来的所述信息的步骤。
[0008]较优的,所述服务器是通过WebSocket应用程序编程接口建立所述HTTP的长连接。
[0009]较优的,所述信息为新闻类信息。
[0010]本发明的另一目的在于提供一种服务器与数字电视终端通信的方法,包括:在服务器与数字电视终端之间建立HTTP的长连接的步骤;在所述服务器与所述数字电视终端之间建立与所述HTTP的长连接相关的线程的步骤;所述数字电视终端通过所述HTTP的长连接将用户输入的信息发送给所述服务器的步骤;所述服务器接收所述信息,唤醒所述线程,将与所述信息相关的信息通过所述HTTP的长连接发送给所述数字电视终端的步骤。
[0011]较优的,所述服务器是通过WebSocket应用程序编程接口建立所述HTTP的长连接。
[0012]较优的,所述用户输入的信息为所述用户输入的字符。
[0013]本发明的另一目的在于提供一种服务器与数字电视终端通信的系统,包括服务器以及数字电视终端,其中,所述服务器包括:HTTP长连接建立模块、线程建立模块、线程唤醒模块、以及信息发送模块,所述数字电视终端包括信息接收模块,其中:所述HTTP长连接建立模块,在所述服务器与所述数字电视终端之间建立HTTP的长连接;所述线程建立模块,在所述服务器与所述数字电视终端之间建立与所述HTTP的长连接相关的线程;所述线程唤醒模块,当所述数字电视终端开启,且所述服务器需要向所述数字电视终端发送信息时,唤醒所述线程,并由所述信息发送模块通过所述HTTP的长连接向所述数字电视终端推送所述信息;以及所述信息接收模块,接收所述信息发送模块推送过来的所述信息,并发送给所述显示模块进行显示。
[0014]较优的,所述显示模块是电视机显示屏、电脑显示屏、或数字电视一体机显示屏。
[0015]较优的,所述数字电视终端是机顶盒、数字电视一体机、或网络数字电视。
[0016]本发明提供的服务器与数字电视终端通信的方法及系统,通过服务器主动推送信息给数字电视终端,能降低服务器负担,并且实现服务器主动传输数据给数字电视终端,以及服务器和数字电视终端的数据互通。
【专利附图】
【附图说明】
[0017]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0018]图1是本发明一实施例提供的服务器与数字电视终端通信的方法流程图。
[0019]图2是本发明另一实施例提供的服务器与数字电视终端通信的方法流程图。
[0020]图3是本发明再一实施例提供的服务器与数字电视终端通信的方法流程图。
[0021]图4是本发明一实施例提供的服务器与数字电视终端通信的系统结构示意图。
【具体实施方式】
[0022]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0023]本发明的目的在于提供一种服务器与数字电视终端通信的方法及系统,旨在解决现有轮询的通信方式导致的大量无效请求加重服务器负担的问题,特别是用户量不断增长带来的服务器压力的问题,同时也解决数字电视终端上轮询时间无法合理设置的问题。
[0024]请参见图1,图1是本发明一实施例提供的服务器与数字电视终端通信的方法流程图。如图1所示,服务器与数字电视终端通信的方法100包括:
步骤SlOl:在服务器与数字电视终端之间建立HTTP的长连接。具体来说,服务器通过WebSocket 应用程序编程接口(Applicat1n Programming Interface,以下简称为 API)建立数字电视终端和服务器的通信管道,即,建立HTTP的长连接。其中,WebSocket是在浏览器中实现和服务器端双向通信的一种规范;数字电视终端可以是机顶盒、数字电视一体机、网络数字电视等。HTTP的长连接是指建立了 HTTP连接后,长时间保持,而不断开连接的HTTP连接。
[0025]步骤S103:在服务器与数字电视终端之间建立相关线程。具体来说,在服务器与数字电视终端之间建立与HTTP的长连接相关的线程。
[0026]步骤S105:当数字电视终端开启,且服务器需要向数字电视终端发送信息时,月艮务器唤醒相关线程,并向数字电视终端推送所述信息。具体来说,当用户在使用数字电视终端(例如,用户观看电视)时,如果服务器(即,前端)需要向数字电视终端发送新闻类或其他类型的信息,此时,服务器唤醒与HTTP的长连接相关的线程,并通过已经建立的HTTP的长连接主动向数字电视终端发送新闻或其他类型的信息。
[0027]步骤S107:数字电视终端接收服务器推送过来的信息,并进行显示。具体来说,数字电视终端通过已经建立的HTTP的长连接接收服务器推送过来的信息,当收到服务器的信息后,数字电视终端将这个信息显示在显示装置上,其中,显示装置可以是电视机显示屏、电脑显示屏、数字电视一体机显示屏等。
[0028]服务器与数字电视终端通信的方法100,是由服务器直接唤醒相关线程,而不是通过数字电视终端进行轮询请求,所以能保证信息的及时传递,保证了服务器与数字电视终端通信的时效性。
[0029]请参见图2,图2是本发明另一实施例提供的服务器与数字电视终端通信的方法流程图。如图2所示,服务器与数字电视终端通信的方法200包括:
步骤S201:在服务器与数字电视终端之间建立HTTP的长连接。具体来说,服务器通过WebSocket API建立数字电视终端和服务器的通信管道,S卩,建立HTTP的长连接。其中,WebSocket是在浏览器中实现和服务器端双向通信的一种规范;数字电视终端可以是机顶盒、数字电视一体机、网络数字电视等。
[0030]步骤S203:在服务器与数字电视终端之间建立相关线程。具体来说,在服务器与数字电视终端之间建立与HTTP的长连接相关的线程。
[0031]步骤S205:数字电视终端将用户输入的字符发送给服务器。具体来说:当用户在进行输入字符的操作时,数字电视终端将用户输入的字符通过已经建立的HTTP的长连接发送给服务器。
[0032]步骤S207:服务器接收所述字符,唤醒相关线程,将与所述字符相关的信息发送给数字电视终端。具体来说,服务器接收到数字电视终端发送过来的用户输入的所述字符,唤醒与之相关的线程,进行处理后,再通过已经建立的HTTP的长连接将与所述字符对应的所有相关的信息发送给数字电视终端。
[0033]服务器与数字电视终端通信的方法200,实现了数字电视终端输入法的联想功能,是由服务器接收到数字电视终端发送的字符后唤醒相关线程,能保证信息的及时传递,保证了服务器与数字电视终端通信的时效性。
[0034]请参见图3,图3是本发明再一实施例提供的服务器与数字电视终端通信的方法流程图。如图3所示,服务器与数字电视终端通信的方法300包括:
步骤S301:在服务器与数字电视终端之间建立HTTP的长连接。具体来说,服务器通过WebSocket API建立数字电视终端和服务器的通信管道,S卩,建立HTTP的长连接。其中,WebSocket是在浏览器中实现和服务器端双向通信的一种规范;数字电视终端可以是机顶盒、数字电视一体机、网络数字电视等。
[0035]步骤S303:在服务器与数字电视终端之间建立相关线程。具体来说,在服务器与数字电视终端之间建立与HTTP的长连接相关的线程。
[0036]步骤S305:数字电视终端将用户输入的信息发送给服务器。具体来说:当用户在数字电视终端进行输入操作时,数字电视终端将用户输入的信息通过已经建立的HTTP的长连接发送给服务器。
[0037]步骤S307:服务器接收所述信息,唤醒相关线程,将与所述信息相关的信息发送给数字电视终端。具体来说,服务器接收到数字电视终端发送过来的用户输入的所述信息,唤醒与之相关的线程,进行处理后,再通过已经建立的HTTP的长连接将与所述信息相关的所有信息发送给数字电视终端。
[0038]服务器与数字电视终端通信的方法300,是由服务器直接唤醒相关线程,而不是通过数字电视终端进行轮询请求,所以能保证信息的及时传递,保证了服务器与数字电视终端通信的时效性。
[0039]请参见图4,图4是本发明一实施例提供的服务器与数字电视终端通信的系统结构示意图。如图4所示,服务器与数字电视终端通信的系统400包括:服务器410,数字电视终端420。其中,服务器410包括:HTTP长连接建立模块411,线程建立模块412,线程唤醒模块413,以及信息发送模块414 ;数字电视终端420包括:信息接收模块421,以及显示模块422。
[0040]HTTP长连接建立模块410,在服务器410与数字电视终端420之间建立HTTP的长连接。具体来说,服务器410通过HTTP长连接建立模块411建立数字电视终端420和服务器410之间的通信管道,S卩,建立HTTP的长连接。其中,HTTP长连接建立模块411为WebSocket API ;数字电视终端可以是机顶盒、数字电视一体机、网络数字电视等。
[0041]线程建立模块412,连接于HTTP长连接建立模块410,在服务器410与数字电视终端420之间建立与HTTP的长连接相关的线程。
[0042]线程唤醒模块413,连接于线程建立模块412,当数字电视终端420开启,且服务器410需要向数字电视终端420发送信息时,服务器410的线程唤醒模块413唤醒与HTTP的长连接相关的线程,并通过信息发送模块414向数字电视终端420推送所述信息。具体来说,当用户在使用数字电视终端420 (例如,用户观看电视)时,如果服务器410 (S卩,前端)需要向数字电视终端发送新闻类或其他类型的信息,此时,服务器410的线程唤醒模块413唤醒与HTTP的长连接相关的线程,并通过已经建立的HTTP的长连接主动向数字电视终端420发送新闻或其他类型的信息。
[0043]信息发送模块414,连接于线程唤醒模块413,用于向数字电视终端420推送所述信息。
[0044]信息接收模块421,连接于信息发送模块414,接收信息发送模块414推送过来的信息,并发送给显示模块422。
[0045]显示模块422,连接于信息接收模块421,接收信息接收模块421发送过来的信息,并进行显示。
[0046]具体来说,数字电视终端420的信息接收模块421通过已经建立的HTTP的长连接接收服务器410的信息发送模块414推送过来的信息,当数字电视终端420的信息接收模块421收到服务器410的信息后,数字电视终端420的显示模块422将所述信息进行显示,其中,显示模块422可以是电视机显示屏、电脑显示屏、数字电视一体机显示屏等。
[0047]服务器与数字电视终端通信的系统400,是由服务器直接唤醒相关线程,而不是通过数字电视终端进行轮询请求,所以能保证信息的及时传递,保证了服务器与数字电视终端通信的时效性。
[0048]本发明以上实施例提供的服务器与数字电视终端通信的方法及系统,通过保持一个长时间活动的HTTP连接,来实现服务器与数字电视终端的快速数据交互。另外。通过服务器主动推送信息给数字电视终端,能有效降低服务器的负担。同时,服务器能主动传输数据给数字电视终端,数字电视终端也能主动传输数据给服务器,即,实现了服务器和数字电视终端的数据互通。
[0049]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种服务器与数字电视终端通信的方法,其特征在于,包括: 在服务器与数字电视终端之间建立HTTP的长连接的步骤; 在所述服务器与所述数字电视终端之间建立与所述HTTP的长连接相关的线程的步骤; 当所述数字电视终端开启,且所述服务器需要向所述数字电视终端发送信息时,所述服务器唤醒所述线程,并通过所述HTTP的长连接向所述数字电视终端推送所述信息的步骤;以及 所述数字电视终端接收所述服务器推送过来的所述信息的步骤。
2.如权利要求1所述的服务器与数字电视终端通信的方法,其特征在于,还包括:所述数字电视终端显示所述服务器推送过来的所述信息的步骤。
3.如权利要求1所述的服务器与数字电视终端通信的方法,其特征在于: 所述服务器是通过WebSocket应用程序编程接口建立所述HTTP的长连接。
4.如权利要求1或2所述的服务器与数字电视终端通信的方法,其特征在于:所述信息为新闻类信息。
5.一种服务器与数字电视终端通信的方法,其特征在于,包括: 在服务器与数字电视终端之间建立HTTP的长连接的步骤; 在所述服务器与所述数字电视终端之间建立与所述HTTP的长连接相关的线程的步骤; 所述数字电视终端通过所述HTTP的长连接将用户输入的信息发送给所述服务器的步骤; 所述服务器接收所述信息,唤醒所述线程,将与所述信息相关的信息通过所述HTTP的长连接发送给所述数字电视终端的步骤。
6.如权利要求5所述的服务器与数字电视终端通信的方法,其特征在于: 所述服务器是通过WebSocket应用程序编程接口建立所述HTTP的长连接。
7.如权利要求5所述的服务器与数字电视终端通信的方法,其特征在于:所述用户输入的信息为所述用户输入的字符。
8.一种服务器与数字电视终端通信的系统,其特征在于,包括服务器以及数字电视终端,其中,所述服务器包括=HTTP长连接建立模块、线程建立模块、线程唤醒模块、以及信息发送模块,所述数字电视终端包括信息接收模块,其中: 所述HTTP长连接建立模块,在所述服务器与所述数字电视终端之间建立HTTP的长连接; 所述线程建立模块,在所述服务器与所述数字电视终端之间建立与所述HTTP的长连接相关的线程; 所述线程唤醒模块,当所述数字电视终端开启,且所述服务器需要向所述数字电视终端发送信息时,唤醒所述线程,并由所述信息发送模块通过所述HTTP的长连接向所述数字电视终端推送所述信息;以及 所述信息接收模块,接收所述信息发送模块推送过来的所述信息,并发送给所述显示模块进行显示。
9.如权利要求8所述的服务器与数字电视终端通信的系统,其特征在于:所述显示模块是电视机显示屏、电脑显示屏、或数字电视一体机显示屏。
10.如权利要求8所述的服务器与数字电视终端通信的系统,其特征在于:所述数字电视终端是机顶盒、数字电视一体机、或网络数字电视。
【文档编号】H04L29/08GK104301799SQ201310304917
【公开日】2015年1月21日 申请日期:2013年7月19日 优先权日:2013年7月19日
【发明者】万慧玲 申请人:深圳市同洲电子股份有限公司