WO2021073248A1 - 消息发送方法、装置、可读介质及电子设备 - Google Patents
消息发送方法、装置、可读介质及电子设备 Download PDFInfo
- Publication number
- WO2021073248A1 WO2021073248A1 PCT/CN2020/110041 CN2020110041W WO2021073248A1 WO 2021073248 A1 WO2021073248 A1 WO 2021073248A1 CN 2020110041 W CN2020110041 W CN 2020110041W WO 2021073248 A1 WO2021073248 A1 WO 2021073248A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- message
- messages
- message type
- current
- target client
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/226—Delivery according to priorities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23106—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management 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/262—Content 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/26208—Content 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1813—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8547—Content authoring involving timestamps for synchronizing content
Definitions
- the present disclosure relates to the field of communication technologies, and in particular, to a method, device, readable medium, and electronic equipment for sending messages.
- the present disclosure provides a message sending method, the method includes:
- the current message is cached in the target cache queue corresponding to the current message, wherein each message in the target cache queue has an associated Timestamp
- the current message is sent to the target Client, wherein the target client is the recipient of the current message.
- a message sending device which includes:
- the determining module is configured to determine the message type of the current message received within the current time window, and the message type is divided into a first message type and a second message type;
- the cache module is configured to, if the determined message type is the first message type, cache the current message in a target cache queue corresponding to the current message, wherein Each message has an associated time stamp;
- the sending module is configured to send the current message if the determined message type is the second message type, and the total number of messages sent to the target client within the current time window does not reach a first preset threshold. Sent to the target client, where the target client is the recipient of the current message.
- the present disclosure provides a computer-readable medium on which a computer program is stored, and when the program is executed by a processor, the steps of any one of the methods in the first aspect are implemented.
- an electronic device including:
- a storage device on which a computer program is stored
- the processing device is configured to execute the computer program in the storage device to implement the steps of any one of the methods in the first aspect.
- the message type of the current message received is first determined. If the current message is the first message type, it is cached in the corresponding target cache queue; if the current message is the second message type, the total number of messages sent in the current time window does not reach the first preset threshold To send the current message to the target client. In this way, by controlling the number of messages sent to the target client, network congestion can be effectively avoided and network resources can be saved. In addition, different message processing methods are adopted for different message types, which can make the processing of different types of messages more targeted.
- Fig. 1 is a flow chart showing a method for sending a message according to an exemplary embodiment.
- Fig. 2 is a flow chart showing a method for sending a message according to another exemplary embodiment.
- Fig. 3 is a block diagram showing a message sending device according to an exemplary embodiment.
- Fig. 4 is a schematic diagram showing the structure of an electronic device according to an exemplary embodiment.
- chat messages in a live broadcast room have relatively low real-time requirements.
- the leaderboard news in the live broadcast room has relatively high requirements for real-time performance.
- the server sends a message to the user client, it needs to send the latest message, so as to ensure that the user can get the latest information through the leaderboard message. The ranking situation.
- Fig. 1 is a flow chart showing a method for sending a message according to an exemplary embodiment. This method can be applied to servers, such as cloud servers, message management servers, live broadcast platforms, and so on. As shown in Figure 1, the message sending method may include:
- the preset duration corresponding to a time window can be preset, for example, the preset duration can be set to 1s.
- the server after the server receives the current message, it can determine the message type of the current message.
- the message type can be divided into a first message type and a second message type.
- messages belonging to the first message type have relatively high requirements for real-time performance
- messages belonging to the second message type have relatively low requirements for real-time performance.
- the message sending method may be applied to a live broadcast platform, for example.
- messages belonging to the first message type may include at least one of the following: leaderboard messages, like messages, emoticons, etc.
- messages belonging to the second message type may include at least one of the following: chat messages , Barrage messages, gift-giving messages, etc.
- the target cache queue is a cache queue corresponding to the current message, for example, a Redis (Remote Dictionary Server, remote data service) cache queue may be used for storage.
- the messages belonging to the first message type are all set with their corresponding buffer queues. For example, if the current message is a like message, the message can be cached in the buffer queue corresponding to the like message. If the current message is a leaderboard message, the message can be cached in the cache queue corresponding to the leaderboard message. If the current message is an emoticon message, the message can be cached in the cache queue corresponding to the emoticon message.
- each message cached in the target cache queue has an associated time stamp.
- the timestamp can identify the time when each message is received by the server. For example, the timestamp can be used to identify that in the current 1s, a message was received in the 100th ms, or a message was received in the 500th ms.
- the time stamp can also be used to characterize the order in which each message in the cache queue is received. By buffering the messages received in the current time window into the target buffer queue, the latest message received in the current time window can be further found.
- the target client may be the recipient of the current message, for example, the client of a user watching the live broadcast, and the client may be, for example, a smart phone, a notebook computer, a desktop computer, or the like. Since the target client's ability to receive messages is limited, and some messages are of low importance, they do not need to be sent to the target client. If too many messages are sent to the target client, not only will it cause a waste of resources, but it will also be prone to network congestion. Therefore, it is necessary to control the total number of messages sent by the server to the target client within a time window. Specifically, the first preset threshold may represent the upper limit of the number of messages that can be sent to the target client in the current time window.
- the first preset threshold can be set as required. For example, it can be set according to the priority of messages belonging to the second message type. Wherein, the first preset threshold corresponding to the high-priority message is higher than the first preset threshold corresponding to the low-priority message.
- the first preset threshold corresponding to the barrage message is higher than the first preset threshold corresponding to the chat message.
- the upper limit of the number of barrage messages that can be sent to the target client is set to 200
- the upper limit of the number of chat messages that can be sent is set to 150
- the upper limit of the number of gift messages that can be sent The value is set to 100.
- the upper limit values of chat messages, barrage messages, and gift messages may also be set to 450, and their respective upper limit values are not limited.
- the message type of the current message received is first determined. If the current message is the first message type, it is cached in the corresponding target cache queue; if the current message is the second message type, the total number of messages sent in the current time window does not reach the first preset threshold To send the current message to the target client. In this way, by controlling the number of messages sent to the target client, network congestion can be effectively avoided and network resources can be saved. In addition, different message processing methods are adopted for different message types, which can make the processing of different types of messages more targeted.
- Fig. 2 is a flow chart showing a method for sending a message according to another exemplary embodiment. As shown in Figure 2, optionally, if the determined message type is the first message type, the method may further include:
- the length of the time window is 1s.
- the messages received within 1s stored in the target cache queue can be sorted according to the timestamp from late to early, and the top N messages are The N messages closest to the current time.
- the server can send the N messages to the target client.
- N is a positive integer
- the maximum value of N is the second preset threshold.
- the second preset threshold may be set according to actual needs. For example, for leaderboard messages, the second preset threshold may be set to 100. For emoticons, the second preset threshold can be set to 120. For like messages, the second preset threshold may be set to 150.
- the message sent to the target client is the message closest to the current time, ensuring that the message received by the target client is the latest message.
- the maximum value of N can be the second preset threshold, which can effectively control the number of messages sent to the target client, thereby effectively avoiding network congestion.
- the method may further include:
- the target cache queue needs to receive messages in the next time window. Therefore, after N messages are sent to the target client, the N messages need to be removed from the target cache queue to facilitate
- the target buffer queue can receive the message of the next time window in time, thereby ensuring the normal processing and sending of the message of the next time window.
- the N messages can be removed by setting a timed automatic clearing method, for example, the messages in the cache queue are cleared once every time window (eg, 1s).
- S14 may include:
- the N messages with the timestamp closest to the current time are sent to the target client.
- the messages in the target cache queue can be synchronized to the memory, and the memory can be, for example, the system memory of the message management server.
- the message can be synchronized from the cache queue to the system memory through the intermediate service layer, which is located between the cache and the system memory, and can play the role of message synchronization and forwarding. Since the storage space of the system memory is large, and the capacity expansion operation can be performed as required, it can satisfy the message processing operation when the amount of data is large.
- the N messages with the time stamp closest to the current time are sent to the target client.
- the messages received in the current time window can be sorted according to the timestamp, and then the N messages closest to the current time can be determined, and N is a positive integer, and the maximum value of N is the second preset threshold. .
- the method may further include:
- the current message may be discarded.
- the receiving capacity of the target client and the transmission capacity of the network are both limited. If too many messages are sent, it is easy to cause network congestion and network delay. Therefore, if the total number of messages sent to the target client within the current time window has reached the first preset threshold, the server may discard the current message without storing or processing the current message.
- the storage resources of the server can be saved, and the number of messages sent to the target client can be effectively controlled, thereby saving network resources and avoiding network congestion.
- Fig. 3 is a block diagram showing a message sending device according to an exemplary embodiment.
- the apparatus 300 may include:
- the determining module 301 is configured to determine the message type of the current message received within the current time window, and the message type is divided into a first message type and a second message type;
- the buffer module 302 is configured to, if the determined message type is the first message type, buffer the current message in a target buffer queue corresponding to the current message, wherein the target buffer queue is Each message of has an associated timestamp;
- the sending module 303 is configured to: if the determined message type is the second message type, and the total number of messages sent to the target client within the current time window does not reach a first preset threshold, then the current The message is sent to the target client, where the target client is the recipient of the current message.
- the message type of the current message received is first determined. If the current message is the first message type, it is cached in the corresponding target cache queue; if the current message is the second message type, the total number of messages sent in the current time window does not reach the first preset threshold To send the current message to the target client. In this way, by controlling the number of messages sent to the target client, network congestion can be effectively avoided and network resources can be saved. In addition, different message processing methods are adopted for different message types, which can make the processing of different types of messages more targeted.
- the sending module 303 is further configured to, if the determined message type is the first message type, at the end of the current time window, set the time stamp in the target cache queue to the current time
- the most recent N messages are sent to the target client, where N is a positive integer, and the maximum value of N is the second preset threshold.
- the device 300 may further include:
- the removing module is configured to remove the N messages from the target cache queue after the N messages are sent to the target client.
- the sending module 303 may include:
- Synchronization sub-module used to synchronize the messages in the target buffer queue to the memory
- the sending submodule is configured to send the N messages with the time stamp closest to the current time in the memory to the target client.
- the device 300 may further include:
- a discarding module configured to discard if the determined message type is the second message type, and the total number of messages sent to the target client within the current time window has reached the first preset threshold The current message.
- FIG. 4 shows a schematic structural diagram of an electronic device 400 suitable for implementing embodiments of the present disclosure.
- the electronic device shown in FIG. 4 is only an example, and should not bring any limitation to the function and scope of use of the embodiments of the present disclosure.
- the electronic device 400 may include a processing device (such as a central processing unit, a graphics processor, etc.) 401, which may be loaded into a random access device according to a program stored in a read-only memory (ROM) 402 or from a storage device 408.
- the program in the memory (RAM) 403 executes various appropriate actions and processing.
- various programs and data required for the operation of the electronic device 400 are also stored.
- the processing device 401, the ROM 402, and the RAM 403 are connected to each other through a bus 404.
- An input/output (I/O) interface 405 is also connected to the bus 404.
- the following devices can be connected to the I/O interface 405: including input devices 406 such as touch screens, touch pads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; including, for example, liquid crystal displays (LCD), speakers, vibration An output device 407 such as a device; a storage device 408 such as a magnetic tape, a hard disk, etc.; and a communication device 409.
- the communication device 409 may allow the electronic device 400 to perform wireless or wired communication with other devices to exchange data.
- FIG. 4 shows an electronic device 400 having various devices, it should be understood that it is not required to implement or have all of the illustrated devices. It may alternatively be implemented or provided with more or fewer devices.
- the process described above with reference to the flowchart can be implemented as a computer software program.
- the embodiments of the present disclosure include a computer program product, which includes a computer program carried on a non-transitory computer readable medium, and the computer program includes program code for executing the method shown in the flowchart.
- the computer program may be downloaded and installed from the network through the communication device 409, or installed from the storage device 408, or installed from the ROM 402.
- the processing device 401 the above-mentioned functions defined in the method of the embodiment of the present disclosure are executed.
- the aforementioned computer-readable medium in the present disclosure may be a computer-readable signal medium or a computer-readable storage medium, or any combination of the two.
- the computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or device, or a combination of any of the above. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections with one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable Programmable read only memory (EPROM or flash memory), optical fiber, portable compact disk read only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the above.
- a computer-readable storage medium may be any tangible medium that contains or stores a program, and the program may be used by or in combination with an instruction execution system, apparatus, or device.
- a computer-readable signal medium may include a data signal propagated in a baseband or as a part of a carrier wave, and a computer-readable program code is carried therein. This propagated data signal can take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the foregoing.
- the computer-readable signal medium may also be any computer-readable medium other than the computer-readable storage medium.
- the computer-readable signal medium may send, propagate, or transmit the program for use by or in combination with the instruction execution system, apparatus, or device .
- the program code contained on the computer-readable medium can be transmitted by any suitable medium, including but not limited to: wire, optical cable, RF (Radio Frequency), etc., or any suitable combination of the above.
- the server can communicate with any currently known or future-developed network protocol such as HTTP (HyperText Transfer Protocol), and can communicate with any form or medium of digital data (for example, , Communication network) interconnection.
- HTTP HyperText Transfer Protocol
- Examples of communication networks include local area networks ("LAN”), wide area networks (“WAN”), the Internet (for example, the Internet), and end-to-end networks (for example, ad hoc end-to-end networks), as well as any currently known or future research and development network of.
- the above-mentioned computer-readable medium may be included in the above-mentioned electronic device; or it may exist alone without being assembled into the electronic device.
- the aforementioned computer-readable medium carries one or more programs, and when the aforementioned one or more programs are executed by the electronic device, the electronic device:
- the current message is cached in the target cache queue corresponding to the current message, wherein each message in the target cache queue has an associated Timestamp
- the current message is sent to the target Client, wherein the target client is the recipient of the current message.
- the computer program code used to perform the operations of the present disclosure can be written in one or more programming languages or a combination thereof.
- the above-mentioned programming languages include but are not limited to object-oriented programming languages such as Java, Smalltalk, C++, and Including conventional procedural programming languages-such as "C" language or similar programming languages.
- the program code can be executed entirely on the user's computer, partly on the user's computer, executed as an independent software package, partly on the user's computer and partly executed on a remote computer, or entirely executed on the remote computer or server.
- the remote computer can be connected to the user’s computer through any kind of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer (for example, using an Internet service provider to Connect via the Internet).
- LAN local area network
- WAN wide area network
- each block in the flowchart or block diagram may represent a module, program segment, or part of code, and the module, program segment, or part of code contains one or more for realizing the specified logical function Executable instructions.
- the functions marked in the block may also occur in a different order from the order marked in the drawings. For example, two blocks shown in succession can actually be executed substantially in parallel, and they can sometimes be executed in the reverse order, depending on the functions involved.
- each block in the block diagram and/or flowchart, and the combination of the blocks in the block diagram and/or flowchart can be implemented by a dedicated hardware-based system that performs the specified functions or operations Or it can be realized by a combination of dedicated hardware and computer instructions.
- the modules involved in the embodiments described in the present disclosure can be implemented in software or hardware. Among them, the name of the module does not constitute a limitation on the module itself under certain circumstances. For example, the determining module can also be described as a "determining unit" and so on.
- exemplary types of hardware logic components include: Field Programmable Gate Array (FPGA), Application Specific Integrated Circuit (ASIC), Application Specific Standard Product (ASSP), System on Chip (SOC), Complex Programmable Logical device (CPLD) and so on.
- FPGA Field Programmable Gate Array
- ASIC Application Specific Integrated Circuit
- ASSP Application Specific Standard Product
- SOC System on Chip
- CPLD Complex Programmable Logical device
- a machine-readable medium may be a tangible medium, which may contain or store a program for use by the instruction execution system, apparatus, or device or in combination with the instruction execution system, apparatus, or device.
- the machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium.
- the machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or device, or any suitable combination of the foregoing.
- machine-readable storage media would include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the above.
- RAM random access memory
- ROM read-only memory
- EPROM or flash memory erasable programmable read-only memory
- CD-ROM compact disk read-only memory
- magnetic storage device or any suitable combination of the above.
- Example 1 provides a message sending method, the method includes: determining a message type of a current message received within a current time window, the message type being divided into a first message Type and a second message type; if the determined message type is the first message type, the current message is cached in a target cache queue corresponding to the current message, wherein the target cache queue Each message in has an associated time stamp; if the determined message type is the second message type, and the total number of messages sent to the target client within the current time window does not reach the first preset threshold, The current message is sent to the target client, where the target client is the recipient of the current message.
- Example 2 provides the method of Example 1. If the determined message type is the first message type, the method further includes:
- the N messages with the closest timestamp to the current time in the target cache queue are sent to the target client, where N is a positive integer, and the maximum value of N is the second preset Set the threshold.
- Example 3 provides the method of Example 2. After sending the N messages to the target client, the method further includes: removing the N messages from the target cache queue. N messages.
- Example 4 provides the method of Example 2.
- the sending to the target client N messages with a timestamp closest to the current time in the target cache queue includes: The messages in the target cache queue are synchronized to the memory; in the memory, the N messages with the time stamp closest to the current time are sent to the target client.
- Example 5 provides the method of Example 1. If the determined message type is the second message type, the method further includes: if the current time window is If the total number of messages sent internally to the target client has reached the first preset threshold, the current message is discarded.
- Example 6 provides the method of any one of Examples 1 to 5, which is applied to a live broadcast platform, and messages belonging to the first message type include at least one of the following: Leaderboard messages, like messages, and emoticons; messages belonging to the second message type include at least one of the following: chat messages, barrage messages, and gift-giving messages.
- Example 7 provides the method of Example 6.
- the first preset threshold is set according to the priority of the message belonging to the second message type, wherein the higher priority
- the first preset threshold corresponding to the message is higher than the first preset threshold corresponding to the message with a low priority.
- Example 8 provides a message sending device, the device includes: a determining module configured to determine the message type of the current message received within the current time window, the message type Divided into a first message type and a second message type; a cache module, configured to cache the current message in the target cache corresponding to the current message if the determined message type is the first message type In the queue, each message in the target buffer queue has an associated timestamp; the sending module is configured to, if the determined message type is the second message type, and send the message within the current time window If the total number of messages sent by the target client does not reach the first preset threshold, the current message is sent to the target client, where the target client is the recipient of the current message.
- Example 9 provides a computer-readable medium having a computer program stored thereon, and when the program is executed by a processing device, it implements the method described in any one of Examples 1 to 7. step.
- Example 10 provides an electronic device, including: a storage device on which a computer program is stored; and a processing device for executing the computer program in the storage device to The steps of the method described in any one of Examples 1 to 7 are implemented.
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
Description
Claims (10)
- 一种消息发送方法,其特征在于,所述方法包括:确定在当前时间窗口内接收到的当前消息的消息类型,所述消息类型分为第一消息类型和第二消息类型;若确定出的所述消息类型为所述第一消息类型,则将所述当前消息缓存到与所述当前消息对应的目标缓存队列中,其中,所述目标缓存队列中的各消息具有相关联的时间戳;若确定出的所述消息类型为所述第二消息类型,且在所述当前时间窗口内向目标客户端发送的消息总数未达到第一预设阈值,则将所述当前消息发送至所述目标客户端,其中,所述目标客户端为所述当前消息的接收方。
- 根据权利要求1所述的方法,其特征在于,若确定出的所述消息类型为所述第一消息类型,则所述方法还包括:在所述当前时间窗口结束时,将所述目标缓存队列中时间戳距离当前时间最近的N个消息发送至所述目标客户端,其中,N为正整数,且N的最大值为第二预设阈值。
- 根据权利要求2所述的方法,其特征在于,在将所述N个消息发送至所述目标客户端之后,还包括:从所述目标缓存队列中移除所述N个消息。
- 根据权利要求2所述的方法,其特征在于,所述将所述目标缓存队列中时间戳距离当前时间最近的N个消息发送至所述目标客户端,包括:将所述目标缓存队列中的消息同步到内存中;在所述内存中,将时间戳距离当前时间最近的N个消息发送至所述目标客户端。
- 根据权利要求1所述的方法,其特征在于,若确定出的所述消 息类型为所述第二消息类型,则所述方法还包括:若在所述当前时间窗口内向所述目标客户端发送的消息总数已达到所述第一预设阈值,则丢弃所述当前消息。
- 根据权利要求1-5中任一项所述的方法,其特征在于,所述方法应用于直播平台,属于第一消息类型的消息包括以下中的至少一者:排行榜消息、点赞消息、表情消息;属于第二消息类型的消息包括以下中的至少一者:聊天消息、弹幕消息、送礼消息。
- 根据权利要求6所述的方法,其特征在于,所述第一预设阈值根据所述属于第二消息类型的消息的优先级设置,其中,所述优先级高的消息对应的所述第一预设阈值高于所述优先级低的消息对应的所述第一预设阈值。
- 一种消息发送装置,其特征在于,所述装置包括:确定模块,用于确定在当前时间窗口内接收到的当前消息的消息类型,所述消息类型分为第一消息类型和第二消息类型;缓存模块,用于若确定出的所述消息类型为所述第一消息类型,则将所述当前消息缓存到与所述当前消息对应的目标缓存队列中,其中,所述目标缓存队列中的各消息具有相关联的时间戳;发送模块,用于若确定出的所述消息类型为所述第二消息类型,且在所述当前时间窗口内向目标客户端发送的消息总数未达到第一预设阈值,则将所述当前消息发送至所述目标客户端,其中,所述目标客户端为所述当前消息的接收方。
- 一种计算机可读介质,其上存储有计算机程序,其特征在于,该程序被处理装置执行时实现权利要求1-7中任一项所述方法的步骤。
- 一种电子设备,其特征在于,包括:存储装置,其上存储有计算机程序;处理装置,用于执行所述存储装置中的所述计算机程序,以实现权利要求1-7中任一项所述方法的步骤。
Priority Applications (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2022522866A JP7454662B2 (ja) | 2019-10-16 | 2020-08-19 | 情報送信方法、装置、読み取り可能な記憶媒体及び電子装置 |
| KR1020227012470A KR102725987B1 (ko) | 2019-10-16 | 2020-08-19 | 정보 송신 방법, 장치, 판독 가능한 매체 및 전자 장치 |
| EP20877202.0A EP4047934B1 (en) | 2019-10-16 | 2020-08-19 | Message sending method and device, readable medium and electronic device |
| BR112022007289A BR112022007289A2 (pt) | 2019-10-16 | 2020-08-19 | Método e dispositivo de envio de mensagem, mídia legível e dispositivo eletrônico |
| US17/769,739 US12075106B2 (en) | 2019-10-16 | 2020-08-19 | Message sending method and device, readable medium and electronic device |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201910985122.3A CN110662085B (zh) | 2019-10-16 | 2019-10-16 | 消息发送方法、装置、可读介质及电子设备 |
| CN201910985122.3 | 2019-10-16 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2021073248A1 true WO2021073248A1 (zh) | 2021-04-22 |
Family
ID=69041203
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2020/110041 Ceased WO2021073248A1 (zh) | 2019-10-16 | 2020-08-19 | 消息发送方法、装置、可读介质及电子设备 |
Country Status (7)
| Country | Link |
|---|---|
| US (1) | US12075106B2 (zh) |
| EP (1) | EP4047934B1 (zh) |
| JP (1) | JP7454662B2 (zh) |
| KR (1) | KR102725987B1 (zh) |
| CN (1) | CN110662085B (zh) |
| BR (1) | BR112022007289A2 (zh) |
| WO (1) | WO2021073248A1 (zh) |
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114040254A (zh) * | 2021-11-08 | 2022-02-11 | 聚好看科技股份有限公司 | 一种显示设备及高并发消息显示方法 |
| CN114945003A (zh) * | 2022-05-31 | 2022-08-26 | 济南浪潮数据技术有限公司 | 一种避免消息阻塞网络的控制方法、装置、设备及介质 |
| CN115379281A (zh) * | 2021-05-20 | 2022-11-22 | 北京字节跳动网络技术有限公司 | 虚拟直播间的消息展示方法、装置和设备 |
| CN115706939A (zh) * | 2021-08-17 | 2023-02-17 | 中国移动通信有限公司研究院 | 行业消息的发送方法及装置 |
| CN115904898A (zh) * | 2022-10-27 | 2023-04-04 | 上海思岚科技有限公司 | 用于性能消耗指标的分析方法与设备 |
| WO2024179361A1 (zh) * | 2023-02-28 | 2024-09-06 | 北京字跳网络技术有限公司 | 一种消息处理方法、装置、设备及介质 |
| CN119582972A (zh) * | 2025-02-05 | 2025-03-07 | 中国船舶集团有限公司第七〇七研究所 | 基于水声通信的授时方法、装置、电子设备和存储介质 |
Families Citing this family (26)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110662085B (zh) | 2019-10-16 | 2021-10-01 | 北京字节跳动网络技术有限公司 | 消息发送方法、装置、可读介质及电子设备 |
| CN113709020B (zh) * | 2020-05-20 | 2024-02-06 | 腾讯科技(深圳)有限公司 | 消息发送方法、消息接收方法、装置、设备及介质 |
| CN111901619B (zh) * | 2020-07-23 | 2023-10-31 | 北京达佳互联信息技术有限公司 | 一种消息推送方法和装置 |
| CN112100556B (zh) * | 2020-08-25 | 2023-02-24 | 福建天泉教育科技有限公司 | 优化消息推送方式的方法及其系统 |
| US11115363B1 (en) * | 2020-09-02 | 2021-09-07 | Whatsapp Llc | Utilizing encrypted ephemeral messages to modify ephemeral message duration settings |
| CN112199174B (zh) * | 2020-09-30 | 2025-07-08 | 北京字节跳动网络技术有限公司 | 消息发送的控制方法、装置、电子设备及计算机可读存储介质 |
| CN114727255A (zh) * | 2020-12-19 | 2022-07-08 | 北京万集科技股份有限公司 | 消息处理方法、装置、计算机设备和存储介质 |
| CN112702259B (zh) * | 2020-12-23 | 2023-05-23 | 北京焦点新干线信息技术有限公司 | 延迟消息推送方法、装置及消息中间件 |
| CN114740738B (zh) * | 2021-01-07 | 2025-10-24 | 深圳爱根斯通科技有限公司 | 数据处理方法、装置、控制端及存储介质 |
| CN114816783B (zh) * | 2021-01-29 | 2025-02-25 | 北京字节跳动网络技术有限公司 | 消息发送方法、装置、电子设备及计算机可读存储介质 |
| CN115209166A (zh) * | 2021-04-12 | 2022-10-18 | 北京字节跳动网络技术有限公司 | 一种消息发送方法、装置、设备和存储介质 |
| CN113094002B (zh) * | 2021-05-12 | 2023-07-18 | 抖音视界有限公司 | 消息处理方法、装置、电子设备和计算机介质 |
| CN113138883B (zh) * | 2021-05-14 | 2024-02-02 | 北京字节跳动网络技术有限公司 | 消息处理方法、装置、存储介质及电子设备 |
| US12586125B2 (en) * | 2021-05-28 | 2026-03-24 | Whatnot, Inc. | Method and system for reduced latency in a scalable, multi-user, publish-subscribe architecture |
| CN113645508B (zh) * | 2021-08-10 | 2023-09-19 | 北京读我科技有限公司 | 一种消息输出方法、装置及系统 |
| CN113810759B (zh) * | 2021-09-15 | 2024-03-01 | 上海哔哩哔哩科技有限公司 | 视频点赞实现方法及装置 |
| CN114124881B (zh) * | 2021-11-30 | 2023-06-20 | 中国建设银行股份有限公司 | 一种基于优先级的消息推送方法及相关装置 |
| CN114590656B (zh) * | 2022-01-30 | 2024-03-26 | 云知声智能科技股份有限公司 | 电梯控制方法、装置、电子设备和存储介质 |
| CN115080468B (zh) * | 2022-05-12 | 2024-06-14 | 珠海全志科技股份有限公司 | 一种非阻塞的信息传输方法和装置 |
| CN117640516A (zh) * | 2022-08-09 | 2024-03-01 | 抖音视界有限公司 | 消息处理方法、装置、电子设备和存储介质 |
| CN115794446B (zh) * | 2023-01-18 | 2023-05-09 | 苏州浪潮智能科技有限公司 | 一种消息处理方法、装置、电子设备和存储介质 |
| CN117076138B (zh) * | 2023-10-17 | 2024-02-23 | 西安羚控电子科技有限公司 | 面向体系仿真的资源跨平台集成和调度方法及装置 |
| CN117560417B (zh) * | 2023-11-20 | 2024-05-17 | 上海万雍科技股份有限公司 | 针对消息发送的队列控制方法、装置、电子设备与介质 |
| CN119211155B (zh) * | 2024-10-12 | 2025-10-10 | 新华三技术有限公司 | 一种报文传输方法、装置、电子设备及存储介质 |
| CN119766593A (zh) * | 2025-03-06 | 2025-04-04 | 北京中科海芯科技有限公司 | Can总线控制器、消息缓存方法和电子设备 |
| CN120416782B (zh) * | 2025-03-20 | 2026-04-03 | 深圳市微网信云科技有限公司 | 多用户多通道的消息调度方法、装置、设备及存储介质 |
Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5530474B2 (ja) * | 2012-03-22 | 2014-06-25 | ヤフー株式会社 | 情報処理装置及び方法 |
| JP2016132664A (ja) * | 2015-01-15 | 2016-07-25 | 株式会社クレンシアコスメ | L‐アスコルビン酸配合凍結乾燥化粧料 |
| CN105979343A (zh) * | 2016-06-28 | 2016-09-28 | 武汉斗鱼网络科技有限公司 | 一种基于网页弹幕弹幕层级设置的方法及装置 |
| CN106028163A (zh) * | 2016-05-19 | 2016-10-12 | 乐视控股(北京)有限公司 | 客户端的弹幕显示方法及装置 |
| CN108495166A (zh) * | 2018-01-29 | 2018-09-04 | 上海哔哩哔哩科技有限公司 | 弹幕播放控制方法、终端及弹幕播放控制系统 |
| CN109274988A (zh) * | 2018-08-20 | 2019-01-25 | 武汉斗鱼网络科技有限公司 | 弹幕消息分发方法、装置、设备及存储介质 |
| CN110662085A (zh) * | 2019-10-16 | 2020-01-07 | 北京字节跳动网络技术有限公司 | 消息发送方法、装置、可读介质及电子设备 |
Family Cites Families (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7865684B2 (en) * | 2005-06-27 | 2011-01-04 | Ab Initio Technology Llc | Managing message queues |
| JP2009089019A (ja) | 2007-09-28 | 2009-04-23 | Fujitsu Ltd | マルチキャスト配信制御装置、コンピュータプログラム、マルチキャスト配信制御システム及びマルチキャスト配信制御方法 |
| JP4687758B2 (ja) | 2008-08-08 | 2011-05-25 | 株式会社日立製作所 | 輻輳制御方法 |
| US10785174B2 (en) * | 2013-11-15 | 2020-09-22 | Google Llc | Messaging for event live-stream |
| US9641989B1 (en) * | 2014-09-24 | 2017-05-02 | Amazon Technologies, Inc. | Displaying messages according to priority |
| US20160307286A1 (en) | 2015-04-15 | 2016-10-20 | Athoc, Inc. | Safety Communication Hub for Organizations |
| CN105391785A (zh) * | 2015-11-25 | 2016-03-09 | 广州华多网络科技有限公司 | 一种业务消息的处理方法和服务器 |
| US9935888B2 (en) * | 2016-05-02 | 2018-04-03 | Visa International Service Association | System and method for latency-based queuing |
| US9667681B1 (en) | 2016-09-23 | 2017-05-30 | Machine Zone, Inc. | Systems and methods for providing messages to multiple subscribers |
| CN106507133B (zh) | 2016-11-28 | 2019-07-26 | 北京金山安全软件有限公司 | 弹幕消息的处理方法、装置、系统及其设备 |
| CN108174305B (zh) * | 2016-12-07 | 2019-03-12 | 北京云中融信网络科技有限公司 | 直播聊天室的消息处理方法及装置 |
| US10425378B2 (en) | 2016-12-19 | 2019-09-24 | Facebook, Inc. | Comment synchronization in a video stream |
| CN107231294A (zh) * | 2017-05-24 | 2017-10-03 | 北京潘达互娱科技有限公司 | 消息处理方法及装置 |
| CN107666619B (zh) * | 2017-06-15 | 2019-11-08 | 北京金山云网络技术有限公司 | 直播数据传输方法、装置、电子设备、服务器及存储介质 |
| CN110138679B (zh) * | 2019-04-03 | 2022-09-20 | 北京旷视科技有限公司 | 数据流调度方法及装置 |
-
2019
- 2019-10-16 CN CN201910985122.3A patent/CN110662085B/zh active Active
-
2020
- 2020-08-19 US US17/769,739 patent/US12075106B2/en active Active
- 2020-08-19 EP EP20877202.0A patent/EP4047934B1/en active Active
- 2020-08-19 JP JP2022522866A patent/JP7454662B2/ja active Active
- 2020-08-19 KR KR1020227012470A patent/KR102725987B1/ko active Active
- 2020-08-19 BR BR112022007289A patent/BR112022007289A2/pt unknown
- 2020-08-19 WO PCT/CN2020/110041 patent/WO2021073248A1/zh not_active Ceased
Patent Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5530474B2 (ja) * | 2012-03-22 | 2014-06-25 | ヤフー株式会社 | 情報処理装置及び方法 |
| JP2016132664A (ja) * | 2015-01-15 | 2016-07-25 | 株式会社クレンシアコスメ | L‐アスコルビン酸配合凍結乾燥化粧料 |
| CN106028163A (zh) * | 2016-05-19 | 2016-10-12 | 乐视控股(北京)有限公司 | 客户端的弹幕显示方法及装置 |
| CN105979343A (zh) * | 2016-06-28 | 2016-09-28 | 武汉斗鱼网络科技有限公司 | 一种基于网页弹幕弹幕层级设置的方法及装置 |
| CN108495166A (zh) * | 2018-01-29 | 2018-09-04 | 上海哔哩哔哩科技有限公司 | 弹幕播放控制方法、终端及弹幕播放控制系统 |
| CN109274988A (zh) * | 2018-08-20 | 2019-01-25 | 武汉斗鱼网络科技有限公司 | 弹幕消息分发方法、装置、设备及存储介质 |
| CN110662085A (zh) * | 2019-10-16 | 2020-01-07 | 北京字节跳动网络技术有限公司 | 消息发送方法、装置、可读介质及电子设备 |
Non-Patent Citations (1)
| Title |
|---|
| See also references of EP4047934A4 * |
Cited By (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115379281A (zh) * | 2021-05-20 | 2022-11-22 | 北京字节跳动网络技术有限公司 | 虚拟直播间的消息展示方法、装置和设备 |
| CN115706939A (zh) * | 2021-08-17 | 2023-02-17 | 中国移动通信有限公司研究院 | 行业消息的发送方法及装置 |
| CN114040254A (zh) * | 2021-11-08 | 2022-02-11 | 聚好看科技股份有限公司 | 一种显示设备及高并发消息显示方法 |
| WO2023077991A1 (zh) * | 2021-11-08 | 2023-05-11 | 聚好看科技股份有限公司 | 显示设备及其显示方法 |
| CN114945003A (zh) * | 2022-05-31 | 2022-08-26 | 济南浪潮数据技术有限公司 | 一种避免消息阻塞网络的控制方法、装置、设备及介质 |
| CN114945003B (zh) * | 2022-05-31 | 2024-02-13 | 济南浪潮数据技术有限公司 | 一种避免消息阻塞网络的控制方法、装置、设备及介质 |
| CN115904898A (zh) * | 2022-10-27 | 2023-04-04 | 上海思岚科技有限公司 | 用于性能消耗指标的分析方法与设备 |
| WO2024179361A1 (zh) * | 2023-02-28 | 2024-09-06 | 北京字跳网络技术有限公司 | 一种消息处理方法、装置、设备及介质 |
| CN119582972A (zh) * | 2025-02-05 | 2025-03-07 | 中国船舶集团有限公司第七〇七研究所 | 基于水声通信的授时方法、装置、电子设备和存储介质 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN110662085B (zh) | 2021-10-01 |
| JP7454662B2 (ja) | 2024-03-22 |
| CN110662085A (zh) | 2020-01-07 |
| EP4047934B1 (en) | 2025-10-01 |
| KR20220062101A (ko) | 2022-05-13 |
| US20220394316A1 (en) | 2022-12-08 |
| KR102725987B1 (ko) | 2024-11-05 |
| JP2022552986A (ja) | 2022-12-21 |
| US12075106B2 (en) | 2024-08-27 |
| EP4047934A1 (en) | 2022-08-24 |
| BR112022007289A2 (pt) | 2022-07-05 |
| EP4047934A4 (en) | 2023-12-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2021073248A1 (zh) | 消息发送方法、装置、可读介质及电子设备 | |
| US9621465B2 (en) | Wired data-connection aggregation | |
| EP2933963B1 (en) | Traffic flow control based on the traffic type | |
| CN112199174B (zh) | 消息发送的控制方法、装置、电子设备及计算机可读存储介质 | |
| CN111314439A (zh) | 一种数据发送方法、装置和电子设备 | |
| CN102480430A (zh) | 实现报文保序的方法和装置 | |
| CN106411778B (zh) | 数据转发的方法及装置 | |
| WO2023217188A1 (zh) | 一种直播数据传输方法、装置、系统、设备和介质 | |
| CN112015816A (zh) | 数据同步方法、装置、介质及电子设备 | |
| CN114390451A (zh) | 基于消息队列的5g消息批量发送方法、装置及电子设备 | |
| CN113364767A (zh) | 一种流媒体数据显示方法、装置、电子设备及存储介质 | |
| CN112527782A (zh) | 一种数据处理的方法和装置 | |
| CN113037853A (zh) | 数据处理方法、装置、设备及存储介质 | |
| CN102281183A (zh) | 处理网络拥塞的方法、装置和核心网络实体 | |
| CN114257870B (zh) | 短视频播放方法、装置、设备及存储介质 | |
| CN112163176B (zh) | 数据存储方法、装置、电子设备和计算机可读介质 | |
| CN112653691B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
| WO2016065779A1 (zh) | 队列的调度方法及装置 | |
| CN112632434B (zh) | 信息发送方法、装置、电子设备和计算机可读介质 | |
| US9674282B2 (en) | Synchronizing SLM statuses of a plurality of appliances in a cluster | |
| CN104396195A (zh) | 一种数据包传输方法及设备 | |
| CN112182002A (zh) | 数据容灾方法、装置、电子设备和计算机可读介质 | |
| CN108243091B (zh) | 一种信息共享装置和信息共享方法 | |
| CN112040328A (zh) | 数据交互方法、装置和电子设备 | |
| CN110049068A (zh) | 一种基于超文本传输协议的网络长连接优化的方法和装置 |
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: 20877202 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 20227012470 Country of ref document: KR Kind code of ref document: A |
|
| ENP | Entry into the national phase |
Ref document number: 2022522866 Country of ref document: JP Kind code of ref document: A |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| REG | Reference to national code |
Ref country code: BR Ref legal event code: B01A Ref document number: 112022007289 Country of ref document: BR |
|
| ENP | Entry into the national phase |
Ref document number: 2020877202 Country of ref document: EP Effective date: 20220516 |
|
| ENP | Entry into the national phase |
Ref document number: 112022007289 Country of ref document: BR Kind code of ref document: A2 Effective date: 20220414 |
|
| WWG | Wipo information: grant in national office |
Ref document number: 2020877202 Country of ref document: EP |
|
| WWG | Wipo information: grant in national office |
Ref document number: 202227028089 Country of ref document: IN |