Video service multi-instance multi-port scheduling method and system

By dynamically loading streaming service instances and ports in the streaming media management service system and allocating port weights based on the preset port model, the problems of bandwidth jitter and delay differences in multiple ports in the streaming media service are solved, and the performance and reliability of streaming media service are improved.

CN119815084AActive Publication Date: 2025-04-11CHINA TELECOM CLOUD TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202411773022.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-04
Publication Date
2025-04-11
Estimated Expiration
2044-12-04

AI Technical Summary

Technical Problem

When handling streaming media services, it is difficult to effectively manage bandwidth jitter and delay differences within multi-ports, resulting in increased technical complexity and challenges of multi-path transmission.

Method used

A multi-instance and multi-instance port scheduling method for video service is proposed. Through real-time computing services of the streaming media management service system, streaming media service instances and ports are loaded dynamically, and port weights are allocated based on the preset port model to realize intelligent scheduling.

Benefits of technology

It improves the call performance and scalability of streaming media services in a distributed environment, optimizes resource allocation and load balancing, and enhances the reliability, stability and security of streaming media services.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119815084A_ABST
    Figure CN119815084A_ABST
Patent Text Reader

Abstract

The invention provides a video service multi-instance and multi-instance port scheduling method and system, and the method comprises the steps that an access service receives an access request sent by an intelligent device corresponding to a service instance, and the access request at least carries the device information and the access state of the intelligent device; the equipment information is respectively sent to a media management service and a scheduling service; the scheduling service loads the scheduling strategy in real time, sends the scheduling strategy to the real-time calculation service, and calculates the access point of the intelligent equipment based on the loaded scheduling strategy; the real-time calculation service monitors the access information of the intelligent equipment in real time, and allocates a port weight based on the access information according to a preset port model, and the preset port model is a port configuration strategy preset by a terminal user of the intelligent equipment based on a service scene requirement; the media management service dynamically loads streaming media service instances and ports based on port weights allocated by the real-time computing service. The streaming media multi-service and multi-port calling performance and expansibility in the distributed environment can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of video surveillance technology, and in particular to a method and system for multi-instance and multi-port scheduling of video services. Background Art

[0002] As we all know, streaming media services are widely used in smart cities, urban management, emergency command, government and enterprise supervision, smart parks, smart transportation, industrial Internet of Things and other fields. Multi-port management technology can meet the needs of these fields for high-quality, low-latency, and highly interactive audio and video services.

[0003] Traditional streaming media transmission methods require the server to handle a large number of point-to-point connections, which increases the server load and may cause performance bottlenecks. To this end, the existing technology provides a variety of streaming media service management solutions based on multi-ports. However, the existing streaming media service multi-port management mainly focuses on how to improve the efficiency, stability and accessibility of streaming media transmission.

[0004] In fact, streaming services have extremely high demands on bandwidth resources, especially when a large number of clients access the service at the same time, which will put tremendous pressure on the network bandwidth. In addition, different network interfaces such as WiFi and LTE often show significant differences in bandwidth jitter and latency.

[0005] Although existing technologies have proposed solutions to the point-to-point bottleneck problem, such solutions only improve the efficiency, stability, and accessibility of streaming media as a whole. However, problems such as significant differences in bandwidth jitter and latency among different network interfaces within multiple ports still exist, which undoubtedly increases the complexity and challenges of multipath transmission technology. Summary of the invention

[0006] The present application shows a video service multi-instance and multi-instance port scheduling method and system.

[0007] In a first aspect, the present application provides a method for scheduling multiple instances and multiple instance ports of a video service, the method comprising:

[0008] Applied to a streaming media management service system with a service instance management function, the streaming media management service system is used to provide access services, streaming media management services, scheduling services and real-time computing services; the streaming media service instance management function covers the life cycle of a service instance from creation to termination, and the method includes:

[0009] The access service receives an access request sent by the smart device corresponding to the service instance, the access request carrying at least device information and access status of the smart device, and sends the device information to the media management service and the scheduling service respectively;

[0010] The scheduling service loads the scheduling policy in real time and sends it to the real-time computing service, and calculates the access point of the smart device based on the loaded scheduling policy;

[0011] The real-time computing service monitors the access information of the smart device in real time, and allocates port weights based on the access information and in accordance with a preset port model, wherein the preset port model is a port configuration strategy preset by a terminal user of the smart device based on business scenario requirements;

[0012] The media management service dynamically loads the streaming media service instance and port based on the port weight assigned by the real-time computing service.

[0013] Preferably, the step of dynamically loading the streaming media service instance and port based on the port weight assigned by the real-time computing service by the media management service comprises:

[0014] The media management service dynamically loads streaming media service instances and ports based on a preset field model and in accordance with the assigned port weights; wherein,

[0015] The preset field model includes at least one of the following fields: instance ID, belonging IDC_ID, belonging machine ID, instance status, whether enabled, instance version, instance tag, instance load, instance weight, and audit field.

[0016] Preferably, after the media management service dynamically loads the streaming media service instance and the port, group management is performed based on the port mode, and the port mode includes: a port exclusive mode and a port sharing mode.

[0017] Preferably, the port includes at least one of an instance ID, a port range start value, a port range end value, a port category, a port purpose, an instance load, and an instance weight.

[0018] Preferably, the step of dynamically loading the streaming media service instance and port based on the port weight assigned by the real-time computing service by the media management service comprises:

[0019] Based on the port weights allocated by the real-time computing service, the media management service dynamically loads streaming media service instances and ports in a chain queue manner.

[0020] Preferably, the port policy is configured in the following manner, including:

[0021] Obtain the streaming media service instance information and port information to be loaded, and initialize the port information;

[0022] When the head and tail markers point to the same position, the queue from the head to the tail is determined to be an empty queue, and the queue size is the maximum port value provided by the protocol used after loading the packet.

[0023] Preferably, configuring the port policy in the following manner also includes:

[0024] When a port is added, the element is placed at the position pointed to by the tail marker, and the tail marker is moved down one position;

[0025] When a port is applied for, the port at the head of the queue is set to an empty position, and the head of the queue is moved down to the next port.

[0026] When the port is returned for use, the returned port is placed at the end of the queue, and the end marker moves down to the next position. When the current port queue is full, determine whether there is an empty position at the head: if there is no empty position, start the port queue expansion; if there is an empty position, the port queue forms a circular queue, and the end and head of the queue start the port queue expansion when the queue is full, and the end marker moves to the position where the queue size is plus one.

[0027] In the second aspect, the present application shows a video service multi-instance and multi-instance port scheduling system, which is applied to a streaming media management service system with a service instance management function, wherein the streaming media management service system is used to provide access services, streaming media management services, scheduling services, and real-time computing services; the streaming media service instance management function covers the life cycle of a service instance from creation to termination, and the system includes:

[0028] An access request receiving module, configured to receive an access request sent by a smart device corresponding to the service instance, the access request carrying at least device information and access status of the smart device, and send the device information to a media management service and a scheduling service respectively;

[0029] An access point calculation module, used for the scheduling service to load the scheduling policy in real time and send it to the real-time calculation service, and calculate the access point of the smart device based on the loaded scheduling policy;

[0030] A port configuration module, used for the real-time computing service to monitor the access information of the smart device in real time, and to allocate port weights based on the access information and in accordance with a preset port model, wherein the preset port model is a port configuration strategy preset by the terminal user of the smart device based on business scenario needs;

[0031] The scheduling module is used for the media management service to dynamically load the streaming media service instance and port based on the port weight allocated by the real-time computing service.

[0032] In a third aspect, the present application shows an electronic device, which includes: a processor; a memory for storing processor-executable instructions; wherein the processor is configured to execute the method described in any of the above aspects.

[0033] In a fourth aspect, the present application illustrates a non-temporary computer-readable storage medium, which, when instructions in the storage medium are executed by a processor of an electronic device, enables the electronic device to execute a method as described in any of the above aspects.

[0034] In a fifth aspect, the present application illustrates a computer program product. When instructions in the computer program product are executed by a processor of an electronic device, the electronic device is enabled to execute the method described in any of the above aspects.

[0035] The technical solution provided by this application may have the following beneficial effects:

[0036] The present application provides a video service multi-instance and multi-instance port scheduling method, which can effectively improve the calling performance and scalability of streaming media multi-services and multi-ports in a distributed environment. BRIEF DESCRIPTION OF THE DRAWINGS

[0037] Figure 1 It is a flowchart of the steps of a video service multi-instance and multi-instance port scheduling method of the present application;

[0038] Figure 2 It is a media instance and port model schematic diagram of a video service multi-instance and multi-instance port scheduling method of the present application;

[0039] Figure 3 It is a schematic diagram of real-time sorting of streaming media instance chain calculation of a video service multi-instance and multi-instance port scheduling method of the present application;

[0040] Figure 4 It is a schematic diagram of the relationship between streaming media instances and port models of a video service multi-instance and multi-instance port scheduling method of the present application;

[0041] Figure 5 It is a schematic diagram of a protocol port cyclic scheduling process under a streaming media instance of a video service multi-instance and a multi-instance port scheduling method of the present application;

[0042] Figure 6 It is a structural diagram of a video service multi-instance and multi-instance port scheduling method of the present application;

[0043] Figure 7 It is a structural diagram of a video service multi-instance and multi-instance port scheduling system of the present application;

[0044] Figure 8 is a block diagram of an electronic device of the present application;

[0045] Fig. 9 It is a block diagram of a computer-readable storage medium of the present application. DETAILED DESCRIPTION

[0046] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0047] Embodiment 1:

[0048] Reference Figure 1 , shows a flowchart of the steps of a video service multi-instance and multi-instance port scheduling method of the present application, which is applied to a streaming media management service system with a service instance management function, the streaming media management service system is used to provide access services, streaming media management services, scheduling services and real-time computing services; the streaming media service instance management function covers the life cycle of the service instance from creation to termination, and the method includes:

[0049] Step S1: The access service receives an access request sent by the smart device corresponding to the service instance, wherein the access request carries at least device information and access status of the smart device, and sends the device information to the media management service and the scheduling service respectively;

[0050] The streaming media service instance includes instance ID (IDENTITY DOCUMENT), belonging ID (IDENTITY DOCUMENT) C_ID (IDENTITY DOCUMENT), belonging machine ID, instance status, whether enabled, instance version, instance tag, instance load, instance weight, and audit field; the instance port includes instance ID, instance port range start value, instance port range end value, instance port category, instance port purpose, instance load, and instance weight; the scheduling strategy includes calculating streaming media service instances, streaming media service instance load, and instance port management method.

[0051] Step S2: the scheduling service loads the scheduling policy in real time and sends it to the real-time computing service, and calculates the access point of the smart device based on the loaded scheduling policy;

[0052] Step S3: the real-time computing service monitors the access information of the smart device in real time, and allocates port weights based on the access information and in accordance with a preset port model, where the preset port model is a port configuration strategy preset by the terminal user of the smart device based on business scenario needs;

[0053] The step of dynamically loading the streaming media service instance and port based on the port weight assigned by the real-time computing service by the media management service includes:

[0054] The media management service dynamically loads streaming media service instances and ports based on a preset field model and in accordance with the assigned port weights; wherein,

[0055] The port includes at least one of an instance ID, a port range start value, a port range end value, a port category, a port purpose, an instance load, and an instance weight.

[0056] Of course, the preset field model may also include at least one of the following fields: instance ID, belonging IDC_ID, belonging machine ID, instance status, whether enabled, instance version, instance tag, instance load, instance weight, and audit field.

[0057] The step of dynamically loading the streaming media service instance and port based on the port weight assigned by the real-time computing service by the media management service includes:

[0058] Based on the port weights allocated by the real-time computing service, the media management service dynamically loads streaming media service instances and ports in a chain queue manner.

[0059] Configure the port policy as follows, including:

[0060] Obtain the streaming media service instance information and port information to be loaded, and initialize the port information;

[0061] When the head and tail markers point to the same position, the queue from the head to the tail is determined to be an empty queue, and the queue size is the maximum port value provided by the protocol used after loading the packet.

[0062] The port policy is configured in the following manner, further comprising:

[0063] When a port is added, the element is placed at the position pointed to by the tail marker, and the tail marker is moved down one position;

[0064] When a port is applied for, the port at the head of the queue is set to an empty position, and the head of the queue is moved down to the next port.

[0065] When the port is returned for use, the returned port is placed at the end of the queue, and the end marker moves down to the next position. When the current port queue is full, determine whether there is an empty position at the head: if there is no empty position, start the port queue expansion; if there is an empty position, the port queue forms a circular queue, and the end and head of the queue start the port queue expansion when the queue is full, and the end marker moves to the position where the queue size is plus one.

[0066] Step S4: The media management service dynamically loads the streaming media service instance and port based on the port weight assigned by the real-time computing service.

[0067] Streaming media services have extremely high demands on bandwidth resources, especially when a large number of clients access the service at the same time, which will put tremendous pressure on network bandwidth. Different network interfaces (such as WiFi and LTE) have significant differences in bandwidth jitter, latency, etc., which increases the complexity and challenges of multi-path transmission technology. Streaming media multi-port management technology dynamically starts multiple ports through streaming media services and uses multi-port intelligent management algorithms, so that smart terminals can establish different network connections to achieve grouping and independent access.

[0068] Improve the reliability and stability of streaming media services. Streaming media services can provide services on multiple ports simultaneously, ensuring that even if a port fails or is congested, other ports can still work normally, providing users with continuous and stable streaming media services.

[0069] Enhance the scalability of streaming services. As the number of users grows and the demand increases, streaming services need to be able to quickly expand their service capabilities. Multi-port management enables streaming services to flexibly add new ports to meet more concurrent requests and higher bandwidth requirements.

[0070] By optimizing resource allocation and load balancing, streaming media services can allocate server resources more intelligently and distribute different requests to different ports for processing, thereby achieving load balancing. This can not only improve server utilization, but also reduce the load pressure of a single port, avoiding service interruption or performance degradation due to overload of a single port.

[0071] Improve the flexibility and convenience of user access. Users may be in different network environments or use different devices to access streaming media services. Multi-port management enables streaming media services to support more network protocols and device types, thereby providing more flexible and convenient access methods. For example, some ports may support HTTP protocol, while other ports may support RTSP or RTMP protocol to meet the needs of different users.

[0072] Enhance the security and privacy protection of streaming media services. Through multi-port management, streaming media services can implement more stringent security policies and access control mechanisms. For example, different ports can be configured with different security levels and access rights to ensure that only authenticated and authorized users can access specific streaming media content. This not only protects the copyright and privacy of streaming media content, but also prevents unauthorized access and malicious attacks.

[0073] Supporting more application scenarios and business needs, streaming media services have been widely used in video on demand, live broadcast services, distance education, security monitoring and other fields. Multi-port management enables streaming media services to support more application scenarios and business needs, such as supporting high-definition video transmission, multi-screen interaction, intelligent recommendation and other functions, thereby providing users with a richer and more personalized experience.

[0074] In summary, the multi-port management method for streaming media services can improve the reliability, stability, scalability, resource allocation efficiency, user access flexibility and security of streaming media services, and support more application scenarios and business needs.

[0075] Embodiment 2:

[0076] like Figure 6 As shown, the present application provides a video service multi-instance and multi-instance port scheduling method, which implements the scheduling and task distribution of smart terminal access requests through streaming media instance management, instance port management and scheduling, and realizes intelligent scheduling of video service multi-instance and multi-instance ports: applied to a streaming media management service system with a service instance management function, the streaming media management service system is used to provide access services, streaming media management services, scheduling services and real-time computing services; the streaming media service instance management function covers the life cycle of the service instance from creation to termination, and the specific method includes:

[0077] Step S1: The access service receives an access request sent by the smart device corresponding to the service instance, wherein the access request carries at least device information and access status of the smart device, and sends the device information to the media management service and the scheduling service respectively;

[0078] Step S2: the scheduling service loads the scheduling policy in real time and sends it to the real-time computing service, and calculates the access point of the smart device based on the loaded scheduling policy;

[0079] Among them, the core fields of the streaming media instance include instance ID (IDENTITY DOCUMENT, ID card identification number), belonging ID, C_ID (IDENTITY DOCUMENT, ID card identification number), belonging machine ID, instance status, whether enabled, instance version, instance tag, instance load, instance weight, audit field and other fields; the core fields of the streaming media instance multi-instance port include instance ID, instance port range start value, instance port range end value, instance port category, instance port purpose, instance load, instance weight and other fields, such as Figure 2 shown.

[0080] Step S3: the real-time computing service monitors the access information of the smart device in real time, and allocates port weights based on the access information and in accordance with a preset port model, where the preset port model is a port configuration strategy preset by the terminal user of the smart device based on business scenario needs;

[0081] Streaming media instance scheduling process: The media service management dynamically loads media service instances and instance ports, and the real-time computing service calculates the number of accesses, load and other dimensional data of each service instance in real time. Considering the scaling of resource pools and nodes, the dynamic scaling of streaming media instances uses a chain queue, because the advantage of the chain is that it is very convenient to add and delete new streaming media instance nodes. However, the chain needs to dynamically allocate memory when adding nodes, which is a relatively resource-consuming and time-consuming process. If the number of instances is fixed and you want to have higher performance, you can use a queue with a sequential representation method. The streaming media instance screening process is as follows: In the initial state, an initial weight is set for each streaming media instance. The real-time computing service obtains the statistical data of various dimensions of each instance, labels the instance, and the scheduling module performs chain sorting according to the specified strategy. The sorting is not reflected in the weight value sorting, but in a chain manner. Each element stores the address of its previous and next elements. Each time the sorting is changed, you only need to change the pointing of the corresponding streaming media instance node. Advantages: Few changes, no consideration of performance issues caused by too many changes, see for details Figure 3 .

[0082] The algorithm above implements the specified policy streaming instance screening, and further screening and management of the streaming instance port is required. The streaming instance provides different instance port ranges for exclusive / shared use according to the protocol, and the instance ports need to be grouped and managed. See the model relationship for details. Figure 4 .

[0083] After grouping, screening is performed according to the strategy. The specific process is as follows Figure 5After the service starts loading the streaming media instance information and instance port information, the instance port information is initialized. When the array is empty, the head of the team is represented by begin and the tail of the team is represented by next. The head of the team and the tail of the team point to the same position (where the array is 0), that is, when the head of the team == the tail of the team, the queue is empty. The size is the maximum total number of instance ports provided by the protocol after the loaded grouping. When an instance port is added, it is placed in the position of the tail of the team, and the tail of the team moves down; when the instance port is applied for, the current position of the head of the team is empty, and the head of the team moves down to the next instance port. When the instance port is returned for use, it is placed at the next position at the end of the queue. The next position at the end of the queue moves down to the next position. If it cannot move, it means that the current instance port queue is full. In this case, it is determined whether there is any empty position at the head. If not, it is necessary to start the instance port queue expansion. If there is any empty position at the front, the instance port queue forms a circular queue. When the next+1 at the end of the queue = the begin at the head of the queue, it means that the queue is full. It is necessary to start the instance port queue expansion and move the next position at the end of the queue to the position of size+1.

[0084] The chain queuing method includes: after obtaining the loaded streaming media service instance information and instance port information, initializing the instance port information, when the array is empty, the head of the queue is marked with the head begin and the tail of the queue is marked with the tail next; when the head begin and the tail next point to the same position, that is, the head begin == the tail next, the queue is empty, and the size size is the maximum total number of instance ports provided by the protocol after the grouping is loaded; when an instance port is added, the element is placed in the position pointed to by the tail next, and the tail next moves down one position; when the instance port is applied for, the head b The current position of egin is set to empty, and the begin position of the queue is moved down to the next instance port; when the instance port is returned for use, it is placed at the next position of the queue, and the next position of the queue is moved down to the next position. If it cannot move, it means that the current instance port queue is full, then it is determined whether there is any empty position at the head. If not, it is necessary to start the instance port queue expansion; if there is any empty position at the front, the instance port queue forms a circular queue. When the next+1 of the queue tail = the begin of the queue head, it means that the queue is full, and it is necessary to start the instance port queue expansion, and the next position of the queue tail is moved to the position of size+1.

[0085] Step S4: The media management service dynamically loads the streaming media service instance and port based on the port weight assigned by the real-time computing service.

[0086] It should be noted that, for the sake of simplicity, the method embodiments are described as a series of action combinations, but those skilled in the art should be aware that the present application is not limited by the order of the actions described, because according to the present application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all optional embodiments, and the actions involved are not necessarily required by the present application.

[0087] The present invention provides a method for managing multiple instances and multiple instance ports of streaming media, which can effectively improve the calling performance and scalability of multiple services and multiple instance ports of streaming media in a distributed environment. Although the present invention has been described in detail above with general descriptions and specific embodiments, it is obvious to those skilled in the art that some parameters can be modified or improved on the basis of the present invention. Therefore, these modifications or improvements made on the basis of the idea of ​​the present invention all belong to the scope of protection claimed by the present invention.

[0088] Embodiment 3:

[0089] Reference Figure 7 , shows a structural block diagram of a video service multi-instance and multi-instance port scheduling system of the present application, the system comprising:

[0090] The system of this application can manage streaming media service instances and instance ports. The service instance management function covers the full life cycle management of service instances from creation to termination, including configuration management, monitoring and alarm, expansion and contraction, update and maintenance, security management, etc. Through reasonable configuration and management, the stable operation and efficient management of service instances can be ensured, and the availability and maintainability of the system can be improved; the service instance multi-instance port management function is designed to achieve efficient, secure and flexible management of multiple instance ports on the service instance. It allows users to configure, monitor, expand and protect multiple instance ports on the service instance to meet the needs of different business scenarios.

[0091] Applied to a streaming media management service system with a service instance management function, the streaming media management service system is used to provide access services, streaming media management services, scheduling services and real-time computing services; the streaming media service instance management function covers the life cycle of a service instance from creation to termination, and the system includes:

[0092] An access request receiving module, configured to receive an access request sent by a smart device corresponding to the service instance, the access request carrying at least device information and access status of the smart device, and send the device information to a media management service and a scheduling service respectively;

[0093] An access point calculation module, used for the scheduling service to load the scheduling policy in real time and send it to the real-time calculation service, and calculate the access point of the smart device based on the loaded scheduling policy;

[0094] A port configuration module, used for the real-time computing service to monitor the access information of the smart device in real time, and to allocate port weights based on the access information and in accordance with a preset port model, wherein the preset port model is a port configuration strategy preset by the terminal user of the smart device based on business scenario needs;

[0095] The media management service dynamically loads streaming media service instances and ports based on a preset field model and in accordance with the assigned port weights; wherein,

[0096] The preset field model includes at least one of the following fields: instance ID, belonging IDC_ID, belonging machine ID, instance status, whether enabled, instance version, instance tag, instance load, instance weight, and audit field.

[0097] After the media management service dynamically loads the streaming media service instance and the port, group management is performed based on the port mode, and the port mode includes: a port exclusive mode and a port sharing mode.

[0098] The port includes at least one of an instance ID, a port range start value, a port range end value, a port category, a port purpose, an instance load, and an instance weight.

[0099] Based on the port weights allocated by the real-time computing service, the media management service dynamically loads streaming media service instances and ports in a chain queue manner.

[0100] Configure the port policy as follows, including:

[0101] Obtain the streaming media service instance information and port information to be loaded, and initialize the port information;

[0102] When the head and tail markers point to the same position, the queue from the head to the tail is determined to be an empty queue, and the queue size is the maximum port value provided by the protocol used after loading the packet.

[0103] The port policy is configured in the following manner, further comprising:

[0104] When a port is added, the element is placed at the position pointed to by the tail marker, and the tail marker is moved down one position;

[0105] When a port is applied for, the port at the head of the queue is set to an empty position, and the head of the queue is moved down to the next port.

[0106] When the port is returned for use, the returned port is placed at the end of the queue, and the end marker moves down to the next position. When the current port queue is full, determine whether there is an empty position at the head: if there is no empty position, start the port queue expansion; if there is an empty position, the port queue forms a circular queue, and the end and head of the queue start the port queue expansion when the queue is full, and the end marker moves to the position where the queue size is plus one.

[0107] The scheduling module is used for the media management service to dynamically load the streaming media service instance and port based on the port weight allocated by the real-time computing service.

[0108] As for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0109] Optionally, an embodiment of the present application further provides an electronic device, comprising: a processor, a memory, and a computer program stored in the memory and executable on the processor. When the computer program is executed by the processor, the various processes of the above-mentioned method embodiment are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be described here.

[0110] Figure 8 800 is a block diagram of an electronic device 800 shown in the present application. For example, the electronic device 800 may be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, a fitness device, a personal digital assistant, etc.

[0111] Reference Figure 8 , the electronic device 800 may include one or more of the following components: a processing component 802 , a memory 804 , a power component 806 , a multimedia component 808 , an audio component 810 , an input / output (I / O) interface 812 , a sensor component 814 , and a communication component 816 .

[0112] The processing component 802 generally controls the overall operation of the electronic device 800, such as operations associated with display, phone calls, data communications, camera operations, and recording operations. The processing component 802 may include one or more processors 820 to execute instructions to complete all or part of the steps of the above method. In addition, the processing component 802 may include one or more modules to facilitate the interaction between the processing component 802 and other components. For example, the processing component 802 may include a multimedia module to facilitate the interaction between the multimedia component 808 and the processing component 802.

[0113] The memory 804 is configured to store various types of data to support operations on the device 800. Examples of such data include instructions for any application or method operating on the electronic device 800, contact data, phone book data, messages, images, videos, etc. The memory 804 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.

[0114] The power supply component 806 provides power to the various components of the electronic device 800. The power supply component 806 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to the electronic device 800.

[0115] The multimedia component 808 includes a screen that provides an output interface between the electronic device 800 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundaries of the touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 808 includes a front camera and / or a rear camera. When the device 800 is in an operating mode, such as a shooting mode or a video mode, the front camera and / or the rear camera may receive external multimedia data. Each front camera and the rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.

[0116] The audio component 810 is configured to output and / or input audio signals. For example, the audio component 810 includes a microphone (MIC), and when the electronic device 800 is in an operating mode, such as a call mode, a recording mode, and a voice recognition mode, the microphone is configured to receive an external audio signal. The received audio signal can be further stored in the memory 804 or sent via the communication component 816. In some embodiments, the audio component 810 also includes a speaker for outputting audio signals.

[0117] I / O interface 812 provides an interface between processing component 802 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include but are not limited to: home button, volume button, start button, and lock button.

[0118] The sensor assembly 814 includes one or more sensors for providing various aspects of status assessment for the electronic device 800. For example, the sensor assembly 814 can detect the open / closed state of the device 800, the relative positioning of components, such as the display and keypad of the electronic device 800, and the sensor assembly 814 can also detect the position change of the electronic device 800 or a component of the electronic device 800, the presence or absence of contact between the user and the electronic device 800, the orientation or acceleration / deceleration of the electronic device 800, and the temperature change of the electronic device 800. The sensor assembly 814 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. The sensor assembly 814 may also include an optical sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 814 may also include an accelerometer, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.

[0119] The communication component 816 is configured to facilitate wired or wireless communication between the electronic device 800 and other devices. The electronic device 800 can access a wireless network based on a communication standard, such as WiFi, a carrier network (such as 2G, 3G, 4G or 5G), or a combination thereof. In an exemplary embodiment, the communication component 816 receives a broadcast signal or broadcast operation information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 816 also includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology and other technologies.

[0120] In an exemplary embodiment, the electronic device 800 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the above methods.

[0121] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 804 including instructions, and the instructions can be executed by a processor 820 of an electronic device 800 to perform the above method. For example, the non-transitory computer-readable storage medium can be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, etc.

[0122] Embodiment 4:

[0123] The embodiment of the present application also provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, each process of the above method embodiment is implemented, and the same technical effect can be achieved. To avoid repetition, it is not repeated here. The computer-readable storage medium is, for example, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0124] Fig. 9 19 is a block diagram of a computer-readable storage medium 1900 shown in the present application. For example, the computer-readable storage medium 1900 may be provided as a server.

[0125] Reference Fig. 9 , the computer-readable storage medium 1900 includes a processing component 1922, which further includes one or more processors, and a memory resource represented by a memory 1932 for storing instructions, such as an application, that can be executed by the processing component 1922. The application stored in the memory 1932 may include one or more modules, each corresponding to a set of instructions. In addition, the processing component 1922 is configured to execute instructions to perform the above method.

[0126] The computer readable storage medium 1900 may also include a power supply component 1926 configured to perform power management of the computer readable storage medium 1900, a wired or wireless network interface 1950 configured to connect the computer readable storage medium 1900 to a network, and an input / output (I / O) interface 1958. The computer readable storage medium 1900 may operate based on an operating system stored in the memory 1932, such as Windows Server™, Mac OS X™, Unix™, Linux™, FreeBSD™ or the like.

[0127] It should be noted that, in this article, the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the sentence "comprises a ..." does not exclude the existence of other identical elements in the process, method, article or device including the element.

[0128] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, a magnetic disk, or an optical disk), and includes a number of instructions for a terminal (which can be a mobile phone, a computer, a server, an air conditioner, or a network device, etc.) to execute the methods described in each embodiment of the present application.

[0129] The embodiments of the present application are described above in conjunction with the accompanying drawings, but the present application is not limited to the above-mentioned specific implementation methods. The above-mentioned specific implementation methods are merely illustrative and not restrictive. Under the guidance of the present application, ordinary technicians in this field can also make many forms without departing from the purpose of the present application and the scope of protection of the claims, all of which are within the protection of the present application.

[0130] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed in the present application can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0131] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0132] In the embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0133] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0134] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0135] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as USB flash drives, mobile hard drives, ROM, RAM, magnetic disks, or optical disks.

[0136] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

Claims

1. A video service multi-instance multi-port scheduling method, characterized in that: Applied to a streaming media management service system with a service instance management function, the streaming media management service system is used to provide access services, streaming media management services, scheduling services and real-time computing services; The streaming media service instance management function covers the life cycle of the service instance from creation to termination, and the method includes: The access service receives an access request sent by the smart device corresponding to the service instance, the access request carrying at least device information and access status of the smart device, and sends the device information to the media management service and the scheduling service respectively; The scheduling service loads the scheduling policy in real time and sends it to the real-time computing service, and calculates the access point of the smart device based on the loaded scheduling policy; The real-time computing service monitors the access information of the smart device in real time, and allocates port weights based on the access information and in accordance with a preset port model, wherein the preset port model is a port configuration strategy preset by a terminal user of the smart device based on business scenario requirements; The media management service dynamically loads the streaming media service instance and port based on the port weight assigned by the real-time computing service.

2. The video service multi-instance multi-port scheduling method according to claim 1, characterized in that: The step of dynamically loading the streaming media service instance and port based on the port weight assigned by the real-time computing service by the media management service includes: The media management service dynamically loads streaming media service instances and ports based on a preset field model and in accordance with the assigned port weights; wherein, The preset field model includes at least one of the following fields: instance ID, belonging IDC_ID, belonging machine ID, instance status, whether enabled, instance version, instance tag, instance load, instance weight, and audit field.

3. The video service multi-instance multi-terminal scheduling method according to claim 1, characterized in that: Also includes: After the media management service dynamically loads the streaming media service instance and the port, group management is performed based on the port mode, and the port mode includes: a port exclusive mode and a port sharing mode.

4. The video service multi-instance multi-port scheduling method according to claim 1, characterized in that: The port includes at least one of an instance ID, a port range start value, a port range end value, a port category, a port purpose, an instance load, and an instance weight.

5. The video service multi-instance multi-port scheduling method according to claim 1, characterized in that: The step of dynamically loading the streaming media service instance and port based on the port weight assigned by the real-time computing service by the media management service includes: Based on the port weights allocated by the real-time computing service, the media management service dynamically loads streaming media service instances and ports in a chain queue manner.

6. The video service multi-instance multi-port scheduling method according to claim 5, characterized in that: Configure the port policy as follows, including: Obtain the streaming media service instance information and port information to be loaded, and initialize the port information; When the head and tail markers point to the same position, the queue from the head to the tail is determined to be an empty queue, and the queue size is the maximum port value provided by the protocol used after loading the packet.

7. The video service multi-instance multi-port scheduling method according to claim 6, characterized in that: The port policy is configured in the following manner, further comprising: When a port is added, the element is placed at the position pointed to by the tail marker, and the tail marker is moved down one position; When a port is applied for, the port at the head of the queue is set to an empty position, and the head of the queue is moved down to the next port. When the port is returned for use, the returned port is placed at the end of the queue, and the end marker moves down to the next position. When the current port queue is full, determine whether there is an empty position at the head: if there is no empty position, start the port queue expansion; if there is an empty position, the port queue forms a circular queue, and the end and head of the queue start the port queue expansion when the queue is full, and the end marker moves to the position where the queue size is plus one.

8. A video service multi-instance multi-port scheduling system, characterized in that: Applied to a streaming media management service system with a service instance management function, the streaming media management service system is used to provide access services, streaming media management services, scheduling services and real-time computing services; The streaming media service instance management function covers the life cycle of the service instance from creation to termination, and the system includes: An access request receiving module, configured to receive an access request sent by a smart device corresponding to the service instance, the access request carrying at least device information and access status of the smart device, and send the device information to a media management service and a scheduling service respectively; An access point calculation module, used for the scheduling service to load the scheduling policy in real time and send it to the real-time calculation service, and calculate the access point of the smart device based on the loaded scheduling policy; A port configuration module, used for the real-time computing service to monitor the access information of the smart device in real time, and to allocate port weights based on the access information and in accordance with a preset port model, wherein the preset port model is a port configuration strategy preset by the terminal user of the smart device based on business scenario needs; The scheduling module is used for the media management service to dynamically load the streaming media service instance and port based on the port weight allocated by the real-time computing service.

9. An electronic device, characterized in that: include: A processor, a memory, and a computer program stored in the memory and executable on the processor, wherein the computer program implements the method according to any one of claims 1 to 7 when executed by the processor.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Service-aware distributed video cluster high-efficiency scaling method and service-aware distributed video cluster high-efficiency scaling system

    CN112543354A

  • Dynamic port allocation method and system based on Kubernetes

    CN116048713A

  • Media stream transmission method, media server and communication system

    CN116233481A

  • Method and apparatus of virtual class of service and logical queue representation through network traffic distribution over multiple port interfaces

    US7936770B1