WO2016202201A1 - Resource allocation method and apparatus, and smart television system - Google Patents

Resource allocation method and apparatus, and smart television system Download PDF

Info

Publication number
WO2016202201A1
WO2016202201A1 PCT/CN2016/085210 CN2016085210W WO2016202201A1 WO 2016202201 A1 WO2016202201 A1 WO 2016202201A1 CN 2016085210 W CN2016085210 W CN 2016085210W WO 2016202201 A1 WO2016202201 A1 WO 2016202201A1
Authority
WO
WIPO (PCT)
Prior art keywords
service providing
client
providing device
terminal type
terminal
Prior art date
Application number
PCT/CN2016/085210
Other languages
French (fr)
Chinese (zh)
Inventor
陈金虎
郑勇
Original Assignee
阿里巴巴集团控股有限公司
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 阿里巴巴集团控股有限公司 filed Critical 阿里巴巴集团控股有限公司
Publication of WO2016202201A1 publication Critical patent/WO2016202201A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • H04N21/25825Management of client data involving client display capabilities, e.g. screen resolution of a mobile phone
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2385Channel allocation; Bandwidth allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • H04N21/25833Management of client data involving client hardware characteristics, e.g. manufacturer, processing or storage capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26216Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the channel capacity, e.g. network bandwidth
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home

Definitions

  • the present application relates to the field of Internet technologies, and in particular, to a resource allocation method, apparatus, and smart television system.
  • a digital video conversion box which can also be called a set-top box or a set-top box, is a device that connects a television to an external signal source.
  • the digital video converter box converts the compressed digital signal into television content and displays it on the television.
  • the digital signal signals can be from cable cables, satellite antennas, broadband networks, terrestrial broadcasts, and the like.
  • the digital video converter box can also receive digital content, such as television program guides, Internet web pages, emails, and the like. Enables users to watch digital TV shows on existing TV sets and interactive digital entertainment, education and online shopping through the web.
  • the digital video conversion box or smart TV
  • the connection of the digital video converter box to the television set is relatively fixed, i.e., a digital video converter box is fixed to serve a terminal such as a television set.
  • the service that the terminal wants to obtain can only be realized by the digital video converter box.
  • the development of Internet technology is changing with each passing day, and various applications are constantly changing.
  • the digital video converter box cannot meet the update changes of the application, it will not be able to provide services for the TV terminal normally; on the other hand, digital video Any abnormality or malfunction of the change box may result in the terminal not being able to obtain the service.
  • the present application provides a resource allocation method, apparatus, and smart television system to solve the problem that the existing service for the terminal needs to be relied upon and subject to the digital video conversion box.
  • the present application discloses a resource allocation method, including: acquiring a client-side terminal The terminal information of the terminal corresponding to the terminal is determined according to the terminal information; and the service providing device that matches the terminal type is allocated to the client according to the terminal type of the terminal corresponding to the client, wherein The service providing device is configured to provide services for the client.
  • the present application further discloses a resource allocation apparatus, including: an obtaining module, configured to acquire terminal information of a client-side terminal; and a determining module, configured to determine, according to the terminal information, the client-side terminal a terminal type; an allocation module, configured to allocate, according to a terminal type of the client-compatible terminal, a service providing device that matches the terminal type, where the service providing device is used for the client Provide services.
  • the present application further discloses a smart television system, including: at least one server, at least one client, and at least one service providing device; wherein the server includes the resource allocation device described above; The service providing device is allocated to the client; the client is set in a smart TV, and the service providing device is disposed on the network side for providing an Internet service for the connected client through the network.
  • the present application includes the following advantages:
  • the terminal information corresponding to the client is first obtained from the client, and the terminal type of the terminal corresponding to the client is determined according to the terminal information; and then, from the service providing device that matches the terminal type. Assign a service provider device to the client. It can be seen that, by using the embodiment of the present application, on the one hand, the device that provides the service for the terminal is implemented by the service providing device on the network side, and the terminal only needs to have the basic decoding function, and can obtain the service from the network side, and no longer depends on or is subject to the digital Video converter box. Further, in the resource allocation scheme of the present application, different terminal types correspond to different service providing devices.
  • the system After determining the terminal type, the system only needs to select from the service providing devices that match the type, This type of terminal is processed, thereby greatly reducing the number of data processing, improving the data processing efficiency, reducing the processing load of the system, improving the efficiency of allocating service providing device resources such as digital video conversion box resources, and greatly improving the terminal.
  • User experience After determining the terminal type, the system only needs to select from the service providing devices that match the type, This type of terminal is processed, thereby greatly reducing the number of data processing, improving the data processing efficiency, reducing the processing load of the system, improving the efficiency of allocating service providing device resources such as digital video conversion box resources, and greatly improving the terminal.
  • FIG. 1 is a flow chart showing the steps of a resource allocation method in Embodiment 1 of the present application;
  • FIG. 2 is a flow chart showing the steps of a resource allocation method in Embodiment 2 of the present application.
  • FIG. 3 is a structural diagram of a smart television system according to Embodiment 3 of the present invention.
  • FIG. 4 is a flow chart showing the steps of a method for allocating a cloud box according to Embodiment 3 of the present application;
  • FIG. 5 is a structural block diagram of a resource allocation apparatus in Embodiment 4 of the present application.
  • FIG. 6 is a structural block diagram of a resource allocation apparatus in Embodiment 5 of the present application.
  • the resource allocation method of the embodiment of the present application can be applied to a system including a client and a service providing device, wherein the service providing device can provide various services to the client.
  • a smart television system comprising: at least one server, at least one client, at least one service providing device; wherein the server is configured to allocate a service providing device to the client; the client The terminal is disposed in the smart TV, and the service providing device is disposed on the network side, and is configured to provide an Internet service for the connected client through the network.
  • the smart television system may further include at least one user data information storage device; the at least one user data information storage device includes: at least one user partition; wherein the at least one user partition is used to store different User data corresponding to the client.
  • the service providing device includes: a network set top box; the internet service includes at least one of the following: a live television, an audio and video service, a web service, and a game service.
  • FIG. 1 a flow chart of steps of a resource allocation method in Embodiment 1 of the present application is shown.
  • the resource allocation method of this embodiment is described in the perspective of a server in the above-described smart television system architecture.
  • the resource allocation method in this embodiment may specifically include the following steps:
  • Step 102 Obtain terminal information of the client-compatible terminal.
  • the terminal information includes, but is not limited to, at least one of a main screen size of the terminal, a main screen material, a maximum resolution supported by the terminal, a CPU model, a supported audio format, and a supported video format.
  • a person skilled in the art may obtain terminal information for indicating the terminal type of the client corresponding terminal in any suitable manner, and then determine the terminal type according to the acquired terminal information.
  • Step 104 Determine, according to the terminal information, a terminal type of the client-compatible terminal.
  • the terminal information includes the maximum resolution information supported by the terminal.
  • the maximum resolution supported by the client A corresponding to the model A is 800 ⁇ 480 pixels
  • the client B supported by the model B supports the maximum resolution supported by the terminal.
  • the rate is 1334x750 pixels. Then, the maximum resolution information of the client corresponding terminal can be obtained, and then obtained according to The maximum resolution information is taken to determine whether the type of the client-compatible terminal is model A or model B.
  • the terminal type of the client-compatible terminal may also be determined according to other parameter information of the client-compatible terminal, which is not described herein.
  • the client may be regarded as a smart TV terminal loaded with the APP.
  • Step 106 Assign a service providing device that matches the terminal type to the client according to the terminal type of the terminal corresponding to the client.
  • the service providing device is used to provide services for the client.
  • the embodiment provides a network data service for the smart television terminal by using the service providing device and the client, wherein the service providing device may be a hardware terminal disposed on the network side, and various data required for the network service provided by the service providing device, the client One form of presentation may be an APP (Application) installed on the smart TV terminal, and the client decodes and displays the data provided by the network.
  • each service providing device and the client may not have a unique correspondence, but temporarily allocate a service providing device to the client when the client requests the network server to be provided by the service providing device, and allocate the service providing device and After the client establishes a connection, the service providing device provides data services for the client during the connection.
  • the service providing device may be maintained by the server, and the server may directly select the service providing device from the plurality of service providing devices corresponding to the terminal type, and then allocate the service providing device to the client.
  • the server may establish multiple distributed queues, and store multiple service providing devices in corresponding distributed queues, where each distributed queue may correspond to one type. terminal type.
  • the distributed queue may include: at least one service providing device that matches the same terminal type. Based on the multiple distributed queues maintained by the foregoing, when the service providing device is allocated to the client, the following manner may be adopted: the server determines a distributed queue that matches the terminal type according to the terminal type of the client-compatible terminal; A service providing device is allocated to the client according to information of at least one service providing device in the distributed queue.
  • the terminal information corresponding to the client is first obtained from the client, and the terminal type of the terminal corresponding to the client is determined according to the terminal information; and then, the terminal type is matched.
  • a service providing device is allocated to a client in a service providing device. It can be seen that, by using the embodiment of the present application, on the one hand, the device that provides the service for the terminal is implemented by the service providing device on the network side, and the terminal only needs to have the basic decoding function, and can obtain the service from the network side, and no longer depends on or is subject to the digital Video converter box. Further, in the resource allocation scheme of the present application, different terminal types correspond to different service providing devices.
  • the system After determining the terminal type, the system only needs to select from the service providing devices that match the type, Processing this type of terminal, thereby greatly reducing The number of data processing is reduced, the data processing efficiency is improved, the processing load of the system is reduced, the efficiency of allocating service providing device resources such as digital video conversion box resources is improved, and the user experience of the terminal user is greatly improved.
  • This embodiment is based on the resource allocation scheme of the first embodiment, and further optimizes the resource allocation scheme of the first embodiment.
  • FIG. 2 a flow chart of steps of a resource allocation method in Embodiment 2 of the present application is shown.
  • the resource allocation method of this embodiment is still described in the perspective of a server in the above-described smart television system architecture.
  • the resource allocation method in this embodiment may specifically include the following steps:
  • Step 202 The server acquires terminal information of the client-compatible terminal.
  • Step 204 The server determines, according to the terminal information, a terminal type of the client-compatible terminal.
  • Step 206 The server allocates a service providing device that matches the terminal type to the client according to the terminal type of the terminal corresponding to the client.
  • the service providing device is used to provide services for the client.
  • the server may select a service providing device for the client from the service providing device that matches the terminal type according to the terminal type of the client, where the selected service providing device satisfies the setting condition.
  • the setting conditions can be set by a person skilled in the art according to actual needs, so as to be able to provide services for the client.
  • the setting conditions include, but are not limited to, the service providing device is not allocated to the client; and/or the service providing device is in an idle state or a dormant state.
  • a service providing device that is not assigned to a client, and a service providing device that is in an idle state or a dormant state can be considered as available service providing devices.
  • the service providing device may be presented in any suitable form of data, such as a service providing device resource pool (including a plurality of service providing devices), or a distributed queue such as a service providing device.
  • a service providing device resource pool including a plurality of service providing devices
  • a distributed queue such as a service providing device.
  • the server may determine and describe the terminal according to the terminal type of the corresponding terminal of the client.
  • a distributed queue whose terminal type matches; then, the server allocates a service providing device to the client according to information of at least one service providing device in the distributed queue.
  • the distributed queue includes: information of at least one service providing device that matches the terminal type.
  • the server can obtain the corresponding and distributed when the service providing device is allocated to the client.
  • Distributed lock of a queue after the distributed lock is used to lock the distributed queue, At least one service in the layout queue provides information about the device, and the service provider is assigned to the client. Further, after the service providing device is allocated to the client, the distributed lock of the distributed queue is released.
  • the state of the service providing device may also be set in this embodiment, including but not limited to:
  • the Idle state that is, the idle state, the service providing device in the state can be directly allocated to the required client;
  • the Busy state that is, the busy state, the service providing device in this state has been connected to the client and is in the service client, and can no longer be allocated;
  • Sleep state that is, a sleep state, when a service providing device having no redundant idle state in the system can be allocated, the system can wake up the service providing device in the state and assign it to the client;
  • the Exception state that is, the exception state, in which the allocation cannot be made
  • the management state that is, the management state, indicates that the service providing device is in the server management state and cannot be allocated.
  • the server selects the service providing device for the client from the service providing device matching the terminal type
  • one possible way is to: from the plurality of types matching the terminal type Determining, in the service providing device, an optional service providing device; determining whether the optional service providing device is in an idle state or a dormant state; if yes, determining whether the optional service providing device has been assigned to another client, if If not assigned, the optional service providing device is assigned to the client.
  • Another possible manner is: selecting one of the plurality of service providing devices matching the terminal type; determining whether the optional service providing device has been allocated to other clients, if not And assigning, determining whether the optional service providing device is in an idle state or a dormant state; if yes, assigning the optional service providing device to the client.
  • the client is reselected from a plurality of service providing devices matching the terminal type. a service providing device; and continuing to determine whether the reselected service providing device satisfies the set condition (ie, the service providing device is not assigned to the client, and/or the service providing device is in an idle state or a hibernation state) until The client selects the service providing device that satisfies the set condition, or until the number of times the service providing device is selected for the client reaches a first set threshold.
  • the threshold value can be set by a person skilled in the art according to the actual situation.
  • the setting can be analyzed according to historical experience or historical data, and the present invention does not limit this.
  • the service providing device Each time the service providing device is selected, the number of retries is increased by 1. If the unassigned service providing device is not obtained when the first set threshold is exceeded, there is currently no idle service providing device available, and the server can generate The message notification notifies the client that there is currently no idle service providing device that can be allocated and ends the process.
  • the client in order to balance efficiency and fairness, on the one hand, it can be set to the number of times the client selects the service to provide the device, so that, when the service providing device has been assigned to other clients or is not in an idle state or is not in a sleep state, Restrictively selecting a service providing device for the client, so that the allocation of the client for the additional demand service providing device cannot be performed; on the other hand, providing the client with multiple opportunities to obtain the service providing device within a limited number of times, avoiding Repeated acquisition and processing of information.
  • whether the service providing device has been assigned to other clients can be marked in the form of a setting identifier.
  • the service providing device is considered to have been assigned when the service providing device carries the setting identifier; or is not assigned when the service providing device carries the setting identifier.
  • the setting identifier may indicate whether the service providing device has been allocated in the form of an identifier bit: determining that the service providing device is not allocated when the flag bit in the service providing device is configured to be 0, and configuring the identifier bit of the service providing device When it is 1, it is determined that the service providing device is not allocated.
  • the service providing device may have an abnormal situation, such as an abnormal state or an administrative state as described above.
  • the server is from the service providing device matching the terminal type according to the terminal type of the client.
  • a service providing device may be selected from the service providing devices that match the terminal type according to the terminal type of the client; the selected service providing device is pre-allocated to the client first.
  • the setting state may include an idle state or a sleep state.
  • the current state of the service providing device if the current state of the service providing device is an idle state, determining to allocate the service providing device that satisfies the set state to the client; if the current state of the service providing device is In the sleep state, after the service providing device is woken up, the service providing device that satisfies the set state is allocated to the client.
  • the server may reselect a service providing device for the client from the plurality of service providing devices matching the terminal type; and continue to determine whether the reselected service providing device satisfies the setting condition and the The state is set until the client is assigned a service providing device that satisfies the set condition and the set state, or until the number of times the service providing device is selected for the client reaches the first set threshold.
  • the server is configured to efficiently and accurately allocate the service providing device to the client.
  • connection preparation process of the client and the service providing device described below may be further performed. It should be apparent to those skilled in the art that the following processes are based on the foregoing process of allocating a service providing device to a client, which is a further optional or preferred process of the resource allocation scheme of the present application, rather than a necessary process.
  • Step 208 The server notifies the service providing device allocated to the client to acquire the user data corresponding to the client.
  • the service providing device can successfully obtain the user data corresponding to the client at one time, but in order to avoid the abnormality in some cases, the acquisition process is further optimized in this embodiment, as follows:
  • Step 210 The server determines whether the service providing device allocated by the client successfully obtains the user data corresponding to the client; if yes, step 212 is performed; if not, step 214 is performed.
  • Step 212 The server identifies the service providing device as being allocated to the client.
  • the service providing device identified as being assigned to the client will not be considered as an available service providing device at the next allocation, and need not be distinguished whether it is available or not, further improving the speed and efficiency of allocating the service providing device to the client. .
  • the server may further acquire device information of the service providing device, and send the device information to the client, to notify the client to establish and The service provides a connection to the device.
  • the device information of a feasible service providing device includes, but is not limited to, at least one of an IP address, a port address (eg, a port port address), and an identity ID of the service providing device. Based on this information, the client can establish a connection with the service provider.
  • Step 214 The server returns to step 208, that is, the step of returning the notification that the service providing device that meets the set state acquires the user data corresponding to the client continues to execute until the service providing device successfully obtains the user data corresponding to the client, or The number of times the service providing device obtains the user data corresponding to the client reaches a second set threshold.
  • the second set threshold may be appropriately set by a person skilled in the art according to the actual situation, and the second set threshold may be the same as the first set threshold or may be different, which is not limited by the present invention.
  • the terminal information corresponding to the client is first obtained from the client, and the terminal type of the terminal corresponding to the client is determined according to the terminal information; and then, the service is provided from the service providing device that matches the terminal type.
  • the end allocates a service providing device. It can be seen that, by using an embodiment of the present application, on the one hand, a device that provides services for a terminal It is implemented by the service provider device on the network side. The terminal only needs to have the basic decoding function, and can obtain the service from the network side, and no longer depends on or is subject to the digital video conversion box. Further, in the resource allocation scheme of the present application, different terminal types correspond to different service providing devices.
  • the system After determining the terminal type, the system only needs to select from the service providing devices that match the type, This type of terminal is processed, thereby greatly reducing the number of data processing, improving the data processing efficiency, reducing the processing load of the system, improving the efficiency of allocating service providing device resources such as digital video conversion box resources, and greatly improving the terminal.
  • User experience After determining the terminal type, the system only needs to select from the service providing devices that match the type, This type of terminal is processed, thereby greatly reducing the number of data processing, improving the data processing efficiency, reducing the processing load of the system, improving the efficiency of allocating service providing device resources such as digital video conversion box resources, and greatly improving the terminal.
  • a smart television system may be employed: the smart television system may include at least one client, at least one dispatch server, and at least one service providing device.
  • the client is a terminal that can use the APP application provided by the service providing device, such as a set top box, a smart mobile terminal, a PAD (Portable Android Device tablet), a smart TV with a decoding function, and the like.
  • the service providing device can be set as a server in the cloud to remotely provide services for the client.
  • the scheduling server may select one of the plurality of service providing devices in the cloud to allocate to the client according to the set allocation policy.
  • the service providing device can be set in the cloud as a hardware device
  • the software (application) can be installed in the service providing device
  • the service providing device can be used in the cloud to set the user interface of various applications.
  • UI User Interface
  • the client has basic decoding capability to present the user interface of the application to the user, and realize operations on various applications.
  • the software (application) may not be installed in the set top box, may be installed in the service providing device, and provide services to the user through the service providing device. . Since the software can no longer be installed in the set top box, the set top box can no longer be set separately.
  • the smart mobile terminal (or a smart TV with decoding function) can be directly connected to the service providing device, and the user does not need to The purchase/set-up of the set-top box separately saves the user's cost; at the same time, the intelligent mobile terminal (or the smart TV with decoding function) directly interacts with the service providing device, thereby improving the interaction efficiency, reducing the maintenance steps for the set-top box, and reducing the maintenance steps. The occupation of resources.
  • the scheduling server may refer to a server, or may refer to a server group composed of multiple servers equivalent to the scheduling server function.
  • the user interface displayed on the client side is capable of providing various network services for the user.
  • the user interface may include various menu options or icons, such as: high definition video, ultra clear. TV, software download, games, life services (such as payment, shopping, etc.), so that through the client, users can watch HD movies and TV, play somatosensory games, popular large 3D games, online shopping, pay for water and electricity on TV for free. Cost and more.
  • the user can continue to enter the corresponding UI interface to perform operations, such as local or network resources when playing HD video.
  • the user can control through the external device of the remote controller, such as selecting a certain function and entering the next level interface, and the UI interface is displayed based on the transport stream of the service providing device. Therefore, the control response to the UI interface is also performed by the service providing device.
  • the service providing device virtualizes an input device in the user space, simulates a hardware input signal through the virtual input device, and injects an input signal of the user into the system to input an event and distribute the image, thereby realizing The service provides the device's response to user control.
  • the architecture of a preferred smart television system is as shown in FIG.
  • the smart television system may specifically include: at least one device server (such as the device server 301 shown in FIG. 3), at least one scheduling server (such as the scheduling server 302 shown in FIG. 3), and at least one client. End (client 303 shown in Figure 3).
  • Each device server includes at least one service providing device (such as the service providing device 304 in the device server 301 shown in FIG. 3).
  • the smart television system may further include: at least one management server (such as the management server 305 shown in FIG. 3) and at least one user data storage device (such as the user data storage device 306 shown in FIG. 3).
  • the user data storage device is used to store user data, and one user may correspond to a dedicated user data storage device, and multiple users may share the same user data storage device, which is not limited in this embodiment.
  • the user data storage device may be a physical device, a logical device, or a combination of physical and logical devices.
  • the user data storage device may include at least one user partition (such as the user partition 307 shown in FIG. 3), and each user partition correspondingly stores user data of one user.
  • the client 303 may be a hardware device as described above, such as a set top box, a smart mobile terminal, a PAD, a smart TV with a decoding function, and the like.
  • the client 303 may also be in the form of a smart TV terminal, which may be presented in the form of an APP (Application) installed in the smart TV terminal.
  • the smart TV terminal herein may specifically include: a set top box and a mobile terminal. , smart TV, etc.
  • the client 303 can be used to play a user interface parsed by a transport stream (TS) sent by the service providing device 304, and play multimedia data (such as video signals, audio signals, etc.) acquired from other network servers.
  • TS transport stream
  • the client 303 can be used to listen to an input message generated by the user through an input device such as a remote controller, and send the input message to the service providing device 304 or the dispatch server 302.
  • an input device such as a remote controller
  • the client 303 only parses and displays, and the input message controlled by the client 303 to the user interface is also forwarded to the service providing device 304 to adjust the user interface accordingly.
  • the service providing device 304 is located on the network side, and each of the service providing devices may specifically include: a software module carried by the hardware board and the hardware board. It should be noted that, in this embodiment, various applications may be directly installed in the service providing device, and the user may perform the application in the service providing device 304 through the user interface corresponding to the application displayed by the client 303. In the operation, it is no longer necessary to separately install an application in the client 303, so that the technician can perform unified maintenance on the smart television system, thereby reducing the workload and improving the maintenance efficiency.
  • the user partition 307 is located on the network side. Generally, each user applies a user partition, and user data of each user is saved under the corresponding user partition. Further, each user partition has a unique address information, and the address information may indicate a specific address of the corresponding user partition, and the user information may be quickly found through the address information to complete the call of the user data. In other words, the dispatch server 302 (or the management server 305) can perform maintenance only on address information (small data amount) without maintaining the entire user data (large data amount), reducing the amount of data maintained. , reducing resource occupation, improving system running speed, and user data is easy to find.
  • the scheduling server 302 is located on the network side, and is mainly configured to allocate an idle, stateful service providing device 304 to the client 303 according to the request message sent by the client 303.
  • the user partition corresponding to the user ID may be mounted to the The assigned service providing device 304, that is, each user partition may correspond to a unique user ID, such as user partition A corresponding to user A, etc., such that user A is at client 303 with the last assigned, After the service provider device with the number 001 is disconnected, even if the service provider device with the number 002 is connected next time, the user A can still use the user partition A, and can use data such as the previous history.
  • the management server 305 is located on the network side and can be used to manage all the service providing devices.
  • the management may include: status reporting, heartbeat management, setting attributes, obtaining attributes, network wake-up, soft restart, hard restart, etc.; visible, management
  • the server 305 can be used as a remote server to implement network wake-up of the service providing device in the wide area network by using the technical solution of the present application.
  • the service providing device adopts a reusable mechanism, that is, one service providing device serves to continue servicing another client after the client resets. That is, in service delivery equipment and customers After the connection is established, the two are the only interactions, and when the completion of the service is disconnected, the service providing device does not have a direct correspondence with the client, but waits for the system to allocate other clients. Therefore, the service providing device can serve one client at a time, and if the service providing device is not used for a set length of time, it will enter a power-saving sleep state.
  • the Idle state that is, the idle state, the service providing device in the state can be directly allocated to the required client;
  • the Busy state that is, the busy state, the service providing device in this state has been connected to the client and is in the service client, and can no longer be allocated;
  • Sleep state that is, a sleep state, when a service providing device having no redundant idle state in the system can be allocated, the system can wake up the service providing device in the state and assign it to the client;
  • the Exception state that is, the exception state, in which the allocation cannot be made
  • the management state that is, the management state, indicates that the service providing device is in the server management state and cannot be allocated.
  • the resource allocation method in the smart television system is taken as an example to describe the resource allocation method in detail. In the case of no contradiction, the method can be combined with the method in the above embodiment.
  • the resource allocation method described in this embodiment will be specifically described below.
  • the resource allocation method includes:
  • Step 402 The scheduling server determines the terminal type of the client-compatible terminal.
  • the terminal type may be determined according to the terminal information reported by the client, for example, determining the terminal type of the client-compatible terminal according to the maximum resolution supported by the client. For example, in the present embodiment, it is determined that the terminal type is terminal type 2.
  • step 404 the scheduling server acquires the distributed lock 2 that matches the terminal type 2.
  • each terminal type client may have a corresponding distributed lock
  • the distributed lock may be implemented through a database. For example, by writing uniquely constrained data to ensure that at the same point in time, a distributed queue serves only the terminals corresponding to one type of client.
  • the distributed lock 2 is successfully acquired, the following step 406 is performed; otherwise, the process returns to step 404 to re-acquire the distributed lock 2.
  • Step 406 after the scheduling server determines that the distributed lock 2 is acquired, the distributed queue 2 is locked using the acquired distributed lock 2.
  • Step 408 The scheduling server determines whether there is a service providing device in the distributed distributed queue 2.
  • the distributed queue can also be implemented through a database.
  • the service providing device in the distributed queue may be a service providing device that is obtained from the database and has a state of Idle or Sleep.
  • the service providing devices in each distributed queue correspond to the same terminal type. That is, the service providing devices in the distributed queue 2 are all service providing devices that match the terminal type 2.
  • the scheduling server determines that there is no service providing device in the distributed queue 2, it means that there are not enough service providing devices in the library, and the related message notification (eg, there is not enough service providing device) can be returned to the client. And end the process. If the scheduling server determines that there is a service providing device in the distributed queue 2, the following step 410 is performed.
  • Step 410 The scheduling server fetches the service providing device 2 from the distributed queue 2.
  • the service providing device 2 may be an Idle state or a service providing device in a Sleep state.
  • step 412 the dispatching server releases the distributed lock 2.
  • step 414 the scheduling server determines whether the service providing device 2 has been allocated.
  • a tag may be set to the service providing device to indicate whether the service providing device is allocated. For example, if the scheduling server determines that the service providing device 2 carries the tag, the service providing device 2 has been allocated to other clients. In this case, when the number of retries is less than or equal to the maximum number of retries s times, the process returns to step 404 to re-execute Get distributed lock 2. It should be noted that, after each retry, the number of retry attempts is increased by 1. If the unassigned service providing device is not obtained when the number of retry attempts exceeds the maximum number of retry attempts, the related message may be notified (eg, , there are not enough services to provide the device) to return to the client and end the process. If the scheduling server determines that the service providing device 2 does not carry the tag, it indicates that the service providing device 2 is not assigned to other clients, and may continue to perform the following step 416.
  • step 416 the scheduling server determines whether the service providing device 2 is in an Idle state or a Sleep state.
  • the step 404 may be returned when the number of retries is less than or equal to the maximum number of retries s times. After each retry, the number of retries is increased by 1. If the number of retries exceeds the maximum number of retries s times, the relevant message notification (for example, there is not enough service providing device) can be returned to the client, and the process ends.
  • step 418 can be continued.
  • step 418 the scheduling server determines whether the service providing device 2 is in an Idle state or a Sleep state.
  • the scheduling server determines that the service providing device 2 is in the Idle state, the following step 420 is directly performed; if the scheduling server determines that the service providing device 2 is in the Sleep state, the service provider in the Sleep state is awake. Device 2 then performs the following step 420.
  • steps 414, 416 and 418 are optional steps, that is, the above steps 414, 416 and 418 may not be performed, and at least one step may be selected. It should be apparent to those skilled in the art that if at least one of the steps is selected, there is no necessary sequence between the above steps 414, 416 and 418.
  • Step 420 The scheduling server notifies the service providing device 2 to prepare user data corresponding to the client.
  • the dispatch server notifies the service providing device 2 to update the user data corresponding to the client.
  • the service providing devices are shared, that is, one service providing device can provide services for a plurality of different clients at different times.
  • the user data corresponding to the client is stored separately. Therefore, before the service providing device is allocated to the client, it is necessary to ensure that the user data loaded by the service providing device is user data that matches the client.
  • step 422 the scheduling server determines whether the service providing device 2 successfully updates the user data.
  • step 424 if it is determined that the service providing device 2 updates the user data successfully, the following step 424 is performed. If it is determined that the service providing device 2 fails to update the user data, the process may return to step 404 when the number of retries is less than or equal to the maximum number of retries s times. After each retry, the number of retries is incremented by one. If the number of retries exceeds the maximum number of retries s times, relevant message notifications (eg, client data exceptions) can be returned to the client, and the process ends.
  • relevant message notifications eg, client data exceptions
  • step 424 the scheduling server sets the information that has been allocated for the service providing device 2.
  • the dispatch server sets the information that has been assigned to the service providing device 2, for example, indicating that the service providing device 2 has been allocated by the previous Tag.
  • the set tag has an expiration date. For example, after 3 minutes, the tag is automatically invalidated, and the tag is set for the service providing device 2 (that is, set to be allocated).
  • the role is to prevent the service providing device 2 from being taken out again and assigned to the other. Client.
  • step 424 is an optional step, and may or may not be performed according to actual conditions. Further, the step 424 may be performed after the step 422 described above, or may be performed after any other suitable steps, for example, after step 414, or after step 416, or after step 418. Furthermore, to ensure that the service providing device 2 is not repeatedly allocated, the step 414 can also be performed multiple times throughout the process, such as step 424 can be performed after both step 414 and step 422. This embodiment does not limit this.
  • Step 426 The scheduling server sends the device information of the service providing device 2 to the client, and notifies the client to establish a connection with the service providing device according to the device information.
  • the scheduling server may send the device information of the service providing device 2 (eg, the IP address, the port address, and the identity ID of the service providing device 2) to the client, and the client may use the device letter.
  • the information connection service provides the device 2.
  • the scheduling server may set the state of the service providing device 2 to the Busy state (busy state) and report the current Busy state of the service providing device 2.
  • the scheduling server in the smart television system acquires the terminal information of the client-compatible terminal from the client, and determines the terminal type of the client-compatible terminal according to the terminal information; Then, the service providing device is selected from the distributed queues matching the terminal type, and the service providing device is notified to acquire and update the user data matching the client; finally, the service providing the user data update is successfully completed.
  • the device is assigned to the client. It can be seen that in the embodiment, the service providing device can be allocated to the client through the scheduling server in the smart television system, and the distributed service providing device provides the service to the client. In other words, in this embodiment, only the software update or hardware upgrade of the service providing device in the cloud can meet the update requirement of the user, and the user is no longer required to update the client, which saves user time and reduces User costs.
  • the device that provides the service for the terminal is implemented by the service providing device on the network side, and the terminal only needs to have the basic decoding function, and the service can be obtained from the network side, and is no longer dependent on or subject to the digital video conversion box.
  • different terminal types correspond to different service providing devices. After determining the terminal type, the system only needs to select from the service providing devices that match the type, and only needs to process the types of terminals. Thereby, the number of data processing is greatly reduced, the data processing efficiency is improved, the processing load of the system is reduced, the efficiency of allocating service providing device resources such as digital video conversion box resources is improved, and the user experience of the terminal user is greatly improved.
  • the smart TV can be directly provided by the service providing device, and the set-top box is no longer required to be separately set, thereby reducing the maintenance steps of the set-top box by the user. Reduce the occupation of resources while saving user costs.
  • the scheduling server allocates the service providing device that satisfies the set state condition to the client, the allocated service providing device can be prevented from providing the service normally, the allocation error is reduced, and the system is improved. Fault tolerance rate.
  • the plurality of determinations are confirmed from the obtained service providing device, for example, determining whether the service providing device has been allocated, determining whether the service providing device satisfies the set state condition, or the like, further improving the allocation.
  • the accuracy of the service provided equipment may be updated when the service providing device is not allocated, thereby improving resource utilization and improving system working efficiency.
  • the present application further provides a resource allocation device.
  • the server in the smart television system described in the foregoing embodiment may include the resource allocation device, that is, the resource allocation device may be used to implement the foregoing method embodiment.
  • the features in the above method embodiments can be applied to the embodiment.
  • the resource allocation apparatus includes:
  • the obtaining module 502 is configured to obtain terminal information of the client-compatible terminal.
  • a determining module 504 configured to determine, according to the terminal information, a terminal type of the client-compatible terminal;
  • the distribution module 506 is configured to allocate, to the client, a service providing device that matches the terminal type according to the terminal type of the client-compatible terminal, where the service providing device is configured to provide a service for the client.
  • the terminal information corresponding to the client is first obtained from the client, and the terminal type of the terminal corresponding to the client is determined according to the terminal information; and then, the terminal type is matched.
  • a service providing device is allocated to a client in a service providing device. It can be seen that, by using the embodiment of the present application, on the one hand, the device that provides the service for the terminal is implemented by the service providing device on the network side, and the terminal only needs to have the basic decoding function, and can obtain the service from the network side, and no longer depends on or is subject to the digital Video converter box. Further, in the resource allocation scheme of the present application, different terminal types correspond to different service providing devices.
  • the system After determining the terminal type, the system only needs to select from the service providing devices that match the type, This type of terminal is processed, thereby greatly reducing the number of data processing, improving the data processing efficiency, reducing the processing load of the system, improving the efficiency of allocating service providing device resources such as digital video conversion box resources, and greatly improving the terminal.
  • User experience After determining the terminal type, the system only needs to select from the service providing devices that match the type, This type of terminal is processed, thereby greatly reducing the number of data processing, improving the data processing efficiency, reducing the processing load of the system, improving the efficiency of allocating service providing device resources such as digital video conversion box resources, and greatly improving the terminal.
  • the resource allocation apparatus may be disposed in the smart television system, and the resource allocation apparatus may specifically include:
  • the obtaining module 602 is configured to obtain terminal information of the client-compatible terminal, and the determining module 604 is configured to determine, according to the terminal information, a terminal type of the client-compatible terminal, and the assigning module 606, configured to use, according to the terminal type of the terminal corresponding to the client,
  • the client is assigned a service providing device that matches the terminal type, wherein the service providing device is used to provide a service to the client.
  • the allocating module 606 is configured to select a service providing device for the client from the service providing device that matches the terminal type according to the terminal type of the client, wherein the selected service providing device satisfies the setting condition.
  • the setting condition includes: the service providing device is not allocated to the client; and/or the service providing device is in an idle state or a dormant state.
  • the allocating module 606 includes: a first allocating submodule 6062, configured to select one of the plurality of service providing devices that match the terminal type; determine whether the optional service providing device is in an idle state or sleep. a state; if yes, determining whether an optional service providing device has been assigned to another client, and if not assigned, assigning the optional service providing device to the client; or, the second assigning submodule 6064, For selecting one of the plurality of service providing devices matching the terminal type; determining whether the optional service providing device has been allocated to other clients, and if not assigned, determining the optional service providing Whether the device is idle or hibernating; if so, the optional service providing device is assigned to the client.
  • a first allocating submodule 6062 configured to select one of the plurality of service providing devices that match the terminal type; determine whether the optional service providing device is in an idle state or sleep. a state; if yes, determining whether an optional service providing device has been assigned to another client, and if not assigned, assigning the optional service providing
  • the allocating module 606 further includes: a first reselecting submodule 6066, if the optional service providing device has been assigned to another client or is not in an idle state or is not in a dormant state, Reselecting a service providing device for the client in the matched plurality of service providing devices; the first returning execution sub-module 6068 is configured to continue to determine whether the reselected service providing device satisfies the setting condition until the client selects The service providing device that satisfies the set condition, or until the number of times the service providing device is selected for the client reaches a first set threshold.
  • the allocating module 606 includes: a selecting submodule 60610, configured to select one service providing device from the service providing devices that match the terminal type according to the terminal type of the client; the pre-allocation sub-module 60612 is configured to select the first The service providing device is pre-allocated to the client; the first determining sub-module 60614 is configured to determine a current state of the service providing device pre-allocated to the client; and the determining the sub-module 60616 is configured to: if the current state of the service providing device meets the set state And determining to assign the service providing device that satisfies the set state to the client.
  • a selecting submodule 60610 configured to select one service providing device from the service providing devices that match the terminal type according to the terminal type of the client
  • the pre-allocation sub-module 60612 is configured to select the first The service providing device is pre-allocated to the client
  • the first determining sub-module 60614 is configured to determine a current state of the service providing device
  • the setting state includes an idle state or a sleep state
  • determining the allocation submodule 60616 includes: a first determining an allocation submodule, configured to determine that the setting is satisfied if a current state of the service providing device is an idle state The service providing device of the state is allocated to the client; the second determining the assigning submodule is configured to allocate the service providing device that satisfies the set state to the service providing device after the service providing device is awake after the current state of the service providing device is the sleep state Client.
  • the allocating module 606 further includes: a second reselecting submodule 60618, configured to re-create the client from the plurality of service providing devices that match the terminal type if the current state of the service providing device does not satisfy the set state Choose Selecting a service providing device; the second returning execution sub-module 60620 is configured to continue to determine whether the re-selected service providing device satisfies the set condition and the set state, until the client is configured to meet the set condition and the setting The service provider of the status, or until the number of times the service is provided for the client, reaches a first set threshold.
  • a second reselecting submodule 60618 configured to re-create the client from the plurality of service providing devices that match the terminal type if the current state of the service providing device does not satisfy the set state Choose Selecting a service providing device
  • the second returning execution sub-module 60620 is configured to continue to determine whether the re-selected service providing device satisfies the set condition and the set state,
  • the resource allocation apparatus of this embodiment further includes: a notification module 608, configured to notify the service providing device that is allocated by the client to acquire the client after the allocating module 606 allocates the service providing device matching the terminal type to the client Corresponding user data.
  • a notification module 608 configured to notify the service providing device that is allocated by the client to acquire the client after the allocating module 606 allocates the service providing device matching the terminal type to the client Corresponding user data.
  • the resource allocation apparatus of this embodiment further includes: a second determining module 610, configured to determine, after the notification module 608, the service providing device allocated by the client acquires the user data corresponding to the client, determine the service allocated by the client Providing whether the device successfully obtains the user data corresponding to the client; the executing module 612 is configured to: if the determination result of the second determining module 610 is yes, identify the service providing device as being allocated to the client; if the second determining module 610 If the result of the determination is no, the return notification module 608 continues to execute until the service providing device successfully obtains the user data corresponding to the client, or until the number of times the service providing device acquires the user data corresponding to the client reaches a second set threshold.
  • a second determining module 610 configured to determine, after the notification module 608, the service providing device allocated by the client acquires the user data corresponding to the client, determine the service allocated by the client Providing whether the device successfully obtains the user data corresponding to the client
  • the executing module 612 is configured
  • the resource allocation apparatus of this embodiment further includes: a sending module 614, configured to acquire device information of the service providing device after the executing module 612 identifies the service providing device as being allocated to the client; and send the device information To the client, to notify the client to establish a connection with the service providing device according to the device information.
  • a sending module 614 configured to acquire device information of the service providing device after the executing module 612 identifies the service providing device as being allocated to the client; and send the device information To the client, to notify the client to establish a connection with the service providing device according to the device information.
  • the allocating module 606 includes: a queue determining sub-module 60622, configured to determine, according to the terminal type of the client-compatible terminal, a distributed queue that matches the terminal type, where the distributed queue includes: matching the terminal type
  • the at least one service providing device information the device allocation sub-module 60624 is configured to allocate a service providing device to the client according to the information of the at least one service providing device in the distributed queue.
  • the device allocation sub-module 60624 includes: an acquisition sub-module for acquiring a distributed lock corresponding to the distributed queue; and a lock distribution sub-module for locking the distributed queue after using the distributed lock, according to the distribution At least one service in the queue provides information about the device, and the service is provided to the client.
  • the device allocation submodule 60624 further includes: a release submodule, configured to release the distributed lock of the distributed queue after the service providing device is allocated to the client.
  • a release submodule configured to release the distributed lock of the distributed queue after the service providing device is allocated to the client.
  • the resource allocation apparatus in this embodiment is used to implement the resource allocation method in the foregoing multiple method embodiments, and has the beneficial effects of the corresponding method embodiments, and details are not described herein again.
  • the embodiment of the present application further discloses a smart television system, including: at least one server, at least one client, and at least one service providing device; wherein the server is configured to allocate a service providing device to the client;
  • the client is disposed in a smart TV, and the service providing device is disposed on a network side, and is configured to provide an Internet service for establishing a connected client through a network;
  • the server may include the resource allocation device described in Embodiment 4 above, or the resource allocation device optimized in Embodiment 5.
  • the system further includes: one less user data storage device; the at least one user data storage device includes: at least one user partition; wherein the at least one user partition is respectively configured to store user data corresponding to different clients.
  • the service providing device includes: a network set top box; the internet service includes at least one of the following: a live television, an audio and video service, a web service, and a game service.
  • the smart television system is basically the same as the system described in FIG. 3 above, and therefore will not be described again.
  • This application can be used in a variety of general purpose or special purpose computing system environments or configurations.
  • the application can be described in the general context of computer-executable instructions executed by a computer, such as a program module.
  • program modules include routines, programs, objects, components, data structures, and the like that perform particular tasks or implement particular abstract data types.
  • the present application can also be practiced in distributed computing environments where tasks are performed by remote processing devices that are connected through a communication network.
  • program modules can be located in both local and remote computer storage media including storage devices.
  • a component can be, but is not limited to being, a process running on a processor, a processor, an object, an executable component, a thread of execution, a program, and/or a computer.
  • an application or script running on a server, or a server can be a component.
  • One or more components can be executed in a process and/or thread, and the components can be localized on a single computer and/or distributed between two or more computers and can be run by various computer readable media. .
  • the component may also pass signals based on data having one or more data packets, for example, from a signal interacting with another component in the local system, the distributed system, and/or interacting with other systems over the network of the Internet. Local and/or remote processes to communicate.
  • embodiments of the present application can be provided as a method, system, or computer program product.
  • the present application can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment in combination of software and hardware.
  • the application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the device is implemented in a flow or a block diagram of a flow or a block diagram or The functions specified in multiple boxes.
  • These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
  • the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.

Abstract

Provided are a resource allocation method and apparatus, and a smart television system. The resource allocation method comprises: obtaining terminal information of a terminal corresponding to a client; determining, according to the terminal information, a terminal type of the terminal corresponding to the client; and allocating, according to the terminal type of the terminal corresponding to the client, a service providing device that matches the terminal type to the client, the service providing device being used for providing a service for the client. By means of the present application, the existing problem that providing a service for a terminal needs to rely on and is restricted by a digital video conversion box is resolved.

Description

一种资源分配方法、装置和智能电视***Resource allocation method, device and smart television system
本申请要求2015年06月17日递交的申请号为201510338804.7、发明名称为“一种资源分配方法、装置和智能电视***”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。The present application claims the priority of the Chinese Patent Application No. 201510338804.7, entitled "A Resource Allocation Method, Apparatus, and Smart Television System", which is hereby incorporated by reference. .
技术领域Technical field
本申请涉及互联网技术领域,具体涉及一种资源分配方法、装置和智能电视***。The present application relates to the field of Internet technologies, and in particular, to a resource allocation method, apparatus, and smart television system.
背景技术Background technique
随着互联网技术的发展,智能电视、数字视频变换盒的出现,使得电视节目***也越来越智能化,除了传统的电视节目的播出之外,还可以进行互联网活动。With the development of Internet technology, the emergence of smart TV and digital video converter boxes has made the TV program system more and more intelligent. In addition to the broadcast of traditional TV programs, Internet activities can also be carried out.
以数字视频变换盒为例,数字视频变换盒(Set Top Box,简称STB),通常也可以称作机顶盒或机上盒,是一个连接电视机与外部信号源的设备。数字视频变换盒可以将压缩的数字信号转成电视内容,并在电视机上显示出来。所述数字信号信号可以来自有线电缆、卫星天线、宽带网络以及地面广播等等。数字视频变换盒除了可以接收上述可以转换为电视内容的数字信号之外,还可以接收数字内容,例如,电视节目指南、因特网网页、电子邮件等等。使用户能在现有电视机上观看数字电视节目,并可以通过网络进行交互式数字化娱乐、教育和网络购物等活动。Taking a digital video conversion box as an example, a digital video conversion box (STB), which can also be called a set-top box or a set-top box, is a device that connects a television to an external signal source. The digital video converter box converts the compressed digital signal into television content and displays it on the television. The digital signal signals can be from cable cables, satellite antennas, broadband networks, terrestrial broadcasts, and the like. In addition to receiving the digital signals that can be converted to television content, the digital video converter box can also receive digital content, such as television program guides, Internet web pages, emails, and the like. Enables users to watch digital TV shows on existing TV sets and interactive digital entertainment, education and online shopping through the web.
由上可见,上述数字电视节目的播出、交互式数字化娱乐、教育和网络购物等活动都需要通过所述数字视频变换盒(或智能电视)实现。在目前电视节目***中,数字视频变换盒与电视机的连接是相对固定的,即,一个数字视频变换盒固定为一个终端如电视机提供服务。终端想要获得的服务也只能通过数字视频变换盒实现。然而,一方面,互联网技术的发展日新月异的、各种应用也在不断更新变化,当数字视频变换盒不能满足应用的更新变化时,则将不能正常为电视终端提供服务;另一方面,数字视频变换盒的任何异常或故障,可能导致终端不能获得服务。It can be seen from the above that the above-mentioned digital television program broadcast, interactive digital entertainment, education and online shopping activities need to be realized by the digital video conversion box (or smart TV). In current television program systems, the connection of the digital video converter box to the television set is relatively fixed, i.e., a digital video converter box is fixed to serve a terminal such as a television set. The service that the terminal wants to obtain can only be realized by the digital video converter box. However, on the one hand, the development of Internet technology is changing with each passing day, and various applications are constantly changing. When the digital video converter box cannot meet the update changes of the application, it will not be able to provide services for the TV terminal normally; on the other hand, digital video Any abnormality or malfunction of the change box may result in the terminal not being able to obtain the service.
发明内容Summary of the invention
本申请提供了一种资源分配方法、装置和智能电视***,以解决现有的为终端提供服务需要依赖并受制于数字视频变换盒的问题。The present application provides a resource allocation method, apparatus, and smart television system to solve the problem that the existing service for the terminal needs to be relied upon and subject to the digital video conversion box.
为了解决上述问题,本申请公开了一种资源分配方法,包括:获取客户端对应终端 的终端信息;根据所述终端信息确定所述客户端对应终端的终端类型;根据所述客户端对应终端的终端类型,为所述客户端分配与所述终端类型相匹配的服务提供设备,其中,所述服务提供设备用于为所述客户端提供服务。In order to solve the above problem, the present application discloses a resource allocation method, including: acquiring a client-side terminal The terminal information of the terminal corresponding to the terminal is determined according to the terminal information; and the service providing device that matches the terminal type is allocated to the client according to the terminal type of the terminal corresponding to the client, wherein The service providing device is configured to provide services for the client.
为了解决上述问题,本申请还公开了一种资源分配装置,包括:获取模块,用于获取客户端对应终端的终端信息;确定模块,用于根据所述终端信息确定所述客户端对应终端的终端类型;分配模块,用于根据所述客户端对应终端的终端类型,为所述客户端分配与所述终端类型相匹配的服务提供设备,其中,所述服务提供设备用于为所述客户端提供服务。In order to solve the above problem, the present application further discloses a resource allocation apparatus, including: an obtaining module, configured to acquire terminal information of a client-side terminal; and a determining module, configured to determine, according to the terminal information, the client-side terminal a terminal type; an allocation module, configured to allocate, according to a terminal type of the client-compatible terminal, a service providing device that matches the terminal type, where the service providing device is used for the client Provide services.
为了解决上述问题,本申请还公开了一种智能电视***,包括:至少一个服务器、至少一个客户端、至少一个服务提供设备;其中,所述服务器包括上述的资源分配装置;所述服务器用于向所述客户端分配服务提供设备;所述客户端设置在智能电视中,所述服务提供设备设置在网络侧,用于通过网络为建立连接的客户端提供互联网服务。In order to solve the above problems, the present application further discloses a smart television system, including: at least one server, at least one client, and at least one service providing device; wherein the server includes the resource allocation device described above; The service providing device is allocated to the client; the client is set in a smart TV, and the service providing device is disposed on the network side for providing an Internet service for the connected client through the network.
与现有技术相比,本申请包括以下优点:Compared with the prior art, the present application includes the following advantages:
在本申请实施例中,首先从客户端获取所述客户端对应的终端信息,根据所述终端信息确定所述客户端对应终端的终端类型;然后,从与终端类型相匹配的服务提供设备中为客户端分配服务提供设备。可见,通过本申请实施例,一方面,为终端提供服务的设备由网络侧的服务提供设备实现,终端只需具有基本的解码功能,即可从网络侧获取服务,不再依赖或受制于数字视频变换盒。进一步地,本申请的资源分配方案中,不同的终端类型对应有不同的服务提供设备,在确定了终端类型后,***只需从与该种类型相匹配的服务提供设备中进行选择,只需对该种类型的终端进行处理,由此大大减少了数据处理数量,提高了数据处理效率,减轻了***处理负担,提高了分配服务提供设备资源如数字视频变换盒资源的效率,大大提升了终端使用者的使用体验。In the embodiment of the present application, the terminal information corresponding to the client is first obtained from the client, and the terminal type of the terminal corresponding to the client is determined according to the terminal information; and then, from the service providing device that matches the terminal type. Assign a service provider device to the client. It can be seen that, by using the embodiment of the present application, on the one hand, the device that provides the service for the terminal is implemented by the service providing device on the network side, and the terminal only needs to have the basic decoding function, and can obtain the service from the network side, and no longer depends on or is subject to the digital Video converter box. Further, in the resource allocation scheme of the present application, different terminal types correspond to different service providing devices. After determining the terminal type, the system only needs to select from the service providing devices that match the type, This type of terminal is processed, thereby greatly reducing the number of data processing, improving the data processing efficiency, reducing the processing load of the system, improving the efficiency of allocating service providing device resources such as digital video conversion box resources, and greatly improving the terminal. User experience.
附图说明DRAWINGS
图1是本申请实施例一中一种资源分配方法的步骤流程图;1 is a flow chart showing the steps of a resource allocation method in Embodiment 1 of the present application;
图2是本申请实施例二中一种资源分配方法的步骤流程图;2 is a flow chart showing the steps of a resource allocation method in Embodiment 2 of the present application;
图3是本发明实施例三中的一种智能电视***的架构图;3 is a structural diagram of a smart television system according to Embodiment 3 of the present invention;
图4是本申请实施例三中一种云盒的分配方法的步骤流程图;4 is a flow chart showing the steps of a method for allocating a cloud box according to Embodiment 3 of the present application;
图5是本申请实施例四中一种资源分配装置的结构框图;5 is a structural block diagram of a resource allocation apparatus in Embodiment 4 of the present application;
图6是本申请实施例五中一种资源分配装置的结构框图。 FIG. 6 is a structural block diagram of a resource allocation apparatus in Embodiment 5 of the present application.
具体实施方式detailed description
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。The above described objects, features and advantages of the present application will become more apparent and understood.
本申请实施例的资源分配方法可以应用于包括客户端以及服务提供设备的***中,其中,服务提供设备可以向客户端提供各类服务。例如,智能电视***;其中,所述智能电视***包括:至少一个服务器、至少一个客户端、至少一个服务提供设备;其中,所述服务器用于向所述客户端分配服务提供设备;所述客户端设置在智能电视中,所述服务提供设备设置在网络侧,用于通过网络为建立连接的客户端提供互联网服务。The resource allocation method of the embodiment of the present application can be applied to a system including a client and a service providing device, wherein the service providing device can provide various services to the client. For example, a smart television system; wherein the smart television system comprises: at least one server, at least one client, at least one service providing device; wherein the server is configured to allocate a service providing device to the client; the client The terminal is disposed in the smart TV, and the service providing device is disposed on the network side, and is configured to provide an Internet service for the connected client through the network.
可选地,所述智能电视***,还可以包括至少一个用户数据信息存储设备;所述至少一个用户数据信息存储设备包括:至少一个用户分区;其中,所述至少一个用户分区分别用于存储不同客户端对应的用户数据。Optionally, the smart television system may further include at least one user data information storage device; the at least one user data information storage device includes: at least one user partition; wherein the at least one user partition is used to store different User data corresponding to the client.
可选地,所述服务提供设备包括:网络机顶盒;所述互联网服务,包括如下中的至少一个:电视直播、音视频服务、网页服务、游戏服务。Optionally, the service providing device includes: a network set top box; the internet service includes at least one of the following: a live television, an audio and video service, a web service, and a game service.
以下,基于上述智能电视***架构,对本申请实施例中的设备连接方案进行说明。但本领域技术人员应当明了,在实际使用中,本领域技术人员根据实际需要,依照上述智能电视***架构所做的等同替换或容易想到的改变,均在本发明的保护范围内。The device connection scheme in the embodiment of the present application is described below based on the above-mentioned smart television system architecture. However, it should be apparent to those skilled in the art that, in actual use, those skilled in the art, according to actual needs, equivalent replacements or conceivable changes made in accordance with the above-described smart television system architecture are within the scope of the present invention.
实施例一Embodiment 1
参照图1,示出了本申请实施例一中一种资源分配方法的步骤流程图。Referring to FIG. 1, a flow chart of steps of a resource allocation method in Embodiment 1 of the present application is shown.
在本实施例中,以上述智能电视***架构中的服务器的角度,对本实施例的资源分配方法进行说明。本实施例的资源分配方法具体可以包括如下步骤:In this embodiment, the resource allocation method of this embodiment is described in the perspective of a server in the above-described smart television system architecture. The resource allocation method in this embodiment may specifically include the following steps:
步骤102,获取客户端对应终端的终端信息。Step 102: Obtain terminal information of the client-compatible terminal.
在本实施例中,终端信息包括但不仅限于:终端的主屏尺寸、主屏材质、终端支持的最大分辨率、CPU型号、支持的音频格式和支持的视频格式中的至少一种。本领域技术人员可以采用任意一种适当的方式获取用于指示所述客户端对应终端的终端类型的终端信息,然后根据获取的终端信息确定终端类型。In this embodiment, the terminal information includes, but is not limited to, at least one of a main screen size of the terminal, a main screen material, a maximum resolution supported by the terminal, a CPU model, a supported audio format, and a supported video format. A person skilled in the art may obtain terminal information for indicating the terminal type of the client corresponding terminal in any suitable manner, and then determine the terminal type according to the acquired terminal information.
步骤104,根据所述终端信息确定所述客户端对应终端的终端类型。Step 104: Determine, according to the terminal information, a terminal type of the client-compatible terminal.
以终端信息包括终端支持的最大分辨率的信息为例,如,型号为A的客户端A对应终端所支持的最大分辨率为800x480像素,型号为B的客户端B对应终端所支持的最大分辨率为1334x750像素。则,可以获取客户端对应终端的最大分辨率信息,然后根据获 取的最大分辨率信息来确定客户端对应终端的类型是型号A或型号B。当然,也可以根据客户端对应终端的其它参数信息来确定客户端对应终端的终端类型,在此不一一说明。For example, the terminal information includes the maximum resolution information supported by the terminal. For example, the maximum resolution supported by the client A corresponding to the model A is 800×480 pixels, and the client B supported by the model B supports the maximum resolution supported by the terminal. The rate is 1334x750 pixels. Then, the maximum resolution information of the client corresponding terminal can be obtained, and then obtained according to The maximum resolution information is taken to determine whether the type of the client-compatible terminal is model A or model B. Certainly, the terminal type of the client-compatible terminal may also be determined according to other parameter information of the client-compatible terminal, which is not described herein.
需要说明的是,若所述客户端呈现为智能电视终端中装载的APP的形式时,可以将所述客户端视为装载有所述APP的智能电视终端。It should be noted that, if the client is presented in the form of an APP loaded in the smart TV terminal, the client may be regarded as a smart TV terminal loaded with the APP.
步骤106,根据客户端对应终端的终端类型,为客户端分配与所述终端类型相匹配的服务提供设备。Step 106: Assign a service providing device that matches the terminal type to the client according to the terminal type of the terminal corresponding to the client.
其中,服务提供设备用于为客户端提供服务。Among them, the service providing device is used to provide services for the client.
本实施例采用服务提供设备和客户端为智能电视终端提供网络数据服务,其中,服务提供设备可以是设置在网络侧的硬件终端,由服务提供设备提供网络服务所需的各种数据,客户端的一种呈现形式可以是安装于智能电视终端的APP(Application,应用程序),客户端对网络提供的数据进行解码并显示。其中,每个服务提供设备和客户端可以不具有唯一的对应关系,而是在客户端请求由服务提供设备提供网络服务器时为客户端临时分配一个服务提供设备,在分配了服务提供设备且与客户端建立连接后,在连接期间服务提供设备为该客户端提供数据服务。可以由服务器对服务提供设备进行维护,服务器可以直接从维护的多个对应于终端类型的服务提供设备中选择出服务提供设备,然后分配给客户端。The embodiment provides a network data service for the smart television terminal by using the service providing device and the client, wherein the service providing device may be a hardware terminal disposed on the network side, and various data required for the network service provided by the service providing device, the client One form of presentation may be an APP (Application) installed on the smart TV terminal, and the client decodes and displays the data provided by the network. Wherein, each service providing device and the client may not have a unique correspondence, but temporarily allocate a service providing device to the client when the client requests the network server to be provided by the service providing device, and allocate the service providing device and After the client establishes a connection, the service providing device provides data services for the client during the connection. The service providing device may be maintained by the server, and the server may directly select the service providing device from the plurality of service providing devices corresponding to the terminal type, and then allocate the service providing device to the client.
可选地,服务器在对服务提供设备进行维护时,可以建立多个分布式队列,将多个服务提供设备分别存储在对应的分布式队列中,其中,每个分布式队列可以分别对应一种终端类型。在本实施例中,分布式队列中可以包括:与同一终端类型相匹配的至少一个服务提供设备。基于上述维护的多个分布式队列,在为客户端分配服务提供设备时,可以采用如下方式:服务器根据客户端对应终端的终端类型,确定与所述终端类型相匹配的分布式队列;然后,根据分布式队列中的至少一个服务提供设备的信息,为客户端分配服务提供设备。Optionally, when the server performs maintenance on the service providing device, the server may establish multiple distributed queues, and store multiple service providing devices in corresponding distributed queues, where each distributed queue may correspond to one type. terminal type. In this embodiment, the distributed queue may include: at least one service providing device that matches the same terminal type. Based on the multiple distributed queues maintained by the foregoing, when the service providing device is allocated to the client, the following manner may be adopted: the server determines a distributed queue that matches the terminal type according to the terminal type of the client-compatible terminal; A service providing device is allocated to the client according to information of at least one service providing device in the distributed queue.
综上所述,在本实施例中,首先从客户端获取所述客户端对应的终端信息,根据所述终端信息确定所述客户端对应终端的终端类型;然后,从与终端类型相匹配的服务提供设备中为客户端分配服务提供设备。可见,通过本申请实施例,一方面,为终端提供服务的设备由网络侧的服务提供设备实现,终端只需具有基本的解码功能,即可从网络侧获取服务,不再依赖或受制于数字视频变换盒。进一步地,本申请的资源分配方案中,不同的终端类型对应有不同的服务提供设备,在确定了终端类型后,***只需从与该种类型相匹配的服务提供设备中进行选择,只需对该种类型的终端进行处理,由此大大减 少了数据处理数量,提高了数据处理效率,减轻了***处理负担,提高了分配服务提供设备资源如数字视频变换盒资源的效率,大大提升了终端使用者的使用体验。In summary, in this embodiment, the terminal information corresponding to the client is first obtained from the client, and the terminal type of the terminal corresponding to the client is determined according to the terminal information; and then, the terminal type is matched. A service providing device is allocated to a client in a service providing device. It can be seen that, by using the embodiment of the present application, on the one hand, the device that provides the service for the terminal is implemented by the service providing device on the network side, and the terminal only needs to have the basic decoding function, and can obtain the service from the network side, and no longer depends on or is subject to the digital Video converter box. Further, in the resource allocation scheme of the present application, different terminal types correspond to different service providing devices. After determining the terminal type, the system only needs to select from the service providing devices that match the type, Processing this type of terminal, thereby greatly reducing The number of data processing is reduced, the data processing efficiency is improved, the processing load of the system is reduced, the efficiency of allocating service providing device resources such as digital video conversion box resources is improved, and the user experience of the terminal user is greatly improved.
实施例二Embodiment 2
本实施例基于上述实施例一的资源分配方案,并对实施例一的资源分配方案进行了进一步的优化。This embodiment is based on the resource allocation scheme of the first embodiment, and further optimizes the resource allocation scheme of the first embodiment.
参照图2,示出了本申请实施例二中一种资源分配方法的步骤流程图。Referring to FIG. 2, a flow chart of steps of a resource allocation method in Embodiment 2 of the present application is shown.
在本实施例中,仍以上述智能电视***架构中的服务器的角度,对本实施例的资源分配方法进行说明。本实施例的资源分配方法具体可以包括如下步骤:In this embodiment, the resource allocation method of this embodiment is still described in the perspective of a server in the above-described smart television system architecture. The resource allocation method in this embodiment may specifically include the following steps:
步骤202:服务器获取客户端对应终端的终端信息。Step 202: The server acquires terminal information of the client-compatible terminal.
步骤204:服务器根据所述终端信息确定客户端对应终端的终端类型。Step 204: The server determines, according to the terminal information, a terminal type of the client-compatible terminal.
步骤206:服务器根据客户端对应终端的终端类型,为客户端分配与所述终端类型相匹配的服务提供设备。Step 206: The server allocates a service providing device that matches the terminal type to the client according to the terminal type of the terminal corresponding to the client.
其中,服务提供设备用于为客户端提供服务。Among them, the service providing device is used to provide services for the client.
一般地,服务器可以根据客户端的终端类型,从与所述终端类型相匹配的服务提供设备中为客户端选择服务提供设备,其中,选择出的服务提供设备满足设定条件。其中,设定条件可以由本领域技术人员根据实际需求设置,以为能够为客户端提供服务为原则。可选地,设定条件包括但不限于:服务提供设备未被分配给客户端;和/或,服务提供设备处于空闲状态或休眠状态。未被分配给客户端的服务提供设备,以及,处于空闲状态或休眠状态的服务提供设备均可以被认为是可用的服务提供设备。Generally, the server may select a service providing device for the client from the service providing device that matches the terminal type according to the terminal type of the client, where the selected service providing device satisfies the setting condition. The setting conditions can be set by a person skilled in the art according to actual needs, so as to be able to provide services for the client. Optionally, the setting conditions include, but are not limited to, the service providing device is not allocated to the client; and/or the service providing device is in an idle state or a dormant state. A service providing device that is not assigned to a client, and a service providing device that is in an idle state or a dormant state can be considered as available service providing devices.
服务提供设备可以以任意适当的数据形式呈现,如服务提供设备资源池(其中包括多个服务提供设备),或者,如服务提供设备的分布式队列等。当服务提供设备以分布式队列呈现时,可以组织多个分布式队列,每个分布式队列对应一种终端类型,则本步骤中,服务器可以根据客户端对应终端的终端类型,确定与所述终端类型相匹配的分布式队列;然后,服务器根据分布式队列中的至少一个服务提供设备的信息,为客户端分配服务提供设备。其中,所述分布式队列中包括:与所述终端类型相匹配的至少一个服务提供设备的信息。通过分布式队列形式,可以更为有效地组织服务提供设备,提高为客户端分配服务提供设备的效率。The service providing device may be presented in any suitable form of data, such as a service providing device resource pool (including a plurality of service providing devices), or a distributed queue such as a service providing device. When the service providing device is presented in a distributed queue, the plurality of distributed queues may be organized, and each distributed queue corresponds to a terminal type. In this step, the server may determine and describe the terminal according to the terminal type of the corresponding terminal of the client. A distributed queue whose terminal type matches; then, the server allocates a service providing device to the client according to information of at least one service providing device in the distributed queue. The distributed queue includes: information of at least one service providing device that matches the terminal type. Through the distributed queue form, the service providing device can be organized more effectively, and the efficiency of allocating the service providing device to the client is improved.
优选地,为了避免使用分布式队列为客户端分配服务提供设备时产生冲突,还可以为分布式队列设置对应的分布式锁,则服务器在为客户端分配服务提供设备时,可以获取对应与分布式队列的分布式锁;在使用所述分布式锁对分布式队列加锁后,再根据分 布式队列中的至少一个服务提供设备的信息,为客户端分配服务提供设备。进一步地,在为客户端分配服务提供设备之后,释放分布式队列的分布式锁。Preferably, in order to avoid conflicts when the distributed queue is used to allocate the service providing device to the client, and the corresponding distributed lock can also be set for the distributed queue, the server can obtain the corresponding and distributed when the service providing device is allocated to the client. Distributed lock of a queue; after the distributed lock is used to lock the distributed queue, At least one service in the layout queue provides information about the device, and the service provider is assigned to the client. Further, after the service providing device is allocated to the client, the distributed lock of the distributed queue is released.
优选地,为了进一步提高为客户端分配服务提供设备的效率,本实施例中还可以为服务提供设备设置状态,包括但不限于:Preferably, in order to further improve the efficiency of allocating the service providing device to the client, the state of the service providing device may also be set in this embodiment, including but not limited to:
Idle状态,即空闲状态,处于该状态的服务提供设备可以直接分配给需要的客户端;The Idle state, that is, the idle state, the service providing device in the state can be directly allocated to the required client;
Busy状态,即忙碌状态,处于该状态的服务提供设备已经与客户端连接并在服务客户端,无法再进行分配;The Busy state, that is, the busy state, the service providing device in this state has been connected to the client and is in the service client, and can no longer be allocated;
Sleep状态,即睡眠状态,当***中没有多余空闲状态的服务提供设备可分配时,***可唤醒处于该状态的服务提供设备并将其分配给客户端;Sleep state, that is, a sleep state, when a service providing device having no redundant idle state in the system can be allocated, the system can wake up the service providing device in the state and assign it to the client;
Exception状态,即异常状态,处于该异常状态无法进行分配;The Exception state, that is, the exception state, in which the allocation cannot be made;
Management状态,即管理状态,表征该服务提供设备处在被服务器管理状态,无法进行分配。The management state, that is, the management state, indicates that the service providing device is in the server management state and cannot be allocated.
基于设置的上述状态,优选地,服务器在从与所述终端类型相匹配的服务提供设备中为客户端选择服务提供设备时,一种可行方式是:从与所述终端类型相匹配的多个服务提供设备中任选一个服务提供设备;判断任选的所述服务提供设备是否处于空闲状态或休眠状态;若是,则判断任选的所述服务提供设备是否已被分配给其他客户端,若未被分配,则将任选的所述服务提供设备分配给所述客户端。另一种可行方式是:从与所述终端类型相匹配的多个服务提供设备中任选一个服务提供设备;判断任选的所述服务提供设备是否已被分配给其他客户端,若未被分配,则判断任选的所述服务提供设备是否处于空闲状态或休眠状态;若是,则将任选的所述服务提供设备分配给所述客户端。Based on the above-described state of the setting, preferably, when the server selects the service providing device for the client from the service providing device matching the terminal type, one possible way is to: from the plurality of types matching the terminal type Determining, in the service providing device, an optional service providing device; determining whether the optional service providing device is in an idle state or a dormant state; if yes, determining whether the optional service providing device has been assigned to another client, if If not assigned, the optional service providing device is assigned to the client. Another possible manner is: selecting one of the plurality of service providing devices matching the terminal type; determining whether the optional service providing device has been allocated to other clients, if not And assigning, determining whether the optional service providing device is in an idle state or a dormant state; if yes, assigning the optional service providing device to the client.
此外,若任选的所述服务提供设备已被分配给其他客户端或不处于空闲状态或不处于休眠状态,则从与所述终端类型相匹配的多个服务提供设备中为客户端重新选择一个服务提供设备;并继续判断重新选择的服务提供设备是否满足所述设定条件(即服务提供设备未被分配给客户端,和/或,服务提供设备处于空闲状态或休眠状态),直至为客户端选择出满足所述设定条件的服务提供设备,或者,直至为客户端选择服务提供设备的次数达到第一设定阈值。其中,设定阈值可以由本领域技术人员根据实际情况适当设置,如可以根据历史经验或者历史数据分析设置,本发明对此不作限制。每次选择服务提供设备之后重试次数加1,若在超出第一设定阈值时仍未获取到未被分配的服务提供设备,则说明目前没有空闲服务提供设备可以使用,此时服务器可以生成消息通知,通知客户端当前没有空闲服务提供设备可被分配,并结束流程。 In addition, if the optional service providing device has been assigned to other clients or is not in an idle state or is not in a dormant state, the client is reselected from a plurality of service providing devices matching the terminal type. a service providing device; and continuing to determine whether the reselected service providing device satisfies the set condition (ie, the service providing device is not assigned to the client, and/or the service providing device is in an idle state or a hibernation state) until The client selects the service providing device that satisfies the set condition, or until the number of times the service providing device is selected for the client reaches a first set threshold. The threshold value can be set by a person skilled in the art according to the actual situation. For example, the setting can be analyzed according to historical experience or historical data, and the present invention does not limit this. Each time the service providing device is selected, the number of retries is increased by 1. If the unassigned service providing device is not obtained when the first set threshold is exceeded, there is currently no idle service providing device available, and the server can generate The message notification notifies the client that there is currently no idle service providing device that can be allocated and ends the process.
可见,为了兼顾效率和公平,一方面可以设置为客户端选择服务提供设备的次数,这样,不至于在服务提供设备已被分配给其他客户端或不处于空闲状态或不处于休眠状态时,无限制地为客户端选择服务提供设备,而使得为另外的需求服务提供设备的客户端的分配无法执行;另一方面,在有限的次数内为客户端提供了多次获取服务提供设备的机会,避免了信息的重复获取和处理。It can be seen that in order to balance efficiency and fairness, on the one hand, it can be set to the number of times the client selects the service to provide the device, so that, when the service providing device has been assigned to other clients or is not in an idle state or is not in a sleep state, Restrictively selecting a service providing device for the client, so that the allocation of the client for the additional demand service providing device cannot be performed; on the other hand, providing the client with multiple opportunities to obtain the service providing device within a limited number of times, avoiding Repeated acquisition and processing of information.
其中,服务提供设备是否已被分配给其他客户端可以以设定标识的形式标示。例如,在服务提供设备携带设定标识时认为服务提供设备已被分配;或者,在服务提供设备携带设定标识时认为未被分配。又例如,设定标识可以以标识位的形式来指示服务提供设备是否已被分配:在服务提供设备中的标识位配置为0时确定服务提供设备未被分配,在服务提供设备的标识位配置为1时确定服务提供设备未被分配。Among them, whether the service providing device has been assigned to other clients can be marked in the form of a setting identifier. For example, the service providing device is considered to have been assigned when the service providing device carries the setting identifier; or is not assigned when the service providing device carries the setting identifier. For another example, the setting identifier may indicate whether the service providing device has been allocated in the form of an identifier bit: determining that the service providing device is not allocated when the flag bit in the service providing device is configured to be 0, and configuring the identifier bit of the service providing device When it is 1, it is determined that the service providing device is not allocated.
另外,在为客户端选择服务提供设备后至客户端与服务提供设备连接期间,服务提供设备有可能出现异常情况,例如,如前所述的异常状态或管理状态。为此,为了进一步保障分配给客户端的服务提供设备的可用性,以及保证连接的准确性和效率,本实施例中,服务器在根据客户端的终端类型,从与所述终端类型相匹配的服务提供设备中为客户端选择服务提供设备时,优选地,可以根据客户端的终端类型,从与所述终端类型相匹配的服务提供设备中选择一个服务提供设备;先将选择的服务提供设备预分配给客户端;判断预分配给所述客户端的服务提供设备的当前状态;若服务提供设备的当前状态满足设定状态,则确定将满足所述设定状态的服务提供设备分配给所述客户端。其中,设定状态可以包括空闲状态或睡眠状态。In addition, during the connection between the client providing the service providing device and the client to the service providing device, the service providing device may have an abnormal situation, such as an abnormal state or an administrative state as described above. To this end, in order to further ensure the availability of the service providing device allocated to the client, and to ensure the accuracy and efficiency of the connection, in this embodiment, the server is from the service providing device matching the terminal type according to the terminal type of the client. When selecting a service providing device for the client, preferably, a service providing device may be selected from the service providing devices that match the terminal type according to the terminal type of the client; the selected service providing device is pre-allocated to the client first. Determining a current state of the service providing device pre-allocated to the client; if the current state of the service providing device satisfies the set state, determining to assign the service providing device that satisfies the set state to the client. The setting state may include an idle state or a sleep state.
由于影响服务提供设备的当前状态的因素很多而且主要为异步影响,所以分配之前需要再次确认,通过上述的分配确定过程,有效地减少了把不满足设定状态的服务提供设备分配给客户端的概率。Since there are many factors affecting the current state of the service providing device and mainly due to asynchronous influence, it is necessary to reconfirm before the allocation, and the probability of assigning the service providing device that does not satisfy the set state to the client is effectively reduced by the above-described allocation determining process. .
进一步地,基于不同的服务提供设备的当前状态,若服务提供设备的当前状态为空闲状态,则确定将满足所述设定状态的服务提供设备分配给客户端;若服务提供设备的当前状态为睡眠状态,则唤醒服务提供设备后,再将满足所述设定状态的服务提供设备分配给客户端。Further, based on the current state of the different service providing device, if the current state of the service providing device is an idle state, determining to allocate the service providing device that satisfies the set state to the client; if the current state of the service providing device is In the sleep state, after the service providing device is woken up, the service providing device that satisfies the set state is allocated to the client.
此外,对服务提供设备的当前状态是否满足设定状态进行判断,也为服务提供设备被异步影响时的处理提供了信息和参考,当服务提供设备的当前状态不满足所述设定状态时,则服务器可以从与所述终端类型相匹配的多个服务提供设备中为客户端重新选择一个服务提供设备;并继续判断重新选择的服务提供设备是否满足所述设定条件和所述 设定状态,直至为客户端分配满足设定条件以及设定状态的服务提供设备,或者,直至为客户端选择服务提供设备的次数达到所述第一设定阈值。In addition, determining whether the current state of the service providing device satisfies the set state, and providing information and reference for the process when the service providing device is asynchronously affected, when the current state of the service providing device does not satisfy the set state, The server may reselect a service providing device for the client from the plurality of service providing devices matching the terminal type; and continue to determine whether the reselected service providing device satisfies the setting condition and the The state is set until the client is assigned a service providing device that satisfies the set condition and the set state, or until the number of times the service providing device is selected for the client reaches the first set threshold.
通过上述步骤202-206,实现了服务器高效、准确地为客户端分配服务提供设备。Through the above steps 202-206, the server is configured to efficiently and accurately allocate the service providing device to the client.
可选地,在为客户端分配服务提供设备后,可以进一步进行下述的客户端与服务提供设备的连接准备过程。本领域技术人员应当明了,下述过程均基于前述为客户端分配服务提供设备的过程,为本申请资源分配方案的进一步可选或优选过程,而非必需过程。Optionally, after the service providing device is allocated to the client, the connection preparation process of the client and the service providing device described below may be further performed. It should be apparent to those skilled in the art that the following processes are based on the foregoing process of allocating a service providing device to a client, which is a further optional or preferred process of the resource allocation scheme of the present application, rather than a necessary process.
步骤208:服务器通知为客户端分配的服务提供设备获取客户端对应的用户数据。Step 208: The server notifies the service providing device allocated to the client to acquire the user data corresponding to the client.
一般来说,服务提供设备一次即可成功获取客户端对应的用户数据,但为避免某些情况下出现的异常,本实施例对该获取过程进行了进一步优化,如下:Generally, the service providing device can successfully obtain the user data corresponding to the client at one time, but in order to avoid the abnormality in some cases, the acquisition process is further optimized in this embodiment, as follows:
步骤210:服务器判断为客户端分配的服务提供设备是否成功获取到客户端对应的用户数据;若是,则执行步骤212;若否,则执行步骤214。Step 210: The server determines whether the service providing device allocated by the client successfully obtains the user data corresponding to the client; if yes, step 212 is performed; if not, step 214 is performed.
步骤212:服务器将服务提供设备标识为已分配给客户端。Step 212: The server identifies the service providing device as being allocated to the client.
被标识为已分配给客户端的服务提供设备,在下次分配时,将不被认为是可用的服务提供设备,无需对其是否可用进行区分,进一步提高了为客户端分配服务提供设备的速度和效率。The service providing device identified as being assigned to the client will not be considered as an available service providing device at the next allocation, and need not be distinguished whether it is available or not, further improving the speed and efficiency of allocating the service providing device to the client. .
可选地,在将服务提供设备标识为已分配给客户端之后,服务器还可以获取服务提供设备的设备信息;将所述设备信息发送至客户端,以通知客户端根据所述设备信息建立与服务提供设备的连接。Optionally, after the service providing device is identified as being allocated to the client, the server may further acquire device information of the service providing device, and send the device information to the client, to notify the client to establish and The service provides a connection to the device.
在本实施例中,一种可行的服务提供设备的设备信息包括但不仅限于:服务提供设备的IP地址、端口地址(如,port端口地址)和身份标识ID中至少的一种。客户端可以根据这些信息与服务提供设备建立连接。In this embodiment, the device information of a feasible service providing device includes, but is not limited to, at least one of an IP address, a port address (eg, a port port address), and an identity ID of the service providing device. Based on this information, the client can establish a connection with the service provider.
步骤214:服务器返回步骤208,即,返回通知满足所述设定状态的服务提供设备获取客户端对应的用户数据的步骤继续执行,直至服务提供设备成功获取到客户端对应的用户数据,或者,直至服务提供设备获取客户端对应的用户数据的次数达到第二设定阈值。Step 214: The server returns to step 208, that is, the step of returning the notification that the service providing device that meets the set state acquires the user data corresponding to the client continues to execute until the service providing device successfully obtains the user data corresponding to the client, or The number of times the service providing device obtains the user data corresponding to the client reaches a second set threshold.
其中,第二设定阈值可以由本领域技术人员根据实际情况适当设置,第二设定阈值可以与第一设定阈值相同,也可以不同,本发明对此不作限制。The second set threshold may be appropriately set by a person skilled in the art according to the actual situation, and the second set threshold may be the same as the first set threshold or may be different, which is not limited by the present invention.
通过本实施例,首先从客户端获取所述客户端对应的终端信息,根据所述终端信息确定所述客户端对应终端的终端类型;然后,从与终端类型相匹配的服务提供设备中为客户端分配服务提供设备。可见,通过本申请实施例,一方面,为终端提供服务的设备 由网络侧的服务提供设备实现,终端只需具有基本的解码功能,即可从网络侧获取服务,不再依赖或受制于数字视频变换盒。进一步地,本申请的资源分配方案中,不同的终端类型对应有不同的服务提供设备,在确定了终端类型后,***只需从与该种类型相匹配的服务提供设备中进行选择,只需对该种类型的终端进行处理,由此大大减少了数据处理数量,提高了数据处理效率,减轻了***处理负担,提高了分配服务提供设备资源如数字视频变换盒资源的效率,大大提升了终端使用者的使用体验。In this embodiment, the terminal information corresponding to the client is first obtained from the client, and the terminal type of the terminal corresponding to the client is determined according to the terminal information; and then, the service is provided from the service providing device that matches the terminal type. The end allocates a service providing device. It can be seen that, by using an embodiment of the present application, on the one hand, a device that provides services for a terminal It is implemented by the service provider device on the network side. The terminal only needs to have the basic decoding function, and can obtain the service from the network side, and no longer depends on or is subject to the digital video conversion box. Further, in the resource allocation scheme of the present application, different terminal types correspond to different service providing devices. After determining the terminal type, the system only needs to select from the service providing devices that match the type, This type of terminal is processed, thereby greatly reducing the number of data processing, improving the data processing efficiency, reducing the processing load of the system, improving the efficiency of allocating service providing device resources such as digital video conversion box resources, and greatly improving the terminal. User experience.
实施例三Embodiment 3
在本实施例中,可以采用如下的智能电视***:该智能电视***可以包括:至少一个客户端、至少一个调度服务器和至少一个服务提供设备。其中,客户端是一种可以使用服务提供设备提供的APP应用程序的终端,如,机顶盒、智能移动终端、PAD(Portable Android Device平板电脑)、具有解码功能的智能电视等。所述服务提供设备可以作为服务端设置在云端,远程为所述客户端提供服务。调度服务器在接收到客户端申请服务提供设备的请求之后,可以根据设定分配策略从云端的多个服务提供设备中选择一个服务提供设备分配给所述客户端。In this embodiment, a smart television system may be employed: the smart television system may include at least one client, at least one dispatch server, and at least one service providing device. The client is a terminal that can use the APP application provided by the service providing device, such as a set top box, a smart mobile terminal, a PAD (Portable Android Device tablet), a smart TV with a decoding function, and the like. The service providing device can be set as a server in the cloud to remotely provide services for the client. After receiving the request of the client to apply for the service providing device, the scheduling server may select one of the plurality of service providing devices in the cloud to allocate to the client according to the set allocation policy.
这里需要说明的是,在本实施例中,服务提供设备可以作为硬件设备设置在云端,软件(应用程序)可以安装在服务提供设备中,服务提供设备可以在云端将各类应用程序的用户界面(User Interface,UI)进行压缩编码,客户端有基本解码能力即可向用户展现应用程序的用户界面,实现对各类应用程序的操作。换而言之,与传统的智能电视***所不同的是,在本实施例中,软件(应用程序)可以不安装在机顶盒中,可以安装在服务提供设备中,通过服务提供设备为用户提供服务。由于可以不再需要将软件安装在机顶盒中,故可以不再单独设置机顶盒。例如,若所述客户端为智能移动终端、或具有解码功能的智能电视时,则可以直接将智能移动终端(或具有解码功能的智能电视)与所述服务提供设备进行连接,用户可以不需要单独购买/设置机顶盒,节约了用户成本;同时,智能移动终端(或具有解码功能的智能电视)与所述服务提供设备直接进行交互,提高了交互效率,减少了对机顶盒的维护步骤,降低了对资源的占用。当然,对有现有机顶盒来说,其具有基本解码能力,本发明的方案也仍然适用。进一步地,所述调度服务器可以是指一个服务器,也可以是指等同于所述调度服务器功能的多个服务器组成的服务器群组。It should be noted that, in this embodiment, the service providing device can be set in the cloud as a hardware device, the software (application) can be installed in the service providing device, and the service providing device can be used in the cloud to set the user interface of various applications. (User Interface, UI) performs compression coding, and the client has basic decoding capability to present the user interface of the application to the user, and realize operations on various applications. In other words, unlike the conventional smart television system, in the embodiment, the software (application) may not be installed in the set top box, may be installed in the service providing device, and provide services to the user through the service providing device. . Since the software can no longer be installed in the set top box, the set top box can no longer be set separately. For example, if the client is a smart mobile terminal or a smart TV with a decoding function, the smart mobile terminal (or a smart TV with decoding function) can be directly connected to the service providing device, and the user does not need to The purchase/set-up of the set-top box separately saves the user's cost; at the same time, the intelligent mobile terminal (or the smart TV with decoding function) directly interacts with the service providing device, thereby improving the interaction efficiency, reducing the maintenance steps for the set-top box, and reducing the maintenance steps. The occupation of resources. Of course, for existing set top boxes, which have basic decoding capabilities, the solution of the present invention still applies. Further, the scheduling server may refer to a server, or may refer to a server group composed of multiple servers equivalent to the scheduling server function.
本申请实施例中,客户端侧所显示的用户界面是能够为用户提供各种网络服务,例如在用户界面上可以包括各种菜单选项或图标等服务功能,例如包括:高清视频,超清 电视、软件下载、游戏、生活服务(如缴费、购物等)等,从而通过该客户端,用户可在电视上免费观看高清电影电视、玩体感游戏、热门大型3D游戏、网络购物、支付水电煤费用等等功能。在用户选择某一功能的图标或菜单后,可以继续进入相应的UI界面执行操作,例如播放高清视频时可以选择本地或网络资源等。In the embodiment of the present application, the user interface displayed on the client side is capable of providing various network services for the user. For example, the user interface may include various menu options or icons, such as: high definition video, ultra clear. TV, software download, games, life services (such as payment, shopping, etc.), so that through the client, users can watch HD movies and TV, play somatosensory games, popular large 3D games, online shopping, pay for water and electricity on TV for free. Cost and more. After the user selects an icon or menu of a certain function, the user can continue to enter the corresponding UI interface to perform operations, such as local or network resources when playing HD video.
针对客户端所显示的UI界面,用户可以通过遥控器的外置设备进行控制,如选择某个功能,进入下一级界面等,而由于UI界面是基于服务提供设备的传送流解析显示的,因此对UI界面的控制响应也由服务提供设备执行。本实施例中服务提供设备在与客户端建立连接后,预先在用户空间虚拟一输入设备,通过该虚拟输入设备模拟硬件输入信号,在***注入用户的输入信号对应输入事件并进行分发,从而实现服务提供设备对用户控制的响应。For the UI interface displayed by the client, the user can control through the external device of the remote controller, such as selecting a certain function and entering the next level interface, and the UI interface is displayed based on the transport stream of the service providing device. Therefore, the control response to the UI interface is also performed by the service providing device. In this embodiment, after establishing a connection with the client, the service providing device virtualizes an input device in the user space, simulates a hardware input signal through the virtual input device, and injects an input signal of the user into the system to input an event and distribute the image, thereby realizing The service provides the device's response to user control.
本实施例中,一种优选的智能电视***的架构如图3所示。在本实施例中,所述智能电视***具体可以包括:至少一个设备服务器(如图3所示的设备服务器301)、至少一个调度服务器(如图3所示的调度服务器302)和至少一个客户端(如图3所示的客户端303)。其中,每个设备服务器中包括至少一个服务提供设备(如图3所示的设备服务器301中的服务提供设备304)。In this embodiment, the architecture of a preferred smart television system is as shown in FIG. In this embodiment, the smart television system may specifically include: at least one device server (such as the device server 301 shown in FIG. 3), at least one scheduling server (such as the scheduling server 302 shown in FIG. 3), and at least one client. End (client 303 shown in Figure 3). Each device server includes at least one service providing device (such as the service providing device 304 in the device server 301 shown in FIG. 3).
此外,优选地,所述智能电视***还可以包括:至少一个管理服务器(如图3所示的管理服务器305)和至少一个用户数据存储设备(如图3所示的用户数据存储设备306)。需要说明的是,所述用户数据存储设备用于存储用户数据,一个用户可以对应一个专用的用户数据存储设备,多个用户也可以共有同一个用户数据存储设备,本实施例对此不作限制。其中,所述用户数据存储设备可以是物理设备,也可以是逻辑设备,还可以是物理和逻辑相结合的设备。例如,所述用户数据存储设备中可以包括至少一个用户分区(如图3所示的用户分区307),每个用户分区对应存储一个用户的用户数据。Moreover, preferably, the smart television system may further include: at least one management server (such as the management server 305 shown in FIG. 3) and at least one user data storage device (such as the user data storage device 306 shown in FIG. 3). It should be noted that the user data storage device is used to store user data, and one user may correspond to a dedicated user data storage device, and multiple users may share the same user data storage device, which is not limited in this embodiment. The user data storage device may be a physical device, a logical device, or a combination of physical and logical devices. For example, the user data storage device may include at least one user partition (such as the user partition 307 shown in FIG. 3), and each user partition correspondingly stores user data of one user.
在本实施例中,客户端303可以是如上所述的硬件设备,如,机顶盒、智能移动终端、PAD、具有解码功能的智能电视等。优选地,所述客户端303也可以是位于智能电视终端侧,其可以呈现为智能电视终端中装载的APP(应用程序,Application)的形式,这里的智能电视终端具体可以包括:机顶盒、移动终端、智能电视机等。一方面,客户端303可用于播放服务提供设备304发送的传送流(Transport Stream,TS)所解析出的用户界面,以及播放从其他网络服务器中获取的多媒体数据(如视频信号、音频信号等);另一方面,客户端303可用于监听用户通过遥控器等输入装置产生的输入消息,并将该输入消息发送给服务提供设备304或者调度服务器302。从而客户端303所显示的用户 界面由服务提供设备304推送,客户端303仅解析并显示,且客户端303所接收的用户对用户界面控制的输入消息,也会转发给服务提供设备304以使其据此调整用户界面。In this embodiment, the client 303 may be a hardware device as described above, such as a set top box, a smart mobile terminal, a PAD, a smart TV with a decoding function, and the like. Preferably, the client 303 may also be in the form of a smart TV terminal, which may be presented in the form of an APP (Application) installed in the smart TV terminal. The smart TV terminal herein may specifically include: a set top box and a mobile terminal. , smart TV, etc. In one aspect, the client 303 can be used to play a user interface parsed by a transport stream (TS) sent by the service providing device 304, and play multimedia data (such as video signals, audio signals, etc.) acquired from other network servers. On the other hand, the client 303 can be used to listen to an input message generated by the user through an input device such as a remote controller, and send the input message to the service providing device 304 or the dispatch server 302. Thus the user displayed by the client 303 The interface is pushed by the service providing device 304, the client 303 only parses and displays, and the input message controlled by the client 303 to the user interface is also forwarded to the service providing device 304 to adjust the user interface accordingly.
服务提供设备304位于网络侧,其中,每个服务提供设备具体可以包括:硬件板卡和硬件板卡所承载的软件模块。需要说明的是,在本实施例中,各类应用程序可以直接安装在服务提供设备中,用户可以通过客户端303展现的应用程序对应的用户界面,对服务提供设备304中的应用程序进行各项操作,不再需要在客户端303中单独安装应用程序,便于技术人员对所述智能电视***进行统一维护,减少了工作量,提高了维护效率。The service providing device 304 is located on the network side, and each of the service providing devices may specifically include: a software module carried by the hardware board and the hardware board. It should be noted that, in this embodiment, various applications may be directly installed in the service providing device, and the user may perform the application in the service providing device 304 through the user interface corresponding to the application displayed by the client 303. In the operation, it is no longer necessary to separately install an application in the client 303, so that the technician can perform unified maintenance on the smart television system, thereby reducing the workload and improving the maintenance efficiency.
用户分区307位于网络侧,一般地,每个用户对应用一个用户分区,各个用户的用户数据被保存在对应的用户分区下。进一步地,每个用户分区具有唯一一个地址信息,所述地址信息可以指示对应的用户分区的具体地址,通过所述地址信息可以快速查找到用户分区,完成用户数据的调用。换而言之,调度服务器302(或,管理服务器305)可以仅对地址信息(数据量较小)进行维护,而不用对整个用户数据(数据量较大)进行维护,降低了维护的数据量,减少了资源占用,提高了***运行速度,且,用户数据便于查找。The user partition 307 is located on the network side. Generally, each user applies a user partition, and user data of each user is saved under the corresponding user partition. Further, each user partition has a unique address information, and the address information may indicate a specific address of the corresponding user partition, and the user information may be quickly found through the address information to complete the call of the user data. In other words, the dispatch server 302 (or the management server 305) can perform maintenance only on address information (small data amount) without maintaining the entire user data (large data amount), reducing the amount of data maintained. , reducing resource occupation, improving system running speed, and user data is easy to find.
调度服务器302位于网络侧,主要用于依据客户端303发送的请求消息,分配一个空闲的、状态良好的服务提供设备304与客户端303对接;同时,可以将用户ID对应的用户分区挂载到所分配的服务提供设备304上,也即,每个用户分区可以与唯一的用户ID相对应,如用户分区A对应用户A等等,这样,用户A在客户端303在与上次分配的、编号为001的服务提供设备断开连接后,即使下次连接的是编号为002的服务提供设备,用户A仍然可以使用用户分区A,并且可以使用之前的历史记录等数据。The scheduling server 302 is located on the network side, and is mainly configured to allocate an idle, stateful service providing device 304 to the client 303 according to the request message sent by the client 303. At the same time, the user partition corresponding to the user ID may be mounted to the The assigned service providing device 304, that is, each user partition may correspond to a unique user ID, such as user partition A corresponding to user A, etc., such that user A is at client 303 with the last assigned, After the service provider device with the number 001 is disconnected, even if the service provider device with the number 002 is connected next time, the user A can still use the user partition A, and can use data such as the previous history.
管理服务器305位于网络侧,可用于对所有的服务提供设备进行管理,所述管理具体可以包括:状态上报、心跳管理、设置属性、获取属性、网络唤醒、软重启、硬重启等;可见,管理服务器305可以作为远程服务器,采用本申请的技术方案在广域网实现对服务提供设备的网络唤醒。The management server 305 is located on the network side and can be used to manage all the service providing devices. The management may include: status reporting, heartbeat management, setting attributes, obtaining attributes, network wake-up, soft restart, hard restart, etc.; visible, management The server 305 can be used as a remote server to implement network wake-up of the service providing device in the wide area network by using the technical solution of the present application.
需要说明的是,本实施例所述的资源分配方法可以应用于基于图3中所示的智能电视***中。但本领域技术人员应当明了,任意需要类似设备连接的***或服务器,均可参照本实施例实现设备连接的方案,而不仅限于上述架构下的应用场景。It should be noted that the resource allocation method described in this embodiment can be applied to the smart television system based on FIG. However, it should be understood by those skilled in the art that any system or server that requires a device connection may refer to the solution for implementing device connection in this embodiment, and is not limited to the application scenario in the foregoing architecture.
本实施例中,在智能电视***中,服务提供设备采用的是可复用机制,即是一个服务提供设备服务完一个客户端重置后继续服务另一个客户端。即在服务提供设备与客户 端建立连接后二者是唯一对应交互的关系,而当完成服务两者断开后,服务提供设备与客户端并不具有直接的对应关系,而是要等待***为其分配其他客户端。因此,服务提供设备同一时间能服务一个客户端,如果服务提供设备在设定时间长度内未被使用,将进入省电休眠状态。In this embodiment, in the smart television system, the service providing device adopts a reusable mechanism, that is, one service providing device serves to continue servicing another client after the client resets. That is, in service delivery equipment and customers After the connection is established, the two are the only interactions, and when the completion of the service is disconnected, the service providing device does not have a direct correspondence with the client, but waits for the system to allocate other clients. Therefore, the service providing device can serve one client at a time, and if the service providing device is not used for a set length of time, it will enter a power-saving sleep state.
基于服务提供设备的上述特征,可以为服务提供设备设定几个状态以进行管理分配:Based on the above characteristics of the service providing device, several states can be set for the service providing device for management allocation:
Idle状态,即空闲状态,处于该状态的服务提供设备可被直接分配给需要的客户端;The Idle state, that is, the idle state, the service providing device in the state can be directly allocated to the required client;
Busy状态,即忙碌状态,处于该状态的服务提供设备已经与客户端连接并在服务客户端,无法再进行分配;The Busy state, that is, the busy state, the service providing device in this state has been connected to the client and is in the service client, and can no longer be allocated;
Sleep状态,即睡眠状态,当***中没有多余空闲状态的服务提供设备可分配时,***可唤醒处于该状态的服务提供设备并将其分配给客户端;Sleep state, that is, a sleep state, when a service providing device having no redundant idle state in the system can be allocated, the system can wake up the service providing device in the state and assign it to the client;
Exception状态,即异常状态,处于该异常状态无法进行分配;The Exception state, that is, the exception state, in which the allocation cannot be made;
Management状态,即管理状态,表征该服务提供设备处在被服务器管理状态,无法进行分配。The management state, that is, the management state, indicates that the service providing device is in the server management state and cannot be allocated.
结合前述实施例,本实施例以对智能电视***中的资源分配为例,对所述资源分配方法进行详细说明。在不矛盾的情况下,该方法可以和上述实施例中的方法相结合。下面对本实施例所述的资源分配方法进行具体说明。In conjunction with the foregoing embodiments, the resource allocation method in the smart television system is taken as an example to describe the resource allocation method in detail. In the case of no contradiction, the method can be combined with the method in the above embodiment. The resource allocation method described in this embodiment will be specifically described below.
参照图4,示出了本申请实施例三中一种资源分配方法的步骤流程图。在本实施例中,所述资源分配方法包括:Referring to FIG. 4, a flow chart of steps of a resource allocation method in Embodiment 3 of the present application is shown. In this embodiment, the resource allocation method includes:
步骤402,调度服务器确定客户端对应终端的终端类型。Step 402: The scheduling server determines the terminal type of the client-compatible terminal.
在本实施例中,可以根据客户端上报的终端信息确定终端类型,如,根据客户端支持的最大分辨率来确定客户端对应终端的终端类型。例如,在本实施例中,确定终端类型为终端类型2。In this embodiment, the terminal type may be determined according to the terminal information reported by the client, for example, determining the terminal type of the client-compatible terminal according to the maximum resolution supported by the client. For example, in the present embodiment, it is determined that the terminal type is terminal type 2.
步骤404,调度服务器获取与终端类型2相匹配的分布式锁2。In step 404, the scheduling server acquires the distributed lock 2 that matches the terminal type 2.
在本实施例中,每种终端类型的客户端都可以有一个对应的分布式锁,所述分布式锁可以通过数据库实现。例如,可以通过写唯一约束的数据来保障在同一个时间点,一个分布式队列只为一种类型的客户端对应的终端提供服务。较佳地,若成功获取所述分布式锁2,则执行下述步骤406;否则,返回执行步骤404,重新获取所述分布式锁2。In this embodiment, each terminal type client may have a corresponding distributed lock, and the distributed lock may be implemented through a database. For example, by writing uniquely constrained data to ensure that at the same point in time, a distributed queue serves only the terminals corresponding to one type of client. Preferably, if the distributed lock 2 is successfully acquired, the following step 406 is performed; otherwise, the process returns to step 404 to re-acquire the distributed lock 2.
步骤406,调度服务器在确定获取到分布式锁2之后,使用获取的分布式锁2对分布式队列2进行加锁。 Step 406, after the scheduling server determines that the distributed lock 2 is acquired, the distributed queue 2 is locked using the acquired distributed lock 2.
步骤408,调度服务器判断加锁后的分布式队列2中是否有服务提供设备。 Step 408: The scheduling server determines whether there is a service providing device in the distributed distributed queue 2.
在本实施例中,分布式队列也可以通过数据库来实现。其中,分布式队列中的服务提供设备可以是从数据库中取到的状态为Idle或者Sleep状态的服务提供设备。每个分布式队列中的服务提供设备均对应于同一种终端类型。也即,分布式队列2中的服务提供设备都是与终端类型2相匹配的服务提供设备。In this embodiment, the distributed queue can also be implemented through a database. The service providing device in the distributed queue may be a service providing device that is obtained from the database and has a state of Idle or Sleep. The service providing devices in each distributed queue correspond to the same terminal type. That is, the service providing devices in the distributed queue 2 are all service providing devices that match the terminal type 2.
优选地,若调度服务器确定所述分布式队列2中没有服务提供设备,则表示库中没有足够的服务提供设备,可以把相关的消息通知(如,没有足够的服务提供设备)返回给客户端,并结束流程。若调度服务器确定所述分布式队列2中有服务提供设备,则执行下述步骤410。Preferably, if the scheduling server determines that there is no service providing device in the distributed queue 2, it means that there are not enough service providing devices in the library, and the related message notification (eg, there is not enough service providing device) can be returned to the client. And end the process. If the scheduling server determines that there is a service providing device in the distributed queue 2, the following step 410 is performed.
步骤410,调度服务器从所述分布式队列2中取服务提供设备2。Step 410: The scheduling server fetches the service providing device 2 from the distributed queue 2.
其中,所述服务提供设备2可以是Idle状态,也可以是Sleep状态的服务提供设备。The service providing device 2 may be an Idle state or a service providing device in a Sleep state.
步骤412,调度服务器释放所述分布式锁2。In step 412, the dispatching server releases the distributed lock 2.
步骤414,调度服务器确定服务提供设备2是否已被分配。In step 414, the scheduling server determines whether the service providing device 2 has been allocated.
其中,可以对服务提供设备设置Tag标签以指示服务提供设备是否被分配。例如,若调度服务器确定服务提供设备2携带Tag,则说明服务提供设备2已被分配给其他客户端,此时可以在重试次数小于等于最大重试次数s次时,返回执行步骤404,重新获取分布式锁2。需要说明的是,每次重试之后,重试次数加1,若在重试次数超过最大重试次数s次时仍未获取到未分配的服务提供设备,则可以把相关的消息通知(如,没有足够的服务提供设备)返回给客户端,并结束流程。若调度服务器确定服务提供设备2不携带Tag,则说明服务提供设备2未被分配给其他客户端,可以继续执行下述步骤416。Wherein, a tag may be set to the service providing device to indicate whether the service providing device is allocated. For example, if the scheduling server determines that the service providing device 2 carries the tag, the service providing device 2 has been allocated to other clients. In this case, when the number of retries is less than or equal to the maximum number of retries s times, the process returns to step 404 to re-execute Get distributed lock 2. It should be noted that, after each retry, the number of retry attempts is increased by 1. If the unassigned service providing device is not obtained when the number of retry attempts exceeds the maximum number of retry attempts, the related message may be notified (eg, , there are not enough services to provide the device) to return to the client and end the process. If the scheduling server determines that the service providing device 2 does not carry the tag, it indicates that the service providing device 2 is not assigned to other clients, and may continue to perform the following step 416.
步骤416,调度服务器判断服务提供设备2是否为Idle状态或Sleep状态。In step 416, the scheduling server determines whether the service providing device 2 is in an Idle state or a Sleep state.
由于影响服务提供设备状态的因素很多而且都为异步影响,所以在服务提供设备分配之前需要再次确认,以减少把非Idle状态或非Sleep状态的服务提供设备分配给终端的概率。若确定服务提供设备2是非Idle状态或非Sleep状态,则可以在重试次数小于等于最大重试次数s次时,返回执行步骤404。每次重试之后,重试次数加1,若重试次数超过最大重试次数s次,则可以把相关的消息通知(如,没有足够的服务提供设备)返回给客户端,并结束流程。Since there are many factors affecting the state of the service providing device and are all asynchronous, it is necessary to reconfirm before the service providing device is allocated to reduce the probability of assigning the non-Idle state or the non-Sleep state service providing device to the terminal. If it is determined that the service providing device 2 is in the non-Idle state or the non-Sleep state, the step 404 may be returned when the number of retries is less than or equal to the maximum number of retries s times. After each retry, the number of retries is increased by 1. If the number of retries exceeds the maximum number of retries s times, the relevant message notification (for example, there is not enough service providing device) can be returned to the client, and the process ends.
若确定服务提供设备2是Idle状态或Sleep状态,则可以继续执行步骤418。If it is determined that the service providing device 2 is in the Idle state or the Sleep state, then step 418 can be continued.
步骤418,调度服务器确定服务提供设备2是Idle状态还是Sleep状态。In step 418, the scheduling server determines whether the service providing device 2 is in an Idle state or a Sleep state.
在本实施例中,若调度服务器确定服务提供设备2是Idle状态则直接执行下述步骤420;若调度服务器确定服务提供设备2是Sleep状态,则在唤醒Sleep状态的服务提供 设备2之后执行下述步骤420。In this embodiment, if the scheduling server determines that the service providing device 2 is in the Idle state, the following step 420 is directly performed; if the scheduling server determines that the service providing device 2 is in the Sleep state, the service provider in the Sleep state is awake. Device 2 then performs the following step 420.
这里需要说明的是,上述步骤414、步骤416和步骤418均是可选步骤,也即,上述步骤414、步骤416和步骤418可以均不执行,也可以选择至少一步执行。本领域技术人员应该明了的是,若选择其中至少一步执行,上述步骤414、步骤416和步骤418之间没有必然的先后顺序。It should be noted that the above steps 414, 416 and 418 are optional steps, that is, the above steps 414, 416 and 418 may not be performed, and at least one step may be selected. It should be apparent to those skilled in the art that if at least one of the steps is selected, there is no necessary sequence between the above steps 414, 416 and 418.
步骤420,调度服务器通知服务提供设备2准备客户端对应的用户数据。Step 420: The scheduling server notifies the service providing device 2 to prepare user data corresponding to the client.
调度服务器通知服务提供设备2更新所述客户端对应的用户数据。在本实施例中,服务提供设备是共享的,也即,一个服务提供设备可以在不同时刻为多个不同的客户端提供服务。而客户端对应的用户数据则是单独存放的,故,在将服务提供设备分配给客户端之前,需要确保服务提供设备加载的用户数据是与所述客户端相匹配的用户数据。The dispatch server notifies the service providing device 2 to update the user data corresponding to the client. In this embodiment, the service providing devices are shared, that is, one service providing device can provide services for a plurality of different clients at different times. The user data corresponding to the client is stored separately. Therefore, before the service providing device is allocated to the client, it is necessary to ensure that the user data loaded by the service providing device is user data that matches the client.
步骤422,调度服务器判断服务提供设备2是否成功更新用户数据。In step 422, the scheduling server determines whether the service providing device 2 successfully updates the user data.
在本实施例中,若确定服务提供设备2更新用户数据成功,则执行下述步骤424。若确定服务提供设备2更新用户数据失败,则在可以在重试次数小于等于最大重试次数s次时,返回执行步骤404。每次重试之后,重试次数加1,若重试次数超过最大重试次数s次,则可以把相关的消息通知(如,客户端数据异常)返回给客户端,并结束流程。In this embodiment, if it is determined that the service providing device 2 updates the user data successfully, the following step 424 is performed. If it is determined that the service providing device 2 fails to update the user data, the process may return to step 404 when the number of retries is less than or equal to the maximum number of retries s times. After each retry, the number of retries is incremented by one. If the number of retries exceeds the maximum number of retries s times, relevant message notifications (eg, client data exceptions) can be returned to the client, and the process ends.
步骤424,调度服务器为服务提供设备2设置已被分配的信息。In step 424, the scheduling server sets the information that has been allocated for the service providing device 2.
在本实施例中,调度服务器为服务提供设备2设置已被分配的信息,如,通过之前的Tag标签指示服务提供设备2已被分配。设置的Tag标签具有一个有效期,如,3分钟后Tag标签自动失效,为服务提供设备2设置Tag标签(也即,设置为已被分配)作用是:防止服务提供设备2被再次取出分配给其他客户端。In the present embodiment, the dispatch server sets the information that has been assigned to the service providing device 2, for example, indicating that the service providing device 2 has been allocated by the previous Tag. The set tag has an expiration date. For example, after 3 minutes, the tag is automatically invalidated, and the tag is set for the service providing device 2 (that is, set to be allocated). The role is to prevent the service providing device 2 from being taken out again and assigned to the other. Client.
这里需要说明的是,上述步骤424是一可选步骤,可以根据实际情况选择执行或不执行。进一步地,所述步骤424除了可以在上述步骤422之后执行,也可以在其他任意适当的步骤之后执行,如,还可以在步骤414之后、或步骤416,或步骤418之后执行。此外,为了确保服务提供设备2不被重复分配,还可以在整个流程中多次执行所述步骤414,如,可以在步骤414以及步骤422之后均执行所述步骤424。本实施例对此不作限制。It should be noted that the foregoing step 424 is an optional step, and may or may not be performed according to actual conditions. Further, the step 424 may be performed after the step 422 described above, or may be performed after any other suitable steps, for example, after step 414, or after step 416, or after step 418. Furthermore, to ensure that the service providing device 2 is not repeatedly allocated, the step 414 can also be performed multiple times throughout the process, such as step 424 can be performed after both step 414 and step 422. This embodiment does not limit this.
步骤426,调度服务器将服务提供设备2的设备信息发送给客户端,通知客户端根据所述设备信息建立与服务提供设备的连接。Step 426: The scheduling server sends the device information of the service providing device 2 to the client, and notifies the client to establish a connection with the service providing device according to the device information.
在本实施例中,调度服务器可以将服务提供设备2的设备信息(如,将服务提供设备2的IP地址、端口地址和身份标识ID)发送给客户端,客户端可以通过上述设备信 息连接服务提供设备2。进一步地,调度服务器在确定服务提供设备2与客户端成功连接之后,可以将服务提供设备2的状态设置为Busy状态(繁忙状态),并上报服务提供设备2的当前Busy状态。In this embodiment, the scheduling server may send the device information of the service providing device 2 (eg, the IP address, the port address, and the identity ID of the service providing device 2) to the client, and the client may use the device letter. The information connection service provides the device 2. Further, after determining that the service providing device 2 successfully connects with the client, the scheduling server may set the state of the service providing device 2 to the Busy state (busy state) and report the current Busy state of the service providing device 2.
综上所述,在本实施例中,所述智能电视***中的调度服务器从客户端获取所述客户端对应终端的终端信息,根据所述终端信息确定所述客户端对应终端的终端类型;然后,从与终端类型相匹配的分布式队列中选择服务提供设备,并通知服务提供设备获取并更新与所述客户端相匹配的用户数据;最后,将成功完成所述用户数据更新的服务提供设备分配给所述客户端。由此可见,在本实施例中,可以通过智能电视***中的调度服务器将服务提供设备分配给客户端,由分配的服务提供设备为客户端提供服务。换而言之,在本实施例中,只需要在云端对服务提供设备进行软件更新或硬件升级即可满足用户的更新需求,不再需要由用户对客户端进行更新,节约了用户时间,降低了用户成本。In summary, in this embodiment, the scheduling server in the smart television system acquires the terminal information of the client-compatible terminal from the client, and determines the terminal type of the client-compatible terminal according to the terminal information; Then, the service providing device is selected from the distributed queues matching the terminal type, and the service providing device is notified to acquire and update the user data matching the client; finally, the service providing the user data update is successfully completed. The device is assigned to the client. It can be seen that in the embodiment, the service providing device can be allocated to the client through the scheduling server in the smart television system, and the distributed service providing device provides the service to the client. In other words, in this embodiment, only the software update or hardware upgrade of the service providing device in the cloud can meet the update requirement of the user, and the user is no longer required to update the client, which saves user time and reduces User costs.
并且,一方面,为终端提供服务的设备由网络侧的服务提供设备实现,终端只需具有基本的解码功能,即可从网络侧获取服务,不再依赖或受制于数字视频变换盒。进一步地,不同的终端类型对应有不同的服务提供设备,在确定了终端类型后,***只需从与该种类型相匹配的服务提供设备中进行选择,只需对该种类型的终端进行处理,由此大大减少了数据处理数量,提高了数据处理效率,减轻了***处理负担,提高了分配服务提供设备资源如数字视频变换盒资源的效率,大大提升了终端使用者的使用体验。Moreover, on the one hand, the device that provides the service for the terminal is implemented by the service providing device on the network side, and the terminal only needs to have the basic decoding function, and the service can be obtained from the network side, and is no longer dependent on or subject to the digital video conversion box. Further, different terminal types correspond to different service providing devices. After determining the terminal type, the system only needs to select from the service providing devices that match the type, and only needs to process the types of terminals. Thereby, the number of data processing is greatly reduced, the data processing efficiency is improved, the processing load of the system is reduced, the efficiency of allocating service providing device resources such as digital video conversion box resources is improved, and the user experience of the terminal user is greatly improved.
进一步地,若采用具有基本的解码功能的智能电视作为所述客户端,则可以通过服务提供设备直接为所述智能电视提供服务,不再需要单独设置机顶盒,减少了用户对机顶盒的维护步骤,减少了对资源的占用,同时节约了用户成本。Further, if a smart TV having a basic decoding function is used as the client, the smart TV can be directly provided by the service providing device, and the set-top box is no longer required to be separately set, thereby reducing the maintenance steps of the set-top box by the user. Reduce the occupation of resources while saving user costs.
此外,由于服务提供设备的状态变更频繁,并不是所有状态下的服务提供设备均能正常为所述客户端提供服务。而在本实施例中,由于调度服务器是将满足设定状态条件的服务提供设备分配给客户端,故,避免了分配的服务提供设备不能正常提供服务的情况,减少了分配错误,提高了***的容错率。In addition, since the status of the service providing device changes frequently, not all the service providing devices in all states can normally provide services for the client. In this embodiment, since the scheduling server allocates the service providing device that satisfies the set state condition to the client, the allocated service providing device can be prevented from providing the service normally, the allocation error is reduced, and the system is improved. Fault tolerance rate.
而且,在本实施中,对从获取的服务提供设备进行了多次判断确认,如,判断服务提供设备是否已被分配、判断服务提供设备是否满足设定状态条件等等,进一步提高了分配的服务提供设备的准确性。同时,在本实施例中,还可以在服务提供设备未被分配时,对服务提供设备进行更新,提高了资源利用率,提高了***工作效率。Moreover, in the present embodiment, the plurality of determinations are confirmed from the obtained service providing device, for example, determining whether the service providing device has been allocated, determining whether the service providing device satisfies the set state condition, or the like, further improving the allocation. The accuracy of the service provided equipment. In the meantime, in the embodiment, the service providing device may be updated when the service providing device is not allocated, thereby improving resource utilization and improving system working efficiency.
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组 合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。It should be noted that, for the method embodiment, for the sake of simple description, it is expressed as a series of action groups. It should be understood by those skilled in the art that the embodiments of the present application are not limited by the described order of actions, as some steps may be performed in other sequences or concurrently in accordance with embodiments of the present application. In the following, those skilled in the art should also understand that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily required in the embodiments of the present application.
实施例四Embodiment 4
本申请还提供了一种资源分配装置,上述实施例中所述的智能电视***中的服务器可以包括所述资源分配装置,也即,所述资源分配装置可以用于实现上述方法实施例,故,上述方法实施例中的特征都可以应用到本实施例中。The present application further provides a resource allocation device. The server in the smart television system described in the foregoing embodiment may include the resource allocation device, that is, the resource allocation device may be used to implement the foregoing method embodiment. The features in the above method embodiments can be applied to the embodiment.
参照图5,示出了本申请实施例四中一种资源分配装置的结构框图。在本实施例中,所述资源分配装置包括:Referring to FIG. 5, a structural block diagram of a resource allocation apparatus in Embodiment 4 of the present application is shown. In this embodiment, the resource allocation apparatus includes:
获取模块502,用于获取客户端对应终端的终端信息;The obtaining module 502 is configured to obtain terminal information of the client-compatible terminal.
确定模块504,用于根据所述终端信息确定客户端对应终端的终端类型;a determining module 504, configured to determine, according to the terminal information, a terminal type of the client-compatible terminal;
分配模块506,用于根据客户端对应终端的终端类型,为客户端分配与所述终端类型相匹配的服务提供设备,其中,服务提供设备用于为客户端提供服务。The distribution module 506 is configured to allocate, to the client, a service providing device that matches the terminal type according to the terminal type of the client-compatible terminal, where the service providing device is configured to provide a service for the client.
综上所述,在本实施例中,首先从客户端获取所述客户端对应的终端信息,根据所述终端信息确定所述客户端对应终端的终端类型;然后,从与终端类型相匹配的服务提供设备中为客户端分配服务提供设备。可见,通过本申请实施例,一方面,为终端提供服务的设备由网络侧的服务提供设备实现,终端只需具有基本的解码功能,即可从网络侧获取服务,不再依赖或受制于数字视频变换盒。进一步地,本申请的资源分配方案中,不同的终端类型对应有不同的服务提供设备,在确定了终端类型后,***只需从与该种类型相匹配的服务提供设备中进行选择,只需对该种类型的终端进行处理,由此大大减少了数据处理数量,提高了数据处理效率,减轻了***处理负担,提高了分配服务提供设备资源如数字视频变换盒资源的效率,大大提升了终端使用者的使用体验。In summary, in this embodiment, the terminal information corresponding to the client is first obtained from the client, and the terminal type of the terminal corresponding to the client is determined according to the terminal information; and then, the terminal type is matched. A service providing device is allocated to a client in a service providing device. It can be seen that, by using the embodiment of the present application, on the one hand, the device that provides the service for the terminal is implemented by the service providing device on the network side, and the terminal only needs to have the basic decoding function, and can obtain the service from the network side, and no longer depends on or is subject to the digital Video converter box. Further, in the resource allocation scheme of the present application, different terminal types correspond to different service providing devices. After determining the terminal type, the system only needs to select from the service providing devices that match the type, This type of terminal is processed, thereby greatly reducing the number of data processing, improving the data processing efficiency, reducing the processing load of the system, improving the efficiency of allocating service providing device resources such as digital video conversion box resources, and greatly improving the terminal. User experience.
实施例五Embodiment 5
参照图6,示出了本申请实施例五中一种资源分配装置的结构框图。在本实施例中,所述资源分配装置可以设置在所述智能电视***中,所述资源分配装置具体可以包括:Referring to FIG. 6, a structural block diagram of a resource allocation apparatus in Embodiment 5 of the present application is shown. In this embodiment, the resource allocation apparatus may be disposed in the smart television system, and the resource allocation apparatus may specifically include:
获取模块602,用于获取客户端对应终端的终端信息;确定模块604,用于根据所述终端信息确定客户端对应终端的终端类型;分配模块606,用于根据客户端对应终端的终端类型,为客户端分配与所述终端类型相匹配的服务提供设备,其中,服务提供设备用于为客户端提供服务。 The obtaining module 602 is configured to obtain terminal information of the client-compatible terminal, and the determining module 604 is configured to determine, according to the terminal information, a terminal type of the client-compatible terminal, and the assigning module 606, configured to use, according to the terminal type of the terminal corresponding to the client, The client is assigned a service providing device that matches the terminal type, wherein the service providing device is used to provide a service to the client.
优选地,分配模块606,用于根据客户端的终端类型,从与所述终端类型相匹配的服务提供设备中为客户端选择服务提供设备,其中,选择出的服务提供设备满足设定条件。Preferably, the allocating module 606 is configured to select a service providing device for the client from the service providing device that matches the terminal type according to the terminal type of the client, wherein the selected service providing device satisfies the setting condition.
优选地,所述设定条件,包括:服务提供设备未被分配给客户端;和/或,服务提供设备处于空闲状态或休眠状态。Preferably, the setting condition includes: the service providing device is not allocated to the client; and/or the service providing device is in an idle state or a dormant state.
优选地,分配模块606包括:第一分配子模块6062,用于从与终端类型相匹配的多个服务提供设备中任选一个服务提供设备;判断任选的服务提供设备是否处于空闲状态或休眠状态;若是,则判断任选的服务提供设备是否已被分配给其他客户端,若未被分配,则将任选的服务提供设备分配给所述客户端;或者,第二分配子模块6064,用于从与终端类型相匹配的多个服务提供设备中任选一个服务提供设备;判断任选的服务提供设备是否已被分配给其他客户端,若未被分配,则判断任选的服务提供设备是否处于空闲状态或休眠状态;若是,则将任选的服务提供设备分配给客户端。Preferably, the allocating module 606 includes: a first allocating submodule 6062, configured to select one of the plurality of service providing devices that match the terminal type; determine whether the optional service providing device is in an idle state or sleep. a state; if yes, determining whether an optional service providing device has been assigned to another client, and if not assigned, assigning the optional service providing device to the client; or, the second assigning submodule 6064, For selecting one of the plurality of service providing devices matching the terminal type; determining whether the optional service providing device has been allocated to other clients, and if not assigned, determining the optional service providing Whether the device is idle or hibernating; if so, the optional service providing device is assigned to the client.
优选地,分配模块606还包括:第一重选子模块6066,用于若任选的服务提供设备已被分配给其他客户端或不处于空闲状态或不处于休眠状态,则从与终端类型相匹配的多个服务提供设备中为客户端重新选择一个服务提供设备;第一返回执行子模块6068,用于继续判断重新选择的服务提供设备是否满足所述设定条件,直至为客户端选择出满足所述设定条件的服务提供设备,或者,直至为客户端选择服务提供设备的次数达到第一设定阈值。Preferably, the allocating module 606 further includes: a first reselecting submodule 6066, if the optional service providing device has been assigned to another client or is not in an idle state or is not in a dormant state, Reselecting a service providing device for the client in the matched plurality of service providing devices; the first returning execution sub-module 6068 is configured to continue to determine whether the reselected service providing device satisfies the setting condition until the client selects The service providing device that satisfies the set condition, or until the number of times the service providing device is selected for the client reaches a first set threshold.
优选地,分配模块606包括:选择子模块60610,用于根据客户端的终端类型,从与终端类型相匹配的服务提供设备中选择一个服务提供设备;预分配子模块60612,用于先将选择的服务提供设备预分配给客户端;第一判断子模块60614,用于判断预分配给客户端的服务提供设备的当前状态;确定分配子模块60616,用于若服务提供设备的当前状态满足设定状态,则确定将满足所述设定状态的服务提供设备分配给客户端。Preferably, the allocating module 606 includes: a selecting submodule 60610, configured to select one service providing device from the service providing devices that match the terminal type according to the terminal type of the client; the pre-allocation sub-module 60612 is configured to select the first The service providing device is pre-allocated to the client; the first determining sub-module 60614 is configured to determine a current state of the service providing device pre-allocated to the client; and the determining the sub-module 60616 is configured to: if the current state of the service providing device meets the set state And determining to assign the service providing device that satisfies the set state to the client.
优选地,所述设定状态包括空闲状态或睡眠状态;确定分配子模块60616包括:第一确定分配子模块,用于若服务提供设备的当前状态为空闲状态,则确定将满足所述设定状态的服务提供设备分配给客户端;第二确定分配子模块,用于若服务提供设备的当前状态为睡眠状态,则唤醒服务提供设备后,将满足所述设定状态的服务提供设备分配给客户端。Preferably, the setting state includes an idle state or a sleep state; determining the allocation submodule 60616 includes: a first determining an allocation submodule, configured to determine that the setting is satisfied if a current state of the service providing device is an idle state The service providing device of the state is allocated to the client; the second determining the assigning submodule is configured to allocate the service providing device that satisfies the set state to the service providing device after the service providing device is awake after the current state of the service providing device is the sleep state Client.
优选地,分配模块606还包括:第二重选子模块60618,用于若服务提供设备的当前状态不满足设定状态,则从与终端类型相匹配的多个服务提供设备中为客户端重新选 择一个服务提供设备;第二返回执行子模块60620,用于继续判断重新选择的服务提供设备是否满足所述设定条件和所述设定状态,直至为客户端分配满足设定条件以及设定状态的服务提供设备,或者,直至为客户端选择服务提供设备的次数达到第一设定阈值。Preferably, the allocating module 606 further includes: a second reselecting submodule 60618, configured to re-create the client from the plurality of service providing devices that match the terminal type if the current state of the service providing device does not satisfy the set state Choose Selecting a service providing device; the second returning execution sub-module 60620 is configured to continue to determine whether the re-selected service providing device satisfies the set condition and the set state, until the client is configured to meet the set condition and the setting The service provider of the status, or until the number of times the service is provided for the client, reaches a first set threshold.
优选地,本实施例的资源分配装置还包括:通知模块608,用于在分配模块606为客户端分配与终端类型相匹配的服务提供设备之后,通知为客户端分配的服务提供设备获取客户端对应的用户数据。Preferably, the resource allocation apparatus of this embodiment further includes: a notification module 608, configured to notify the service providing device that is allocated by the client to acquire the client after the allocating module 606 allocates the service providing device matching the terminal type to the client Corresponding user data.
优选地,本实施例的资源分配装置还包括:第二判断模块610,用于在通知模块608通知为客户端分配的服务提供设备获取客户端对应的用户数据之后,判断为客户端分配的服务提供设备是否成功获取到客户端对应的用户数据;执行模块612,用于若第二判断模块610的判断结果为是,则将服务提供设备标识为已分配给客户端;若第二判断模块610的判断结果为否,则返回通知模块608继续执行,直至服务提供设备成功获取到客户端对应的用户数据,或者,直至服务提供设备获取客户端对应的用户数据的次数达到第二设定阈值。Preferably, the resource allocation apparatus of this embodiment further includes: a second determining module 610, configured to determine, after the notification module 608, the service providing device allocated by the client acquires the user data corresponding to the client, determine the service allocated by the client Providing whether the device successfully obtains the user data corresponding to the client; the executing module 612 is configured to: if the determination result of the second determining module 610 is yes, identify the service providing device as being allocated to the client; if the second determining module 610 If the result of the determination is no, the return notification module 608 continues to execute until the service providing device successfully obtains the user data corresponding to the client, or until the number of times the service providing device acquires the user data corresponding to the client reaches a second set threshold.
优选地,本实施例的资源分配装置还包括:发送模块614,用于在执行模块612将服务提供设备标识为已分配给客户端之后,获取服务提供设备的设备信息;将所述设备信息发送至客户端,以通知客户端根据所述设备信息建立与服务提供设备的连接。Preferably, the resource allocation apparatus of this embodiment further includes: a sending module 614, configured to acquire device information of the service providing device after the executing module 612 identifies the service providing device as being allocated to the client; and send the device information To the client, to notify the client to establish a connection with the service providing device according to the device information.
优选地,分配模块606包括:队列确定子模块60622,用于根据客户端对应终端的终端类型,确定与终端类型相匹配的分布式队列,其中,分布式队列中包括:与终端类型相匹配的至少一个服务提供设备的信息;设备分配子模块60624,用于根据分布式队列中的至少一个服务提供设备的信息,为客户端分配服务提供设备。Preferably, the allocating module 606 includes: a queue determining sub-module 60622, configured to determine, according to the terminal type of the client-compatible terminal, a distributed queue that matches the terminal type, where the distributed queue includes: matching the terminal type The at least one service providing device information; the device allocation sub-module 60624 is configured to allocate a service providing device to the client according to the information of the at least one service providing device in the distributed queue.
优选地,设备分配子模块60624包括:获取子模块,用于获取对应与分布式队列的分布式锁;加锁分配子模块,用于在使用分布式锁对分布式队列加锁后,根据分布式队列中的至少一个服务提供设备的信息,为客户端分配服务提供设备。Preferably, the device allocation sub-module 60624 includes: an acquisition sub-module for acquiring a distributed lock corresponding to the distributed queue; and a lock distribution sub-module for locking the distributed queue after using the distributed lock, according to the distribution At least one service in the queue provides information about the device, and the service is provided to the client.
优选地,设备分配子模块60624还包括:释放子模块,用于在为客户端分配服务提供设备之后,释放分布式队列的分布式锁。Preferably, the device allocation submodule 60624 further includes: a release submodule, configured to release the distributed lock of the distributed queue after the service providing device is allocated to the client.
本实施例的资源分配装置用于实现前述多个方法实施例中的资源分配方法,并具有相应的方法实施例的有益效果,在此不再赘述。The resource allocation apparatus in this embodiment is used to implement the resource allocation method in the foregoing multiple method embodiments, and has the beneficial effects of the corresponding method embodiments, and details are not described herein again.
实施例六Embodiment 6
本申请实施例还公开了一种智能电视***,包括:至少一个服务器、至少一个客户端、至少一个服务提供设备;其中,所述服务器用于向所述客户端分配服务提供设备; 所述客户端设置在智能电视中,所述服务提供设备设置在网络侧,用于通过网络为建立连接的客户端提供互联网服务;The embodiment of the present application further discloses a smart television system, including: at least one server, at least one client, and at least one service providing device; wherein the server is configured to allocate a service providing device to the client; The client is disposed in a smart TV, and the service providing device is disposed on a network side, and is configured to provide an Internet service for establishing a connected client through a network;
其中,所述服务器可以包括上述实施例四中所述的资源分配装置,或实施例五优化后的资源分配装置。The server may include the resource allocation device described in Embodiment 4 above, or the resource allocation device optimized in Embodiment 5.
所述的***还包括:少一个用户数据存储设备;所述至少一个用户数据存储设备包括:至少一个用户分区;其中,所述至少一个用户分区分别用于存储不同客户端对应的用户数据。The system further includes: one less user data storage device; the at least one user data storage device includes: at least one user partition; wherein the at least one user partition is respectively configured to store user data corresponding to different clients.
所述服务提供设备包括:网络机顶盒;所述互联网服务,包括如下中的至少一个:电视直播、音视频服务、网页服务、游戏服务。The service providing device includes: a network set top box; the internet service includes at least one of the following: a live television, an audio and video service, a web service, and a game service.
其中,该智能电视***与上述图3所述的***基本一致,因此不再赘述。The smart television system is basically the same as the system described in FIG. 3 above, and therefore will not be described again.
对于上述装置例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见上述方法实施例的部分说明即可。For the above device example, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the description of the method embodiment.
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。The various embodiments in the present specification are described in a progressive manner, and each embodiment focuses on differences from other embodiments, and the same similar parts between the various embodiments can be referred to each other.
本领域技术人员易于想到的是:上述各个实施例的任意组合应用都是可行的,故上述各个实施例之间的任意组合都是本申请的实施方案,但是由于篇幅限制,本说明书在此就不一一详述了。It will be readily apparent to those skilled in the art that any combination of the above embodiments is possible, and any combination between the above embodiments is an embodiment of the present application, but due to space limitations, the present specification is hereby Not detailed one by one.
本申请可用于众多通用或专用的计算***环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器***、基于微处理器的***、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何***或设备的分布式计算环境等等。This application can be used in a variety of general purpose or special purpose computing system environments or configurations. For example: personal computers, server computers, handheld or portable devices, tablet devices, multiprocessor systems, microprocessor based systems, set-top boxes, programmable consumer electronics devices, network PCs, small computers, mainframe computers, including A distributed computing environment of any of the above systems or devices, and the like.
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。The application can be described in the general context of computer-executable instructions executed by a computer, such as a program module. Generally, program modules include routines, programs, objects, components, data structures, and the like that perform particular tasks or implement particular abstract data types. The present application can also be practiced in distributed computing environments where tasks are performed by remote processing devices that are connected through a communication network. In a distributed computing environment, program modules can be located in both local and remote computer storage media including storage devices.
在本申请中,“组件”、“装置”、“***”等等指应用于计算机的相关实体,如硬件、硬件和软件的组合、软件或执行中的软件等。详细地说,例如,组件可以、但不限于是运行于处理器的过程、处理器、对象、可执行组件、执行线程、程序和/或计算机。 还有,运行于服务器上的应用程序或脚本程序、服务器都可以是组件。一个或多个组件可在执行的过程和/或线程中,并且组件可以在一台计算机上本地化和/或分布在两台或多台计算机之间,并可以由各种计算机可读介质运行。组件还可以根据具有一个或多个数据包的信号,例如,来自一个与本地***、分布式***中另一组件交互的,和/或在因特网的网络通过信号与其它***交互的数据的信号通过本地和/或远程过程来进行通信。In the present application, "component", "device", "system" and the like refer to related entities applied to a computer, such as hardware, a combination of hardware and software, software or software in execution, and the like. In particular, for example, a component can be, but is not limited to being, a process running on a processor, a processor, an object, an executable component, a thread of execution, a program, and/or a computer. Also, an application or script running on a server, or a server, can be a component. One or more components can be executed in a process and/or thread, and the components can be localized on a single computer and/or distributed between two or more computers and can be run by various computer readable media. . The component may also pass signals based on data having one or more data packets, for example, from a signal interacting with another component in the local system, the distributed system, and/or interacting with other systems over the network of the Internet. Local and/or remote processes to communicate.
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”,不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。Finally, it should also be noted that in this context, relational terms such as first and second are used merely to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply these entities. There is any such actual relationship or order between operations. Moreover, the terms "comprising" and "comprising" are intended to include not only those elements, but also other elements that are not explicitly listed, or the elements that are inherent to the process, method, item, or device. An element that is defined by the phrase "comprising", without limiting the invention, does not exclude the presence of additional elements in the process, method, article, or device.
而且,上文中的“和/或”表示本文既包含了“和”的关系,也包含了“或”的关系,其中:如果方案A与方案B是“和”的关系,则表示某实施例中可以同时包括方案A和方案B;如果方案A与方案B是“或”的关系,则表示某实施例中可以单独包括方案A,或者单独包括方案B。Moreover, "and/or" in the above means that both the relationship of "and" and the relationship of "or" are included herein, wherein: if the relationship between the scheme A and the scheme B is "and", it indicates an embodiment. The scheme A and the scheme B may be included at the same time; if the relationship between the scheme A and the scheme B is "or", it means that the scheme A may be separately included in an embodiment, or the scheme B may be separately included.
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。Those skilled in the art will appreciate that embodiments of the present application can be provided as a method, system, or computer program product. Thus, the present application can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment in combination of software and hardware. Moreover, the application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (system), and computer program products according to embodiments of the present application. It will be understood that each flow and/or block of the flowchart illustrations and/or FIG. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing device to produce a machine for the execution of instructions for execution by a processor of a computer or other programmable data processing device. Means for implementing the functions specified in one or more of the flow or in a block or blocks of the flow chart.
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或 多个方框中指定的功能。The computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device. The device is implemented in a flow or a block diagram of a flow or a block diagram or The functions specified in multiple boxes.
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device. The instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。While the preferred embodiment of the present application has been described, those skilled in the art can make further changes and modifications to these embodiments once they are aware of the basic inventive concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and the modifications and
以上对本申请所提供的一种资源分配方法、装置和智能电视***进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。 The foregoing describes a resource allocation method, apparatus, and smart television system provided by the present application. The principles and implementation manners of the present application are described in the specific examples. The description of the above embodiments is only used to help understanding. The method of the present application and its core idea; at the same time, for those of ordinary skill in the art, according to the idea of the present application, there will be changes in the specific implementation manner and application scope. In summary, the content of this specification should not be It is understood to be a limitation on the present application.

Claims (34)

  1. 一种资源分配方法,其特征在于,包括:A resource allocation method, comprising:
    获取客户端对应终端的终端信息;Obtain terminal information of the terminal corresponding to the client;
    根据所述终端信息确定所述客户端对应终端的终端类型;Determining, according to the terminal information, a terminal type of the client-compatible terminal;
    根据所述客户端对应终端的终端类型,为所述客户端分配与所述终端类型相匹配的服务提供设备,其中,所述服务提供设备用于为所述客户端提供服务。And assigning, to the client, a service providing device that matches the terminal type, where the service providing device is configured to provide a service for the client, according to the terminal type of the client-compatible terminal.
  2. 如权利要求1所述的方法,其特征在于,根据所述客户端对应终端的终端类型,为所述客户端分配与所述终端类型相匹配的服务提供设备的步骤,包括:The method according to claim 1, wherein the step of assigning, to the client, a service providing device that matches the terminal type according to the terminal type of the client-compatible terminal comprises:
    根据所述客户端的终端类型,从与所述终端类型相匹配的服务提供设备中为所述客户端选择服务提供设备,其中,选择出的服务提供设备满足设定条件。And selecting, according to the terminal type of the client, a service providing device for the client from a service providing device that matches the terminal type, wherein the selected service providing device satisfies a setting condition.
  3. 如权利要求2所述的方法,其特征在于,所述设定条件,包括:The method of claim 2 wherein said setting conditions comprise:
    服务提供设备未被分配给客户端;和/或The service providing device is not assigned to the client; and/or
    服务提供设备处于空闲状态或休眠状态。The service providing device is in an idle state or in a sleep state.
  4. 如权利要求2或3所述的方法,其特征在于,所述从与所述终端类型相匹配的服务提供设备中为所述客户端选择服务提供设备的步骤,包括:The method according to claim 2 or 3, wherein the step of selecting a service providing device for the client from the service providing device matching the terminal type comprises:
    从与所述终端类型相匹配的多个服务提供设备中任选一个服务提供设备;判断任选的所述服务提供设备是否处于空闲状态或休眠状态;若是,则判断任选的所述服务提供设备是否已被分配给其他客户端,若未被分配,则将任选的所述服务提供设备分配给所述客户端;Determining, from a plurality of service providing devices matching the terminal type, a service providing device; determining whether the optional service providing device is in an idle state or a dormant state; if yes, determining the optional service providing Whether the device has been assigned to other clients, and if not assigned, the optional service providing device is assigned to the client;
    或者,or,
    从与所述终端类型相匹配的多个服务提供设备中任选一个服务提供设备;判断任选的所述服务提供设备是否已被分配给其他客户端,若未被分配,则判断任选的所述服务提供设备是否处于空闲状态或休眠状态;若是,则将任选的所述服务提供设备分配给所述客户端。Selecting one of the plurality of service providing devices matching the terminal type; determining whether the optional service providing device has been assigned to another client, and if not assigned, determining the optional Whether the service providing device is in an idle state or a dormant state; if so, the optional service providing device is assigned to the client.
  5. 如权利要求4所述的方法,其特征在于,所述方法还包括:The method of claim 4, wherein the method further comprises:
    若任选的所述服务提供设备已被分配给其他客户端或不处于空闲状态或不处于休眠状态,则从与所述终端类型相匹配的多个服务提供设备中为所述客户端重新选择一个服务提供设备;If the optional service providing device has been assigned to another client or is not in an idle state or is not in a dormant state, reselecting the client from a plurality of service providing devices matching the terminal type a service providing device;
    并继续判断重新选择的所述服务提供设备是否满足所述设定条件,直至为所述客户端选择出满足所述设定条件的服务提供设备,或者,直至为所述客户端选择服务提供设 备的次数达到第一设定阈值。And continuing to determine whether the reselected service providing device satisfies the setting condition until selecting a service providing device that satisfies the setting condition for the client, or until selecting a service providing device for the client The number of backups reaches the first set threshold.
  6. 如权利要求2所述的方法,其特征在于,根据所述客户端的终端类型,从与所述终端类型相匹配的服务提供设备中为所述客户端选择服务提供设备的步骤,包括:The method of claim 2, wherein the step of selecting a service providing device for the client from the service providing device that matches the terminal type according to the terminal type of the client comprises:
    根据所述客户端的终端类型,从与所述终端类型相匹配的服务提供设备中选择一个服务提供设备;Selecting a service providing device from the service providing devices that match the terminal type according to the terminal type of the client;
    先将选择的所述服务提供设备预分配给所述客户端;Pre-allocating the selected service providing device to the client;
    判断预分配给所述客户端的服务提供设备的当前状态;Determining a current state of a service providing device pre-assigned to the client;
    若所述服务提供设备的当前状态满足设定状态,则确定将满足所述设定状态的服务提供设备分配给所述客户端。If the current state of the service providing device satisfies the set state, it is determined that the service providing device that satisfies the set state is assigned to the client.
  7. 如权利要求6所述的方法,其特征在于,所述设定状态包括空闲状态或睡眠状态;The method of claim 6 wherein said set state comprises an idle state or a sleep state;
    若所述服务提供设备的当前状态满足设定状态,则确定将满足所述设定状态的服务提供设备分配给所述客户端的步骤包括:If the current state of the service providing device meets the set state, determining that the service providing device that satisfies the set state is allocated to the client includes:
    若所述服务提供设备的当前状态为空闲状态,则确定将满足所述设定状态的服务提供设备分配给所述客户端;If the current state of the service providing device is an idle state, determining to allocate a service providing device that satisfies the set state to the client;
    若所述服务提供设备的当前状态为睡眠状态,则唤醒所述服务提供设备后,将满足所述设定状态的服务提供设备分配给所述客户端。If the current state of the service providing device is a sleep state, after the service providing device is woken up, the service providing device that satisfies the set state is allocated to the client.
  8. 如权利要求6所述的方法,其特征在于,所述方法还包括:The method of claim 6 wherein the method further comprises:
    若所述服务提供设备的当前状态不满足设定状态,则从与所述终端类型相匹配的多个服务提供设备中为所述客户端重新选择一个服务提供设备;If the current state of the service providing device does not satisfy the set state, reselecting a service providing device for the client from a plurality of service providing devices that match the terminal type;
    并继续判断重新选择的所述服务提供设备是否满足所述设定条件和所述设定状态,直至为所述客户端分配满足设定条件以及设定状态的服务提供设备,或者,直至为所述客户端选择服务提供设备的次数达到第一设定阈值。And continuing to determine whether the reselected service providing device satisfies the setting condition and the setting state, until the client is allocated a service providing device that satisfies the setting condition and the setting state, or until The number of times the client selects the service providing device reaches the first set threshold.
  9. 如权利要求1-3、6-8任一权利要求所述的方法,其特征在于,在为所述客户端分配与所述终端类型相匹配的服务提供设备的步骤之后,所述方法还包括:The method according to any one of claims 1-3, 6-8, wherein after the step of assigning the client to the service providing device matching the terminal type, the method further comprises :
    通知为所述客户端分配的服务提供设备获取所述客户端对应的用户数据。Notifying the service providing device allocated to the client to acquire user data corresponding to the client.
  10. 如权利要求9所述的方法,其特征在于,在通知为所述客户端分配的服务提供设备获取所述客户端对应的用户数据的步骤之后,所述方法还包括:The method according to claim 9, wherein after the step of notifying the service providing device that is allocated to the client to obtain the user data corresponding to the client, the method further includes:
    判断为所述客户端分配的服务提供设备是否成功获取到所述客户端对应的用户数据; Determining whether the service providing device allocated by the client successfully obtains user data corresponding to the client;
    若是,则将所述服务提供设备标识为已分配给客户端;If yes, the service providing device is identified as being allocated to the client;
    若否,则返回所述通知满足所述设定状态的服务提供设备获取所述客户端对应的用户数据的步骤继续执行,直至所述服务提供设备成功获取到所述客户端对应的用户数据,或者,直至所述服务提供设备获取所述客户端对应的用户数据的次数达到第二设定阈值。If not, the step of returning the notification that the service providing device that meets the setting state acquires the user data corresponding to the client continues to be performed until the service providing device successfully obtains the user data corresponding to the client, Or until the number of times the service providing device acquires the user data corresponding to the client reaches a second set threshold.
  11. 如权利要求10所述的方法,其特征在于,在将所述服务提供设备标识为已分配给客户端的步骤之后,所述方法还包括:The method of claim 10, wherein after the step of identifying the service providing device as being assigned to a client, the method further comprises:
    获取所述服务提供设备的设备信息;Obtaining device information of the service providing device;
    将所述设备信息发送至所述客户端,以通知所述客户端根据所述设备信息建立与所述服务提供设备的连接。Sending the device information to the client to notify the client to establish a connection with the service providing device according to the device information.
  12. 如权利要求1所述的方法,其特征在于,根据所述客户端对应终端的终端类型,为所述客户端分配与所述终端类型相匹配的服务提供设备的步骤,包括:The method according to claim 1, wherein the step of assigning, to the client, a service providing device that matches the terminal type according to the terminal type of the client-compatible terminal comprises:
    根据所述客户端对应终端的终端类型,确定与所述终端类型相匹配的分布式队列,其中,所述分布式队列中包括:与所述终端类型相匹配的至少一个服务提供设备的信息;And determining, according to the terminal type of the client-compatible terminal, a distributed queue that matches the terminal type, where the distributed queue includes: information of at least one service providing device that matches the terminal type;
    根据所述分布式队列中的至少一个服务提供设备的信息,为所述客户端分配服务提供设备。And assigning a service providing device to the client according to information of at least one service providing device in the distributed queue.
  13. 如权利要求12所述的方法,其特征在于,根据所述分布式队列中的至少一个服务提供设备的信息,为所述客户端分配服务提供设备的步骤包括:The method according to claim 12, wherein the step of allocating the service providing device to the client according to the information of the at least one service providing device in the distributed queue comprises:
    获取对应与所述分布式队列的分布式锁;Obtaining a distributed lock corresponding to the distributed queue;
    在使用所述分布式锁对所述分布式队列加锁后,根据所述分布式队列中的至少一个服务提供设备的信息,为所述客户端分配服务提供设备。After the distributed queue is locked using the distributed lock, the service providing device is allocated to the client according to information of at least one service providing device in the distributed queue.
  14. 如权利要求13所述的方法,其特征在于,在为所述客户端分配服务提供设备的步骤之后,所述方法还包括:The method of claim 13, wherein after the step of assigning a service providing device to the client, the method further comprises:
    释放所述分布式队列的分布式锁。Release the distributed lock of the distributed queue.
  15. 根据权利要求1所述的方法,其特征在于,所述资源分配方法应用于智能电视***;其中,所述智能电视***包括:至少一个服务器、至少一个客户端、至少一个服务提供设备;其中,所述服务器用于向所述客户端分配服务提供设备;所述客户端设置在智能电视中,所述服务提供设备设置在网络侧,用于通过网络为建立连接的客户端提供互联网服务。The method according to claim 1, wherein the resource allocation method is applied to a smart television system; wherein the smart television system comprises: at least one server, at least one client, and at least one service providing device; The server is configured to allocate a service providing device to the client; the client is disposed in a smart TV, and the service providing device is disposed on a network side, and is configured to provide an Internet service for a client that establishes a connection through a network.
  16. 根据权利要求15所述的方法,其特征在于,所述智能电视***,还包括至少 一个用户数据存储设备;所述至少一个用户数据存储设备包括:至少一个用户分区;其中,所述至少一个用户分区分别用于存储不同客户端对应的用户数据。The method of claim 15 wherein said smart television system further comprises at least a user data storage device; the at least one user data storage device includes: at least one user partition; wherein the at least one user partition is respectively configured to store user data corresponding to different clients.
  17. 根据权利要求15所述的方法,其特征在于,所述服务提供设备包括:网络机顶盒;所述互联网服务,包括如下中的至少一个:The method according to claim 15, wherein said service providing device comprises: a network set top box; said internet service comprising at least one of:
    电视直播、音视频服务、网页服务、游戏服务。Live TV, audio and video services, web services, and game services.
  18. 一种资源分配装置,其特征在于,包括:A resource allocation device, comprising:
    获取模块,用于获取客户端对应终端的终端信息;The obtaining module is configured to obtain terminal information of the terminal corresponding to the client;
    确定模块,用于根据所述终端信息确定所述客户端对应终端的终端类型;a determining module, configured to determine, according to the terminal information, a terminal type of the client-compatible terminal;
    分配模块,用于根据所述客户端对应终端的终端类型,为所述客户端分配与所述终端类型相匹配的服务提供设备,其中,所述服务提供设备用于为所述客户端提供服务。An allocating module, configured to allocate, according to a terminal type of the client-compatible terminal, a service providing device that matches the terminal type, where the service providing device is configured to provide a service for the client .
  19. 如权利要求18所述的装置,其特征在于,The device of claim 18, wherein
    所述分配模块,用于根据所述客户端的终端类型,从与所述终端类型相匹配的服务提供设备中为所述客户端选择服务提供设备,其中,选择出的服务提供设备满足设定条件。The allocating module is configured to select a service providing device for the client from the service providing device that matches the terminal type according to the terminal type of the client, where the selected service providing device meets the setting condition .
  20. 如权利要求19所述的装置,其特征在于,所述设定条件,包括:The device according to claim 19, wherein said setting conditions comprise:
    服务提供设备未被分配给客户端;和/或The service providing device is not assigned to the client; and/or
    服务提供设备处于空闲状态或休眠状态。The service providing device is in an idle state or in a sleep state.
  21. 如权利要求19或20所述的装置,其特征在于,所述分配模块包括:The device of claim 19 or 20, wherein the distribution module comprises:
    第一分配子模块,用于从与所述终端类型相匹配的多个服务提供设备中任选一个服务提供设备;判断任选的所述服务提供设备是否处于空闲状态或休眠状态;若是,则判断任选的所述服务提供设备是否已被分配给其他客户端,若未被分配,则将任选的所述服务提供设备分配给所述客户端;a first allocation submodule, configured to select one of the plurality of service providing devices that match the terminal type; determine whether the optional service providing device is in an idle state or a dormant state; if yes, Determining whether the optional service providing device has been assigned to another client, and if not assigned, assigning the optional service providing device to the client;
    或者,or,
    第二分配子模块,用于从与所述终端类型相匹配的多个服务提供设备中任选一个服务提供设备;判断任选的所述服务提供设备是否已被分配给其他客户端,若未被分配,则判断任选的所述服务提供设备是否处于空闲状态或休眠状态;若是,则将任选的所述服务提供设备分配给所述客户端。a second allocation submodule, configured to select one of the plurality of service providing devices that match the terminal type; determine whether the optional service providing device has been assigned to another client, if not And being allocated, determining whether the optional service providing device is in an idle state or a dormant state; if so, assigning the optional service providing device to the client.
  22. 如权利要求21所述的装置,其特征在于,所述分配模块还包括:The device of claim 21, wherein the distribution module further comprises:
    第一重选子模块,用于若任选的所述服务提供设备已被分配给其他客户端或不处于 空闲状态或不处于休眠状态,则从与所述终端类型相匹配的多个服务提供设备中为所述客户端重新选择一个服务提供设备;a first reselection submodule, if the optional service providing device has been assigned to another client or not If the idle state is not in the dormant state, reselecting a service providing device for the client from multiple service providing devices that match the terminal type;
    第一返回执行子模块,用于继续判断重新选择的所述服务提供设备是否满足所述设定条件,直至为所述客户端选择出满足所述设定条件的服务提供设备,或者,直至为所述客户端选择服务提供设备的次数达到第一设定阈值。a first return execution submodule, configured to continue to determine whether the reselected service providing device satisfies the setting condition, until selecting a service providing device that meets the setting condition for the client, or until The number of times the client selects the service providing device reaches a first set threshold.
  23. 如权利要求19所述的装置,其特征在于,所述分配模块包括:The device of claim 19, wherein the distribution module comprises:
    选择子模块,用于根据所述客户端的终端类型,从与所述终端类型相匹配的服务提供设备中选择一个服务提供设备;Selecting a submodule, configured to select a service providing device from the service providing devices that match the terminal type according to the terminal type of the client;
    预分配子模块,用于先将选择的所述服务提供设备预分配给所述客户端;a pre-allocation sub-module, configured to pre-allocate the selected service providing device to the client;
    第一判断子模块,用于判断预分配给所述客户端的服务提供设备的当前状态;a first determining submodule, configured to determine a current state of the service providing device pre-allocated to the client;
    确定分配子模块,用于若所述服务提供设备的当前状态满足设定状态,则确定将满足所述设定状态的服务提供设备分配给所述客户端。Determining an allocation submodule for determining that a service providing device that satisfies the set state is assigned to the client if a current state of the service providing device satisfies a set state.
  24. 如权利要求23所述的装置,其特征在于,所述设定状态包括空闲状态或睡眠状态;The apparatus according to claim 23, wherein said set state comprises an idle state or a sleep state;
    所述确定分配子模块包括:The determining the allocation submodule includes:
    第一确定分配子模块,用于若所述服务提供设备的当前状态为空闲状态,则确定将满足所述设定状态的服务提供设备分配给所述客户端;a first determining an allocation submodule, configured to: if the current state of the service providing device is an idle state, determine to allocate a service providing device that satisfies the set state to the client;
    第二确定分配子模块,用于若所述服务提供设备的当前状态为睡眠状态,则唤醒所述服务提供设备后,将满足所述设定状态的服务提供设备分配给所述客户端。The second determining the distribution submodule is configured to: after the current state of the service providing device is in a sleep state, awake the service providing device, and allocate the service providing device that meets the set state to the client.
  25. 如权利要求23所述的装置,其特征在于,所述分配模块还包括:The device of claim 23, wherein the distribution module further comprises:
    第二重选子模块,用于若所述服务提供设备的当前状态不满足设定状态,则从与所述终端类型相匹配的多个服务提供设备中为所述客户端重新选择一个服务提供设备;a second re-selection sub-module, configured to re-select a service providing for the client from a plurality of service providing devices that match the terminal type, if the current state of the service providing device does not satisfy the set state device;
    第二返回执行子模块,用于继续判断重新选择的所述服务提供设备是否满足所述设定条件和所述设定状态,直至为所述客户端分配满足设定条件以及设定状态的服务提供设备,或者,直至为所述客户端选择服务提供设备的次数达到第一设定阈值。a second return execution submodule, configured to continue to determine whether the reselected service providing device satisfies the set condition and the set state, until the client is allocated a service that satisfies a set condition and a set state The device is provided, or until the number of times the service providing device is selected for the client reaches a first set threshold.
  26. 如权利要求18-20、23-25任一权利要求所述的装置,其特征在于,所述装置还包括:The device according to any one of claims 18-20, 23-25, wherein the device further comprises:
    通知模块,用于在所述分配模块为所述客户端分配与所述终端类型相匹配的服务提供设备之后,通知为所述客户端分配的服务提供设备获取所述客户端对应的用户数据。The notification module is configured to notify the service providing device allocated by the client to acquire the user data corresponding to the client, after the assigning module allocates the service providing device that matches the terminal type to the client.
  27. 如权利要求26所述的装置,其特征在于,所述装置还包括: The device of claim 26, wherein the device further comprises:
    第二判断模块,用于在所述通知模块通知为所述客户端分配的服务提供设备获取所述客户端对应的用户数据之后,判断为所述客户端分配的服务提供设备是否成功获取到所述客户端对应的用户数据;a second determining module, configured to determine, after the notification module is configured to obtain the user data corresponding to the client, the service providing device that is allocated by the client, whether the service providing device allocated by the client successfully obtains the location Describe the user data corresponding to the client;
    执行模块,用于若所述第二判断模块的判断结果为是,则将所述服务提供设备标识为已分配给客户端;若所述第二判断模块的判断结果为否,则返回所述通知模块继续执行,直至所述服务提供设备成功获取到所述客户端对应的用户数据,或者,直至所述服务提供设备获取所述客户端对应的用户数据的次数达到第二设定阈值。An execution module, configured to: if the judgment result of the second judging module is yes, identify the service providing device as being allocated to the client; if the judgment result of the second judging module is no, return the The notification module continues to execute until the service providing device successfully obtains the user data corresponding to the client, or until the number of times the service providing device acquires the user data corresponding to the client reaches a second set threshold.
  28. 如权利要求27所述的装置,其特征在于,所述装置还包括:The device of claim 27, wherein the device further comprises:
    发送模块,用于在所述执行模块将所述服务提供设备标识为已分配给客户端之后,获取所述服务提供设备的设备信息;将所述设备信息发送至所述客户端,以通知所述客户端根据所述设备信息建立与所述服务提供设备的连接。a sending module, configured to acquire device information of the service providing device after the execution module identifies the service providing device as being allocated to a client, and send the device information to the client to notify the The client establishes a connection with the service providing device according to the device information.
  29. 如权利要求18所述的装置,其特征在于,所述分配模块包括:The device of claim 18, wherein the distribution module comprises:
    队列确定子模块,用于根据所述客户端对应终端的终端类型,确定与所述终端类型相匹配的分布式队列,其中,所述分布式队列中包括:与所述终端类型相匹配的至少一个服务提供设备的信息;a queue determining sub-module, configured to determine, according to a terminal type of the client-compatible terminal, a distributed queue that matches the terminal type, where the distributed queue includes: at least matching the terminal type Information about a service providing device;
    设备分配子模块,用于根据所述分布式队列中的至少一个服务提供设备的信息,为所述客户端分配服务提供设备。And a device allocation submodule, configured to allocate a service providing device to the client according to information of at least one service providing device in the distributed queue.
  30. 如权利要求29所述的装置,其特征在于,所述设备分配子模块包括:The device of claim 29, wherein the device allocation sub-module comprises:
    获取子模块,用于获取对应与所述分布式队列的分布式锁;Obtaining a submodule, configured to acquire a distributed lock corresponding to the distributed queue;
    加锁分配子模块,用于在使用所述分布式锁对所述分布式队列加锁后,根据所述分布式队列中的至少一个服务提供设备的信息,为所述客户端分配服务提供设备。a lock allocation submodule, configured to allocate a service providing device to the client according to information of at least one service providing device in the distributed queue after locking the distributed queue by using the distributed lock .
  31. 如权利要求30所述的装置,其特征在于,所述设备分配子模块还包括:The device of claim 30, wherein the device allocation sub-module further comprises:
    释放子模块,用于在为所述客户端分配服务提供设备之后,释放所述分布式队列的分布式锁。The release submodule is configured to release the distributed lock of the distributed queue after the service providing device is allocated to the client.
  32. 一种智能电视***,其特征在于,包括:至少一个服务器、至少一个客户端、至少一个服务提供设备;其中,所述服务器包括权利要求18-31任一项所述的资源分配装置;所述服务器用于向所述客户端分配服务提供设备;所述客户端设置在智能电视中,所述服务提供设备设置在网络侧,用于通过网络为建立连接的客户端提供互联网服务。A smart television system, comprising: at least one server, at least one client, at least one service providing device; wherein the server comprises the resource allocation device according to any one of claims 18-31; The server is configured to allocate a service providing device to the client; the client is disposed in a smart TV, and the service providing device is disposed on a network side, and is configured to provide an Internet service for the connected client through the network.
  33. 根据权利要求32所述的方法,其特征在于,所述智能电视***,还包括至少 一个用户数据存储设备;所述至少一个用户数据存储设备包括:至少一个用户分区;其中,所述至少一个用户分区分别用于存储不同客户端对应的用户数据。The method of claim 32 wherein said smart television system further comprises at least a user data storage device; the at least one user data storage device includes: at least one user partition; wherein the at least one user partition is respectively configured to store user data corresponding to different clients.
  34. 根据权利要求33所述的方法,其特征在于,所述服务提供设备包括:网络机顶盒;所述互联网服务,包括如下中的至少一个:The method according to claim 33, wherein said service providing device comprises: a network set top box; said internet service comprising at least one of:
    电视直播、音视频服务、网页服务、游戏服务。 Live TV, audio and video services, web services, and game services.
PCT/CN2016/085210 2015-06-17 2016-06-08 Resource allocation method and apparatus, and smart television system WO2016202201A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510338804.7 2015-06-17
CN201510338804.7A CN106331783B (en) 2015-06-17 2015-06-17 A kind of resource allocation methods, device and intelligent television system

Publications (1)

Publication Number Publication Date
WO2016202201A1 true WO2016202201A1 (en) 2016-12-22

Family

ID=57544954

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/085210 WO2016202201A1 (en) 2015-06-17 2016-06-08 Resource allocation method and apparatus, and smart television system

Country Status (2)

Country Link
CN (1) CN106331783B (en)
WO (1) WO2016202201A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109995669A (en) * 2019-04-09 2019-07-09 深圳前海微众银行股份有限公司 Distributed current-limiting method, device, equipment and readable storage medium storing program for executing
CN114630134A (en) * 2022-03-04 2022-06-14 北京奇艺世纪科技有限公司 Processing method and system for newly added code stream
CN109995669B (en) * 2019-04-09 2024-05-03 深圳前海微众银行股份有限公司 Distributed current limiting method, device, equipment and readable storage medium

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109995874B (en) * 2019-04-10 2022-04-22 苏州浪潮智能科技有限公司 Client service processing method, device, equipment and readable storage medium
CN110569470B (en) * 2019-09-09 2022-03-11 北京字节跳动网络技术有限公司 User matching method and device, readable medium and electronic equipment
CN113965538B (en) * 2021-10-21 2023-04-18 青岛海信智慧生活科技股份有限公司 Equipment state message processing method, device and storage medium
CN115296952B (en) * 2022-09-26 2023-02-07 广州市保伦电子有限公司 Equipment scheduling method, device, equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004318486A (en) * 2003-04-16 2004-11-11 Victor Co Of Japan Ltd Home network constituting equipment
US20070097860A1 (en) * 2005-11-02 2007-05-03 Sbc Knowledge Ventures, L.P. System and method of authorizing a set top box device in an internet protocol television system
CN201491019U (en) * 2009-08-25 2010-05-26 北京原力创新科技有限公司 Network video system supporting multiple terminals
CN102710647A (en) * 2012-06-06 2012-10-03 广东爱科数字科技有限公司 Set-top-box-based triple play system and implementation method
CN103442287A (en) * 2013-08-26 2013-12-11 深圳市九洲电器有限公司 Set top box network automatic expanding playing method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040236857A1 (en) * 2003-05-19 2004-11-25 Sumit Roy Systems and methods for selecting a provider to service content requested by a client device
CN103517271A (en) * 2012-06-28 2014-01-15 ***通信集团公司 Data transmission method and device and terminal

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004318486A (en) * 2003-04-16 2004-11-11 Victor Co Of Japan Ltd Home network constituting equipment
US20070097860A1 (en) * 2005-11-02 2007-05-03 Sbc Knowledge Ventures, L.P. System and method of authorizing a set top box device in an internet protocol television system
CN201491019U (en) * 2009-08-25 2010-05-26 北京原力创新科技有限公司 Network video system supporting multiple terminals
CN102710647A (en) * 2012-06-06 2012-10-03 广东爱科数字科技有限公司 Set-top-box-based triple play system and implementation method
CN103442287A (en) * 2013-08-26 2013-12-11 深圳市九洲电器有限公司 Set top box network automatic expanding playing method

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109995669A (en) * 2019-04-09 2019-07-09 深圳前海微众银行股份有限公司 Distributed current-limiting method, device, equipment and readable storage medium storing program for executing
CN109995669B (en) * 2019-04-09 2024-05-03 深圳前海微众银行股份有限公司 Distributed current limiting method, device, equipment and readable storage medium
CN114630134A (en) * 2022-03-04 2022-06-14 北京奇艺世纪科技有限公司 Processing method and system for newly added code stream
CN114630134B (en) * 2022-03-04 2023-08-04 北京奇艺世纪科技有限公司 Processing method and system for newly added code stream

Also Published As

Publication number Publication date
CN106331783B (en) 2019-10-29
CN106331783A (en) 2017-01-11

Similar Documents

Publication Publication Date Title
WO2016202201A1 (en) Resource allocation method and apparatus, and smart television system
WO2016197864A1 (en) Connection-status detection method and apparatus, and smart television system
CN110769278B (en) Distributed video transcoding method and system
WO2016197876A1 (en) Remote control method, remote server, management device, and terminal
US20100248698A1 (en) Mobile terminal device inlcuding mobile cloud platform
US20130137511A1 (en) Distributed server system and method for streaming game service
JP2019522293A (en) Acceleration resource processing method and apparatus
WO2016202200A1 (en) Data verification method and apparatus, and smart television system
WO2019201340A1 (en) Processor core scheduling method and apparatus, terminal, and storage medium
WO2023005197A1 (en) Content display method and terminal
WO2015117445A1 (en) Method and device for processing task window
CN111200606A (en) Deep learning model task processing method, system, server and storage medium
CN110851283A (en) Resource processing method and device and electronic equipment
CN113926185A (en) Data processing method, device, equipment and storage medium
CN115617509A (en) Node deployment method and device of distributed cluster and electronic equipment
WO2016202202A1 (en) Device connection method and apparatus, and smart television system
CN109388501B (en) Communication matching method, device, equipment and medium based on face recognition request
CN111026406A (en) Application running method, device and computer readable storage medium
US9690748B1 (en) Delivering notifications to background applications
CN115364477A (en) Cloud game control method and device, electronic equipment and storage medium
US9774640B2 (en) Method and system for sharing applications among a plurality of electronic devices
CN113316014A (en) Display device, server and third-party data display control method
CN102611914B (en) Cloud television application service system and method
CN112181653A (en) Job scheduling and executing method, device, equipment, system and storage medium
US10511650B2 (en) Quality of service system for a service provider that provides media content via a satellite media distribution system and a terrestrial media distribution system

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16810942

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16810942

Country of ref document: EP

Kind code of ref document: A1