CN113329062A - 数据共享方法、装置、电子设备和存储介质 - Google Patents

数据共享方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN113329062A
CN113329062A CN202110506096.9A CN202110506096A CN113329062A CN 113329062 A CN113329062 A CN 113329062A CN 202110506096 A CN202110506096 A CN 202110506096A CN 113329062 A CN113329062 A CN 113329062A
Authority
CN
China
Prior art keywords
data
real
data structure
address
connection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110506096.9A
Other languages
English (en)
Other versions
CN113329062B (zh
Inventor
曹文韬
陈睿翊
鲍利新
张凯月
杜震
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Lynxi Technology Co Ltd
Original Assignee
Beijing Lynxi Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Lynxi Technology Co Ltd filed Critical Beijing Lynxi Technology Co Ltd
Priority to CN202110506096.9A priority Critical patent/CN113329062B/zh
Publication of CN113329062A publication Critical patent/CN113329062A/zh
Application granted granted Critical
Publication of CN113329062B publication Critical patent/CN113329062B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/71Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/783Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/7837Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using objects detected or recognised in the video content
    • G06F16/784Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using objects detected or recognised in the video content the detected or recognised objects being people
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9014Indexing; Data structures therefor; Storage structures hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Library & Information Science (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请提供一种数据共享方法、装置、电子设备和存储介质,所述数据共享方法包括:在建立共享任务后,将服务器主机的IP地址和所述共享任务的运行端口号发送到局域网的Redis服务器;在接收到用户发送的包含连接标识的连接请求后,获取所述连接标识,其中,所述连接请求时所述用户自所述Redis服务器获取所述IP地址和所述运行端口号后,根据所述IP地址和所述运行端口号发送;根据所述连接标识建立hashmap数据结构,所述hashmap数据结构中存储有所述连接标识和队列数据结构;将实时运动数据发送到所述队列数据结构中,以供所述用户获取。本发明的技术方案可以实现在局域网内的数据共享。

Description

数据共享方法、装置、电子设备和存储介质
技术领域
本申请涉及通信技术领域,尤其涉及一种数据共享方法、装置、电子设备和存储介质。
背景技术
在进行足球等体育赛事的实时运动数据共享时,可以由服务器对比赛视频进行处理,得到赛事的运动数据,并将运动共享给观看赛事的现场观众。
进行数据共享的方案较多。第一种方案是采用局域网内广播的形式,服务器端实时将处理后的数据在局域网内广播,用户端监听广播地址读取数据,该方案会出现数据丢失、不连贯的情况。
第二种方案为搭建本地数据或者本地直播系统,该方案具有架构繁琐的缺点。
第三种方案为采用云服务器提供数据服务,该方案需要互联网环境支持,容易受互联网的带宽和网速的影响。
第四种方案为定制AP(Access Point,无线接入点)设备,通过UDP(User DatagramProtocol,用户数据报协议)传输数据。该方案需要进行定制化开发,且通过UDP进行数据传输时网络较不稳定。
以上数据共享方案均不能较为方便地进行局域网内数据共享。
申请内容
本申请提供一种数据共享方法、装置、电子设备和非暂态计算机可读存储介质,用以解决现有技术中局域网内数据共享不够方便的缺陷,以较为便捷地实现局域网内数据共享。
第一方面,本申请提供一种数据共享方法,包括:在建立共享任务后,将服务器主机的IP地址和所述共享任务的运行端口号发送到局域网的Redis服务器;在接收到用户发送的包含连接标识的连接请求后,获取所述连接标识,其中,所述连接请求时所述用户自所述Redis服务器获取所述IP地址和所述运行端口号后,根据所述IP地址和所述运行端口号发送;根据所述连接标识建立hashmap数据结构,所述hashmap数据结构中存储有所述连接标识和队列数据结构;将实时运动数据发送到所述队列数据结构中,以供所述用户获取。
根据本申请提供一种的数据共享方法,所述将实时运动数据发送到所述队列数据结构中之后,所述数据共享方法还包括:接收所述用户发送的包括请求数量的数据请求后,获取所述请求数量;根据所述请求数量自所述队列数据结构中弹出对应数量的实时运动数据,返回所述用户。
根据本申请提供一种的数据共享方法,所述服务器主机和所述用户通过websocket建立连接并传输数据。
根据本申请提供一种的数据共享方法,所述实时运动数据由所述服务器主机在获取实时赛事视频数据后计算分析得到,所述实时运动数据包括比赛过程中运动员的实时位置和运动方向。
第二方面,本申请还提供一种数据共享方法,包括:自局域网的Redis服务器获取服务器主机的IP地址和共享任务的运行端口号,其中,所述IP地址和所述运行端口号由所述服务器主机在建立共享任务后发送到所述Redis服务器;根据所述IP地址和所述运行端口号发送请求连接,所述请求连接包括连接标识;在服务器主机根据所述连接标识建立包含队列数据结构的hashmap数据结构,并发送实时运动数据到所述队列数据结构后,获取所述实时运动数据。
根据本申请提供一种的数据共享方法,所述获取所述实时运动数据,包括:向所述服务器主机发送数据请求,所述数据请求包括请求数量;在所述服务器主机根据所述请求数量自所述队列数据结构中弹出对应数量的实时运动数据并发送后,接收所述实时运动数据。
第三方面,本申请还提供一种数据共享装置,第一发送单元,用于在建立共享任务后,将服务器主机的IP地址和所述共享任务的运行端口号发送到局域网的Redis服务器;获取单元,用于在接收到用户发送的包含连接标识的连接请求后,获取所述连接标识,其中,所述连接请求时所述用户自所述Redis服务器获取所述IP地址和所述运行端口号后,根据所述IP地址和所述运行端口号发送;连接单元,用于根据所述连接标识建立hashmap数据结构,所述hashmap数据结构中存储有所述连接标识和队列数据结构;第二发送单元,用于将实时运动数据发送到所述队列数据结构中,以供所述用户获取。
第四方面,本申请还提供一种数据共享装置,包括:第二获取单元,用于自局域网的Redis服务器获取服务器主机的IP地址和共享任务的运行端口号,其中,所述IP地址和所述运行端口号由所述服务器主机在建立共享任务后发送到所述Redis服务器;连接请求单元,用于根据所述IP地址和所述运行端口号发送请求连接,所述请求连接包括连接标识;第三获取单元,用于在服务器主机根据所述连接标识建立包含队列数据结构的hashmap数据结构,并发送实时运动数据到所述队列数据结构后,获取所述实时运动数据。
第五方面,本申请还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述数据共享方法的步骤。
第六方面,本申请还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述数据共享方法的步骤。
本申请提供的数据共享方法、装置、电子设备和非暂态计算机可读存储介质,通过将服务器主机的IP地址和共享任务的运行端口号发送到局域网的Redis服务器,并在用户根据IP地址和运行端口号发送连接请求后,服务器主机建立hashmap数据结构以发送实时运动数据到hashmap数据结构供用户获取,从而使得服务器主机和用户之间建立连接、共享数据,较为便捷地实现了区域网内的数据共享。
附图说明
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请提供的数据共享方法的流程示意图之一;
图2是本申请提供的数据共享方法的流程示意图之二;
图3是本申请提供的数据共享装置的结构示意图之一;
图4是本申请提供的数据共享装置的结构示意图之二;
图5是本申请提供的电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本发明各实施例提供的技术方案。
如图1所示的是本发明一种实施例的服务器侧的数据共享方法的流程图。本发明实施例提供的方法可以由任意具备计算机处理能力的电子设备执行,例如服务器。该数据共享方法包括:
步骤102,在建立共享任务后,将服务器主机的IP地址和所述共享任务的运行端口号发送到局域网的Redis服务器。
具体地,在本地搭建服务器主机作为数据共享中心使用。共享任务由服务器主机建立,共享任务建立的时间点为服务器主机获取体育赛事的实时视频后开始处理的时间点。服务器主机的IP地址(Internet Protocol Address,互联网协议地址)是网际协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。
共享任务的运行端口号指的是共享任务在服务器主机中运行时服务器主机的对外提供的交互共享任务数据的端口的编号。局域网(Local Area Network,简称LAN)是指在某一区域内由多台计算机互联成的计算机组。服务器主机可以以无线或有线方式接入局域网,为保证传输质量,局域网需要千兆网络支持。
Redis(Remote Dictionary Server,即远程字典服务)是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,Redis服务器即Redis缓存服务器,是基于Redis的存放频繁访问内容的服务器。
服务器主机可以实时对视频进行处理,并将处理得到的实时运动数据保存到本地文件。同时,服务器主机建立一个共享任务时会将自己的ip地址和对应共享任务的运行端口号推送到局域网内的Redis服务器,以与用户设备建立连接并共享实时运动数据。
步骤104,在接收到用户发送的包含连接标识的连接请求后,获取所述连接标识,其中,所述连接请求时所述用户自所述Redis服务器获取所述IP地址和所述运行端口号后,根据所述IP地址和所述运行端口号发送。
具体地,连接标识为用于建立连接的用户身份标识,可以用session_id表示。不同的用户对应不同的连接标识。
根据IP地址和运行端口号发送连接请求,是指将连接请求发送到指定IP地址的指定运行端口。用户设备可以通过redis服务器获取局域网内实时数据列表,并选择实时数据列表中的一项根据IP地址和运行端口号发送连接请求。
步骤106,根据所述连接标识建立hashmap数据结构,所述hashmap数据结构中存储有所述连接标识和队列数据结构。
具体地,hashmap数据结构是基于哈希表的Map接口的实现,该实现提供所有可选的映射操作,并允许使用null值和null键。hashmap数据结构的表现形式为Map<K,V>,其是一种哈希表数据结构。其中,K存放的即为连接标识session_id,V是一个队列数据结构,即数组结构,用于存放服务器主机对实时视频处理得到的实时运动数据。当上述hashmap数据结构中存在数据时,即表明有用户与服务器主机建立了连接。
步骤108,将实时运动数据发送到所述队列数据结构中,以供所述用户获取。
具体地,在用户与服务器主机建立连接后,服务器主机在实时对视频进行处理的同时,会将处理得到的实时运动数据复制推送到每个建立连接的用户对应的Queue数据结构中。
本发明实施例的技术方案在无公网环境或公网网络较差情况下,搭建了一个局域网内数据共享系统,以共享对体育赛事的实时视频进行处理得到的实时运动数据。
本发明实施例的技术方案无需公网环境,架构简单,服务器主机和用户只需满足在同一个局域网的条件,各自运行各自的程序即可实时传输数据;先建立连接后传输数据,可以保证用户获取的数据是最新的,同时也能避免无意义地消耗带宽资源。
此外,由于本发明实施例中的hashmap数据结构支持并发访问,从而服务器主机可以支持多个用户连接,数据不冲突,每个客户用户独立享有自己接收的数据。这里,并发访问就是同时有多个用户请求同一服务,比如两个用户都同时在请求某服务器提供搜索服务。
在本发明实施例中,所述服务器主机和所述用户通过websocket建立连接并传输数据。
websocket是一种在单个传输控制协议连接上进行全双工通信的协议。
在本发明一个实施例中,在一个体育赛事进行过程中,基于接收服务器主机发送的实时数据,用户对应的用户设备可以展示实时视频流和实时运动表现数据流。其中,实时运动表现数据流包括场上各运动员实时运动数据以及实时2D坐标图。所述实时运动数据由所述服务器主机在获取实时赛事视频数据后计算分析得到,所述实时运动数据包括比赛过程中运动员的实时位置和运动方向。
在步骤108之后,用户发送数据请求,服务器主机接收所述用户发送的包括请求数量的数据请求后,获取所述请求数量,并根据所述请求数量自所述队列数据结构中弹出对应数量的实时运动数据,通过websocket返回所述用户。
这里,用户设备可以为个人电脑、平板、智能手机等电子设备,且并不局限于此。每个用户设备可以在任意时间获取实时视频流、场上各运动员实时运动数据以及实时2D坐标图数据并展现,也可以随时断开与服务器主机的连接。
用户每次连接时获取的都是最新的数据,后续数据的传输、处理速度受用户设备硬件性能影响。其中,实时视频流由服务器主机读取摄像头的视频流,处理后通过ffmpeg推送到服务器主机本地搭建的基于Nginx的RTMP(Real Time Messaging Protocol,实时消息传输协议)服务器,用户设备通过RTMP协议即可播放视频流。其中,Nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。服务器开启ffmpeg服务和RTMP服务,持续推送视频流。
实时运动数据和实时2D坐标可以通过websocket传输,具体来说,服务器主机开启websocket服务,暴露一个固定端点,允许通过该端点接收websocket连接。
客户端启动应用后,一个线程通过RTMP协议播放实时视频,相当于直播,另外一个线程与服务器主机建立websocket连接,服务器主机在接收到连接请求后,获取连接的唯一标识session_id。这个过程中,数据可以采用protobuf形式编码传输。
protobuf是一种结构数据序列化方法,相比于传统的JSON、XML数据传输方式更高效、更快速。
服务器主机可以实时处理视频并得到实时运动数据保存到本地文件,同时会初始化一个支持并发访问的hashmap数据结构,用于建立用户连接。
服务器主机在收到连接请求后,获取连接标识session_id,初始化一个支持并发访问的队列数据结构,将session_id和该队列数据结构存储到上述hashmap数据结构中,hashmap数据结构中具有数据标志着服务器主机和用户成功建立连接。
用户和服务器主机建立连接之后,可以向服务器主机请求N条数据,服务器主机从上述队列数据结构V中取出最多N条数据,其中,N为自然数。限制最多N条数据是因为在实际场景下,服务器主机产生的数据不是连续的,比如中场休息等情况,这时用户设获取不到实时运动数据。
为每个用户都维护一个V时,每个用户的数据可以互相隔离。此外由于每个用户处理数据速度不一致,分开数据可以避免木桶效应,即不会因为多个用户设备中某个设备的性能问题影响其他设备。
用户请求到实时运动数据之后,可以执行两个独立的操作:一个是按场上球员分组,动态地显示每个人各个计算维度的数据,类似一个数据大盘,根据数据中每个人在场上的二维坐标数据绘制2D动画,以类似“鸟瞰”的视角展示场上人员的位置情况即运动轨迹。另一方面,用户设备会在数据处理了N/2条时,提前向服务器请求下一批N条数据,以避免完全处理完一批N条数据后再去请求下一批时造成的卡顿。
如图2所示的是本发明一种实施例的用户侧的数据共享方法的流程图。本发明实施例提供的方法可以由任意具备计算机处理能力的电子设备执行,例如用户设备等终端设备。该数据共享方法包括:
步骤202,自局域网的Redis服务器获取服务器主机的IP地址和共享任务的运行端口号,其中,所述IP地址和所述运行端口号由所述服务器主机在建立共享任务后发送到所述Redis服务器。
步骤204,根据所述IP地址和所述运行端口号发送请求连接,所述请求连接包括连接标识。
步骤206,在服务器主机根据所述连接标识建立包含队列数据结构的hashmap数据结构,并发送实时运动数据到所述队列数据结构后,获取所述实时运动数据。
在步骤206中获取所述实时运动数据时,用户向所述服务器主机发送数据请求,所述数据请求包括请求数量;在所述服务器主机根据所述请求数量自所述队列数据结构中弹出对应数量的实时运动数据并发送后,接收所述实时运动数据。
能够理解,上述用户侧的数据共享方法,与前述实施例中提供的服务器侧的数据共享方法的技术内容互相对应,关于服务器侧的数据共享方法的相关阐释均适用于该用户侧的数据共享方法,此处不再赘述。
本发明实施例的数据共享方法,通过将服务器主机的IP地址和共享任务的运行端口号发送到局域网的Redis服务器,并在用户根据IP地址和运行端口号发送连接请求后,服务器主机建立hashmap数据结构以发送实时运动数据到hashmap数据结构供用户获取,从而使得服务器主机和用户之间建立连接、共享数据,较为便捷地实现了区域网内的数据共享。
下面对本申请提供的数据共享装置进行描述,下文描述的数据共享装置与上文描述的数据共享方法可相互对应参照。
如图3所示,本发明实施例提供的服务器侧的数据共享装置与如图1所示的服务器侧的数据共享方法相对应,该数据共享装置包括:
第一发送单元302,用于在建立共享任务后,将服务器主机的IP地址和所述共享任务的运行端口号发送到局域网的Redis服务器。
获取单元304,用于在接收到用户发送的包含连接标识的连接请求后,获取所述连接标识,其中,所述连接请求时所述用户自所述Redis服务器获取所述IP地址和所述运行端口号后,根据所述IP地址和所述运行端口号发送。
连接单元306,用于根据所述连接标识建立hashmap数据结构,所述hashmap数据结构中存储有所述连接标识和队列数据结构。
第二发送单元308,用于将实时运动数据发送到所述队列数据结构中,以供所述用户获取。
如图4所示,本发明实施例提供的用户侧的数据共享装置与如图2所示的用户侧的数据共享方法相对应,该数据共享装置包括:
第二获取单元402,用于自局域网的Redis服务器获取服务器主机的IP地址和共享任务的运行端口号,其中,所述IP地址和所述运行端口号由所述服务器主机在建立共享任务后发送到所述Redis服务器。
连接请求单元404,用于根据所述IP地址和所述运行端口号发送请求连接,所述请求连接包括连接标识。
第三获取单元406,用于在服务器主机根据所述连接标识建立包含队列数据结构的hashmap数据结构,并发送实时运动数据到所述队列数据结构后,获取所述实时运动数据。
能够理解,上述数据共享装置,能够实现前述实施例中提供的数据共享方法的各个步骤,关于数据共享方法的相关阐释均适用于数据共享装置,此处不再赘述。
本发明实施例的数据共享装置,通过将服务器主机的IP地址和共享任务的运行端口号发送到局域网的Redis服务器,并在用户根据IP地址和运行端口号发送连接请求后,服务器主机建立hashmap数据结构以发送实时运动数据到hashmap数据结构供用户获取,从而使得服务器主机和用户之间建立连接、共享数据,较为便捷地实现了区域网内的数据共享。
图5示例了一种电子设备的实体结构示意图,如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(Communications Interface)520、存储器(memory)530和通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。处理器510可以调用存储器530中的逻辑指令,以执行数据共享方法,该方法包括:在建立共享任务后,将服务器主机的IP地址和所述共享任务的运行端口号发送到局域网的Redis服务器;在接收到用户发送的包含连接标识的连接请求后,获取所述连接标识,其中,所述连接请求时所述用户自所述Redis服务器获取所述IP地址和所述运行端口号后,根据所述IP地址和所述运行端口号发送;根据所述连接标识建立hashmap数据结构,所述hashmap数据结构中存储有所述连接标识和队列数据结构;将实时运动数据发送到所述队列数据结构中,以供所述用户获取。或者,自局域网的Redis服务器获取服务器主机的IP地址和共享任务的运行端口号,其中,所述IP地址和所述运行端口号由所述服务器主机在建立共享任务后发送到所述Redis服务器;根据所述IP地址和所述运行端口号发送请求连接,所述请求连接包括连接标识;在服务器主机根据所述连接标识建立包含队列数据结构的hashmap数据结构,并发送实时运动数据到所述队列数据结构后,获取所述实时运动数据。
此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本申请还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的数据共享方法,该方法包括:在建立共享任务后,将服务器主机的IP地址和所述共享任务的运行端口号发送到局域网的Redis服务器;在接收到用户发送的包含连接标识的连接请求后,获取所述连接标识,其中,所述连接请求时所述用户自所述Redis服务器获取所述IP地址和所述运行端口号后,根据所述IP地址和所述运行端口号发送;根据所述连接标识建立hashmap数据结构,所述hashmap数据结构中存储有所述连接标识和队列数据结构;将实时运动数据发送到所述队列数据结构中,以供所述用户获取。或者,自局域网的Redis服务器获取服务器主机的IP地址和共享任务的运行端口号,其中,所述IP地址和所述运行端口号由所述服务器主机在建立共享任务后发送到所述Redis服务器;根据所述IP地址和所述运行端口号发送请求连接,所述请求连接包括连接标识;在服务器主机根据所述连接标识建立包含队列数据结构的hashmap数据结构,并发送实时运动数据到所述队列数据结构后,获取所述实时运动数据。
又一方面,本申请还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的数据共享方法,该方法包括:在建立共享任务后,将服务器主机的IP地址和所述共享任务的运行端口号发送到局域网的Redis服务器;在接收到用户发送的包含连接标识的连接请求后,获取所述连接标识,其中,所述连接请求时所述用户自所述Redis服务器获取所述IP地址和所述运行端口号后,根据所述IP地址和所述运行端口号发送;根据所述连接标识建立hashmap数据结构,所述hashmap数据结构中存储有所述连接标识和队列数据结构;将实时运动数据发送到所述队列数据结构中,以供所述用户获取。或者,自局域网的Redis服务器获取服务器主机的IP地址和共享任务的运行端口号,其中,所述IP地址和所述运行端口号由所述服务器主机在建立共享任务后发送到所述Redis服务器;根据所述IP地址和所述运行端口号发送请求连接,所述请求连接包括连接标识;在服务器主机根据所述连接标识建立包含队列数据结构的hashmap数据结构,并发送实时运动数据到所述队列数据结构后,获取所述实时运动数据。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (10)

1.一种数据共享方法,其特征在于,包括:
在建立共享任务后,将服务器主机的IP地址和所述共享任务的运行端口号发送到局域网的Redis服务器;
在接收到用户发送的包含连接标识的连接请求后,获取所述连接标识,其中,所述连接请求时所述用户自所述Redis服务器获取所述IP地址和所述运行端口号后,根据所述IP地址和所述运行端口号发送;
根据所述连接标识建立hashmap数据结构,所述hashmap数据结构中存储有所述连接标识和队列数据结构;
将实时运动数据发送到所述队列数据结构中,以供所述用户获取。
2.根据权利要求1所述的数据共享方法,其特征在于,所述将实时运动数据发送到所述队列数据结构中之后,所述数据共享方法还包括:
接收所述用户发送的包括请求数量的数据请求后,获取所述请求数量;
根据所述请求数量自所述队列数据结构中弹出对应数量的实时运动数据,返回所述用户。
3.根据权利要求1所述的数据共享方法,其特征在于,所述服务器主机和所述用户通过websocket建立连接并传输数据。
4.根据权利要求1至3任一项所述的数据共享方法,其特征在于,所述实时运动数据由所述服务器主机在获取实时赛事视频数据后计算分析得到,所述实时运动数据包括比赛过程中运动员的实时位置和运动方向。
5.一种数据共享方法,其特征在于,包括:
自局域网的Redis服务器获取服务器主机的IP地址和共享任务的运行端口号,其中,所述IP地址和所述运行端口号由所述服务器主机在建立共享任务后发送到所述Redis服务器;
根据所述IP地址和所述运行端口号发送请求连接,所述请求连接包括连接标识;
在服务器主机根据所述连接标识建立包含队列数据结构的hashmap数据结构,并发送实时运动数据到所述队列数据结构后,获取所述实时运动数据。
6.根据权利要求5所述的数据共享方法,其特征在于,所述获取所述实时运动数据,包括:
向所述服务器主机发送数据请求,所述数据请求包括请求数量;
在所述服务器主机根据所述请求数量自所述队列数据结构中弹出对应数量的实时运动数据并发送后,接收所述实时运动数据。
7.一种数据共享装置,其特征在于,包括:
第一发送单元,用于在建立共享任务后,将服务器主机的IP地址和所述共享任务的运行端口号发送到局域网的Redis服务器;
获取单元,用于在接收到用户发送的包含连接标识的连接请求后,获取所述连接标识,其中,所述连接请求时所述用户自所述Redis服务器获取所述IP地址和所述运行端口号后,根据所述IP地址和所述运行端口号发送;
连接单元,用于根据所述连接标识建立hashmap数据结构,所述hashmap数据结构中存储有所述连接标识和队列数据结构;
第二发送单元,用于将实时运动数据发送到所述队列数据结构中,以供所述用户获取。
8.一种数据共享装置,其特征在于,包括:
第二获取单元,用于自局域网的Redis服务器获取服务器主机的IP地址和共享任务的运行端口号,其中,所述IP地址和所述运行端口号由所述服务器主机在建立共享任务后发送到所述Redis服务器;
连接请求单元,用于根据所述IP地址和所述运行端口号发送请求连接,所述请求连接包括连接标识;
第三获取单元,用于在服务器主机根据所述连接标识建立包含队列数据结构的hashmap数据结构,并发送实时运动数据到所述队列数据结构后,获取所述实时运动数据。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述数据共享方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述数据共享方法的步骤。
CN202110506096.9A 2021-05-10 2021-05-10 数据共享方法、装置、电子设备和存储介质 Active CN113329062B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110506096.9A CN113329062B (zh) 2021-05-10 2021-05-10 数据共享方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110506096.9A CN113329062B (zh) 2021-05-10 2021-05-10 数据共享方法、装置、电子设备和存储介质

Publications (2)

Publication Number Publication Date
CN113329062A true CN113329062A (zh) 2021-08-31
CN113329062B CN113329062B (zh) 2022-11-01

Family

ID=77415132

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110506096.9A Active CN113329062B (zh) 2021-05-10 2021-05-10 数据共享方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN113329062B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9276896B2 (en) * 2011-06-27 2016-03-01 Kaseya Limited Method and apparatus of establishing a connection between devices using cached connection information
CN106453661A (zh) * 2016-12-09 2017-02-22 北京酷我科技有限公司 一种http服务器集群的会话管理方法
US20170251503A1 (en) * 2016-02-25 2017-08-31 Verizon Patent And Licensing Inc. Internet protocol address and port-based identity service
CN109983777A (zh) * 2016-10-12 2019-07-05 皇家Kpn公司 启用媒体编排
CN110855659A (zh) * 2019-11-07 2020-02-28 四川长虹电器股份有限公司 redis蜜罐部署系统
CN111538590A (zh) * 2020-04-17 2020-08-14 姜海强 一种基于cs架构的分布式数据采集方法及系统
CN111970315A (zh) * 2019-05-20 2020-11-20 北京车和家信息技术有限公司 推送消息的方法、装置及系统
CN112600926A (zh) * 2020-12-16 2021-04-02 平安消费金融有限公司 一种消息推送方法、装置及计算机可读存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9276896B2 (en) * 2011-06-27 2016-03-01 Kaseya Limited Method and apparatus of establishing a connection between devices using cached connection information
US20170251503A1 (en) * 2016-02-25 2017-08-31 Verizon Patent And Licensing Inc. Internet protocol address and port-based identity service
CN109983777A (zh) * 2016-10-12 2019-07-05 皇家Kpn公司 启用媒体编排
CN106453661A (zh) * 2016-12-09 2017-02-22 北京酷我科技有限公司 一种http服务器集群的会话管理方法
CN111970315A (zh) * 2019-05-20 2020-11-20 北京车和家信息技术有限公司 推送消息的方法、装置及系统
CN110855659A (zh) * 2019-11-07 2020-02-28 四川长虹电器股份有限公司 redis蜜罐部署系统
CN111538590A (zh) * 2020-04-17 2020-08-14 姜海强 一种基于cs架构的分布式数据采集方法及系统
CN112600926A (zh) * 2020-12-16 2021-04-02 平安消费金融有限公司 一种消息推送方法、装置及计算机可读存储介质

Also Published As

Publication number Publication date
CN113329062B (zh) 2022-11-01

Similar Documents

Publication Publication Date Title
US11717749B2 (en) Cloud gaming device handover
EP3700640B1 (en) Methods and systems for rendering and encoding content for online interactive gaming sessions
JP7463508B2 (ja) クラウドゲーム用のアダプティブグラフィックス
CN108391179B (zh) 直播数据处理方法、装置、服务器、终端及存储介质
Shea et al. Cloud gaming: architecture and performance
CN110876080B (zh) 视频投屏方法、装置、计算机设备及存储介质
US9674252B2 (en) System and method for efficient delivery of repetitive multimedia content
US11565177B2 (en) Edge compute proxy for cloud gaming and 5G
US11889133B2 (en) Burst traffic processing method, computer device and readable storage medium
US20230291808A1 (en) Data processing method and apparatus, device and medium
CN115794139B (zh) 镜像数据处理方法、装置、设备以及介质
CN113926185A (zh) 一种数据处理方法、装置、设备及存储介质
CN105743788A (zh) 数据包转发方法及装置
CN113329062B (zh) 数据共享方法、装置、电子设备和存储介质
CN106921634A (zh) 多媒体流组播方法和装置
US20210099547A1 (en) Collaborative and edge-enhanced augmented reality systems
WO2023151338A1 (zh) 游戏画面的显示方法、存储介质和电子设备
CN115297095A (zh) 回源处理方法、装置、计算设备及存储介质
US20210154576A1 (en) Vector graphics-based live streaming of video games
CN114390310A (zh) 数据推送方法和装置、存储介质及电子设备
US10812547B1 (en) Broadcast streaming configuration
CN115253283A (zh) 一种云游戏服务系统、数据处理方法及电子设备
CN117880604A (zh) 基于交互式流媒体的数据传输方法、装置及系统
Izumiya et al. Enhancing Video Streaming Quality of Service through Peer-to-Peer File-Sharing

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant