CN107196848A - Information push method and device - Google Patents

Information push method and device Download PDF

Info

Publication number
CN107196848A
CN107196848A CN201710321261.7A CN201710321261A CN107196848A CN 107196848 A CN107196848 A CN 107196848A CN 201710321261 A CN201710321261 A CN 201710321261A CN 107196848 A CN107196848 A CN 107196848A
Authority
CN
China
Prior art keywords
client
message
push
shared drive
push message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201710321261.7A
Other languages
Chinese (zh)
Other versions
CN107196848B (en
Inventor
张俊生
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201710321261.7A priority Critical patent/CN107196848B/en
Publication of CN107196848A publication Critical patent/CN107196848A/en
Application granted granted Critical
Publication of CN107196848B publication Critical patent/CN107196848B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/214Monitoring or handling of messages using selective forwarding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/48Message addressing, e.g. address format or anonymous messages, aliases
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/56Unified messaging, e.g. interactions between e-mail, instant messaging or converged IP messaging [CPM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services

Abstract

The present invention relates to communication technical field, a kind of information push method and device are disclosed.Message to be sent for client is stored in shared drive by the present invention in advance, during PUSH message, and multiple processes read message from shared drive simultaneously and send the message of reading to corresponding client;The reading speed of shared drive is faster than database reading speed, and multiple processes read and sent simultaneously message in addition, thus can lift the efficiency of message push.The present invention reads the speed of message in order to improve from shared drive, when toward storage message in shared drive, message is classified, each client of each process can inquire about message to be sent from the shared drive block of determination, seeking scope can so be reduced, it is to avoid each client searches required message in all message.

Description

Information push method and device
Technical field
The present invention relates to communication technical field, more particularly to a kind of information push method and device.
Background technology
Message push technology arises at the historic moment with developing rapidly for mobile Internet.Message push technology refers to, for Family is purposive by information active push to user to the particular demands of information.Server-client mechanism is generally used, by Information is actively pushed to client by server.Therefore, push technology is actually and information is automatically sent to before user plane Technology, that is, realize " information looks for user ".
In the prior art, to realize that a certain moment pushes real-time messages different from each other, Ke Yiyong to all online users One process is traveled through to all users, obtains needing the information and sending of transmission for each user by calculating in real time, It can be sent to user message with computed in advance and be stored in database (Database), each user is directed to during transmission The message to be sent is read from database to be transmitted.
Currently existing scheme can be improved further in performance, the message content for needing to send be calculated in real time, although can be with Remove the storage consumption for storing all users message content to be sent from, but need to expend the regular hour, influence user receives To the ageing of message.The each user of calculated in advance message content to be sent and being stored in database can avoid meter in real time The time loss of message content is calculated, but adds the time that message content is read from database simultaneously, message is received for user Ageing influence depends on the duration for calculating the duration of message content in real time and message content being read from database.By singly entering When journey travels through all users, when number of users is very big, traversal will be time-consuming gradually to be increased, the message pushed afterwards reach user when Effect property is poorer.And terminal user has strong requirement to the accuracy and promptness of PUSH message, but in the prior art simultaneously Can not realize it is normal to message, push in time.
The content of the invention
The invention provides a kind of information push method and device, based on shared drive and multi-process technology, by entering more Journey reads from shared drive and message and is pushed to client simultaneously, solves the problem of message is pushed not in time, realize efficiently, Real-time message is pushed.The present invention reads the speed of message in order to improve from shared drive, toward storing message in shared drive When, message is classified, each client of each process can inquire about to be sent from the shared drive block of determination Message, can so reduce seeking scope, it is to avoid each client searches required message in all message.
The first aspect of the present invention provides a kind of information push method, including:
Obtain PUSH message and client id;
The affiliated process of client id is determined, and PUSH message and client id are stored in shared drive corresponding with the process In block;
When reaching the message push time, each process reads PUSH message from corresponding shared drive block simultaneously, according to The corresponding relation of PUSH message and client id, PUSH message is sent to client corresponding with the client id.
The second aspect of the present invention provides a kind of message pusher, including:
Data capture unit, for obtaining PUSH message and client id;
Data processing unit, for determining the affiliated process of client id, and by PUSH message and client id deposit with being somebody's turn to do In the corresponding shared drive block of process;
Message push unit, for when reaching the message push time, each process to be simultaneously from corresponding shared drive block Read PUSH message, according to PUSH message and the corresponding relation of client id, by PUSH message send to the client id Corresponding client.
Message to be sent for client is stored in shared drive by the present invention in advance, during PUSH message, Duo Gejin Journey reads message from shared drive simultaneously and sends the message of reading to corresponding client;The reading speed ratio of shared drive Database reading speed is fast, and multiple processes read and sent simultaneously message in addition, thus can lift the efficiency of message push.This Outside, when storing message, the message to be sent of all clients that same process will be connected be stored in the process it is corresponding it is shared in In counterfoil, each process can be avoided to travel through the message required for searching in all message, message seeking scope is reduced, Message can be saved and search the time, realize that efficient real-time messages are pushed.
Brief description of the drawings
In order to illustrate more clearly about the embodiment of the present invention or technical scheme of the prior art and advantage, below will be to implementing The accompanying drawing used required in example or description of the prior art is briefly described, it should be apparent that, drawings in the following description are only Only it is some embodiments of the present invention, for those of ordinary skill in the art, on the premise of not paying creative work, Other accompanying drawings can also be obtained according to these accompanying drawings.
Fig. 1 is the exemplary system architecture figure of information push method provided in an embodiment of the present invention and device;
Fig. 2 is the frame construction drawing of information push method provided in an embodiment of the present invention and device;
Fig. 3 is the flow chart of information push method provided in an embodiment of the present invention;
Fig. 4 is the flow chart of information push method provided in an embodiment of the present invention;
Fig. 5 is the flow chart for the method that a kind of message provided in an embodiment of the present invention is pushed;
Fig. 6 is the flow chart for the method that another message provided in an embodiment of the present invention is pushed;
Fig. 7 is the structured flowchart of message pusher provided in an embodiment of the present invention;
Fig. 8 is the structural representation provided in an embodiment of the present invention for being used for realizing the server of the embodiment of the present invention.
Embodiment
In order that those skilled in the art more fully understand the present invention program, below in conjunction with the embodiment of the present invention Accompanying drawing, the technical scheme in the embodiment of the present invention is clearly and completely described, it is clear that described embodiment is only The embodiment of a part of the invention, rather than whole embodiments.Based on the embodiment in the present invention, ordinary skill people The every other embodiment that member is obtained under the premise of creative work is not made, should all belong to the model that the present invention is protected Enclose.
It should be noted that term " first " in description and claims of this specification and above-mentioned accompanying drawing, " Two " etc. be for distinguishing similar object, without for describing specific order or precedence.It should be appreciated that so using Data can exchange in the appropriate case, so as to embodiments of the invention described herein can with except illustrating herein or Order beyond those of description is implemented.In addition, term " comprising " and " having " and their any deformation, it is intended that cover Lid is non-exclusive to be included, for example, the process, method, system, product or the equipment that contain series of steps or unit are not necessarily limited to Those steps or unit clearly listed, but may include not list clearly or for these processes, method, product Or the intrinsic other steps of equipment or unit.
Fig. 1 is the exemplary system architecture figure of information push method provided in an embodiment of the present invention and device.The system Framework can include terminal device 200, network 300 and server 100.Network 300 is in terminal device 200 and server The medium of communication link is provided between 100.Network 300 can include various connection types, such as wired, wireless communication link or Person's fiber optic cables etc..User can be interacted with using terminal equipment 200 by network 300 with server 100, to receive or send Message etc..Various client applications can be installed on terminal device 200, for example, game class application, web browser applications, Class of doing shopping application, searching class application, JICQ, mailbox client, social platform software etc..
Terminal device 200 can be the various electronic equipments with display screen, including but not limited to smart mobile phone, flat board electricity Brain, pocket computer and desktop computer etc..Server 100 can be to provide the server of various services, for example, to terminal The application installed in equipment 200 provides the server that high in the clouds data are supported and high in the clouds is handled.Cloud server can be to correspondence eventually The PUSH message at end is handled, and PUSH message is fed back into terminal device.
It should be noted that the information push method that the embodiment of the present application is provided can be set by server 100 and terminal Standby 200 combine to perform.
It should be understood that the number of the terminal device, network and server in Fig. 1 is only schematical.According to realizing need Will, can have any number of terminal device, network and server.
Fig. 2 is the frame construction drawing of information push method provided in an embodiment of the present invention and device, it is adaptable to realize certain One moment pushed the application scenarios of real-time messages different from each other to all online users.In figure, 110 be shared drive, and 120 are The multi-process of PUSH message, 130 be subscription client, and multiple subscription clients are connected with each process, and shared drive is drawn It is divided into multiple shared drive blocks, the message that each process configures all subscription clients in a shared drive block, process is all deposited It is stored in the corresponding shared drive block of the process, so, when needing to client push message, each process is in the same time Message is obtained from each self-corresponding shared drive block respectively, the client in process is then sent to, message is saved with this The push time, improve information push efficiency.
Embodiment 1
Fig. 3-5 are referred to, the present embodiment provides a kind of information push method.This method includes:
S301:Obtain PUSH message and client id.
During use, the message largely with server interaction can be related to, these message can be that client passes through Server is sent to instant messaging or server in other clients, such as game application between each client Produced according to client application behaviour in service, such as the ranking ranking in game application.The present embodiment is with push server institute The PUSH message of generation is illustrated, in order to which these PUSH messages are accurately pushed into corresponding client, is pushed obtaining Need to obtain the corresponding client id of the PUSH message, the push produced according to client application for server while message , it is necessary to obtain PUSH message and receive the client id of the PUSH message, client id is unique mark client for message The identifier at end, can be user name.
S302:The affiliated process of client id is determined, and PUSH message and client id deposit is corresponding with the process common Enjoy in memory block.
Each process is connected with multiple client, and system is about set to each course allocation process ID, should to unique mark Process, and shared drive block ID is distributed for each shared drive block, it is basic herein to the unique mark shared drive block On, further setting up has the mapping relations and process ID of process ID and client id and shared memory block ID mapping relations; By query procedure ID and the mapping relations of client id, the corresponding process ID of client id can be searched, client id is known Affiliated process, and then according to process ID and shared memory block ID mapping relations, can search that to obtain process ID corresponding shared Memory block ID, knows the corresponding shared drive block of process ID, and then can be by PUSH message and client id deposit and the client Hold in the corresponding shared drive block of the affiliated processes of ID.
S303:When reaching the message push time, each process reads PUSH message from corresponding shared drive block simultaneously, According to PUSH message and the corresponding relation of client id, PUSH message is sent to client corresponding with the client id.
When reaching the message push time, server can generate message and push instruction, trigger each process simultaneously from respective PUSH message is read in corresponding shared drive block, and according to PUSH message and the corresponding relation of client id, by PUSH message Send into client corresponding with client id.The process of each process PUSH message is separate and while carry out, under The process of PUSH message is specifically described by taking individual process PUSH message as an example for face.
In shared drive block correspondence store PUSH message and client id, during PUSH message, can using PUSH message as It is leading to be pushed, message push can also be carried out using client id to be leading.The present embodiment is using PUSH message as leading execution Message is pushed, including:The PUSH message in shared drive block is read one by one, is closed according to PUSH message is corresponding with client id System, PUSH message is sent to client corresponding with the client id, until push all in shared drive block is disappeared Breath is all pushed to corresponding client.Fig. 5 specifically is referred to, the process of individual process PUSH message comprises the following steps:
S501:Read the PUSH message in shared drive block.
When reading the PUSH message in shared drive block, it can be carried out according to storage location of the message in shared drive block Order is read, and is read since shared drive block first PUSH message of position, is disappeared until reading the last item and pushing Breath.
S502:According to PUSH message and the corresponding relation of client id, by PUSH message send to the client id Corresponding client.
Often read after a PUSH message, found according to the corresponding relation of the PUSH message and client id and receive the push The client id of the client of message, corresponding client is sent to according to client id by PUSH message.
S503:Whether the PUSH message for judging processing is the last item PUSH message, if so, in explanation shared drive block All PUSH messages all distribute completion, can terminate flow, disappear if it is not, there is the push not sent in explanation shared drive block Breath, then repeatedly S501-S503 continues to read and simultaneously sends next PUSH message, until all by what is stored in shared drive block PUSH message is all distributed one time.
Preferably, before step S301, in addition to:
S401:Multiple processes are set up, each process connects multiple client.
S402:The client id for the client being connected in each process is obtained, client id and the client id institute is set up Mapping relations between the process ID of category process.
S403:Memory block is shared for each course allocation one.
S404:Mapping between the shared drive block ID for the process ID shared drive block corresponding with the process for setting up process Relation.
Message to be sent for client is stored in shared drive by the present embodiment in advance, multiple during PUSH message Process reads message from shared drive simultaneously and sends the message of reading to corresponding client;The reading speed of shared drive Faster than database reading speed, multiple processes read and sent simultaneously message in addition, thus can lift the efficiency of message push. In addition, when storing message, it is corresponding shared that the message to be sent of all clients that will connect same process is stored in the process In memory block, each process can be avoided to travel through the message required for searching in all message, reduce message and search model Enclose, message can be saved and search the time, realize that efficient real-time messages are pushed.
Embodiment 2
The present embodiment provides a kind of information push method, it is adaptable to which server is to different real-time of each client push content Message.This method includes pretreatment process and message pushes flow, and wherein pretreatment process comprises the following steps:
S401, set up multiple processes, each process connects multiple client.
System is each course allocation process ID in multi-process, to the unique mark process.Each client With client id, client id is the identifier of unique mark client, can be user name.
S402, acquisition are connected to the client id of the client in each process, set up client id and the client id institute Mapping relations between the process ID of category process.
S403, share memory block for each course allocation one.
Shared drive is divided into multiple shared drive blocks, and system is that each shared drive block distributes shared drive block ID, To the unique mark shared drive block.One shared drive block of each process correspondence, the shared drive block can store this and enter The PUSH message of all clients connected in journey.
Mapping between S404, the shared drive block ID of the process ID for setting up process shared drive block corresponding with the process Relation.
Further, message pushes flow and comprised the following steps:
S301:Obtain PUSH message and client id.
During use, the message largely with server interaction can be related to, these message can be that client passes through Server is sent to instant messaging or server in other clients, such as game application between each client Produced according to client application behaviour in service, such as the ranking ranking in game application.The present embodiment is with push server institute The PUSH message of generation is illustrated, in order to which these PUSH messages are accurately pushed into corresponding client, is pushed obtaining Need to obtain the corresponding client id of the PUSH message, the push produced according to client application for server while message , it is necessary to obtain PUSH message and receive the client id of the PUSH message for message.
S302:The affiliated process of client id is determined, and PUSH message and client id deposit is corresponding with the process common Enjoy in memory block.
According to process ID and the mapping relations of client id, the corresponding process ID of client id can be searched, client is known The affiliated processes of ID are held, and then according to process ID and shared memory block ID mapping relations, can search that to obtain process ID corresponding Shared drive block ID, knows the corresponding shared drive block of process ID, and then can be by PUSH message and client id deposit with being somebody's turn to do In the corresponding shared drive block of the affiliated process of client id.
S303:When reaching the message push time, each process reads PUSH message from corresponding shared drive block simultaneously, According to PUSH message and the corresponding relation of client id, PUSH message is sent to client corresponding with the client id.
When reaching the message push time, server can generate message and push instruction, trigger each process simultaneously from respective PUSH message is read in corresponding shared drive block, and according to PUSH message and the corresponding relation of client id, by PUSH message Send into client corresponding with client id.The process of each process PUSH message is separate and while carry out, under The process of PUSH message is specifically described by taking individual process PUSH message as an example for face.
In shared drive block correspondence store PUSH message and client id, during PUSH message, can using PUSH message as It is leading to be pushed, message push can also be carried out using client id to be leading.The present embodiment using using client id as dominate into Row message is pushed, and is comprised the following steps:
S601, acquisition are connected to the client id of the client in process.
According to the client id list for the client being connected in process, from first client in client id list ID starts to obtain client id backward one by one.
S602, the reading PUSH message corresponding with the client id from process corresponding shared drive block.
According to the client id of acquisition, searched and client from shared drive block corresponding with the affiliated process of client id The corresponding PUSH messages of ID, if finding the corresponding PUSH message of client id, perform S603, if not finding visitor The corresponding PUSH messages of family end ID, then perform S605.
S603, the PUSH message sent to client corresponding with the client id.
S604, judge whether the client id is last client id in client id list, if it is not, then holding Row S605, if so, then terminating flow.
S605, the client id for obtaining next client, and S602-S604 is repeated, until all clients ID PUSH message is all sent.
The present embodiment, according to client id and the corresponding relation of process ID, is found belonging to client id when storing message Process, and according to process ID and shared drive ID corresponding relation, the corresponding shared drive block of process is found, and then will connect same The message to be sent of all clients of one process is stored in the corresponding shared drive block of the process, can avoid each process from The message required for lookup is traveled through in all message, message seeking scope is reduced, message can be saved and search the time, realized Efficient real-time messages are pushed.
In PUSH message, multiple processes read message from shared drive simultaneously and send the message of reading to corresponding Client;The reading speed of shared drive is faster than database reading speed, and multiple processes read and sent simultaneously message in addition, because And the efficiency of message push can be lifted.
It should be noted that for foregoing each method embodiment, in order to be briefly described, therefore it is all expressed as a series of Combination of actions, but those skilled in the art should know, the present invention is not limited by described sequence of movement because According to the present invention, some steps can be carried out sequentially or simultaneously using other.Secondly, those skilled in the art should also know Know, embodiment described in this description belongs to preferred embodiment, involved action and module is not necessarily of the invention It is necessary.
Through the above description of the embodiments, those skilled in the art can be understood that according to above-mentioned implementation The method of example can add the mode of required general hardware platform to realize by software, naturally it is also possible to by hardware, but a lot In the case of the former be more preferably embodiment.Understood based on such, technical scheme is substantially in other words to existing The part that technology contributes can be embodied in the form of software product, and the computer software product is stored in a storage In medium (such as ROM/RAM, magnetic disc, CD), including some instructions are to cause a station terminal equipment (can be mobile phone, calculate Machine, server, or network equipment etc.) perform method described in each of the invention embodiment.
Embodiment 3
Fig. 7 is refer to, to realize above-described embodiment 1 and the method shown in embodiment 2, is pushed away the invention provides a kind of message The embodiment of device is sent, the device is corresponding with the embodiment of the method shown in Fig. 3 and Fig. 4.
As shown in fig. 7, the message pusher 70 of the present embodiment includes data capture unit 75, the and of data processing unit 76 Message push unit 77.
Data capture unit 75, for obtaining PUSH message and client id;
Data processing unit 76, for determining the affiliated process of client id, and by PUSH message and client id deposit with In the corresponding shared drive block of the process;
Message push unit 77, for making each process read PUSH message from corresponding shared drive block simultaneously, according to The corresponding relation of PUSH message and client id, PUSH message is sent to client corresponding with the client id.
Further, the message pusher 70 also sets up unit including process creation unit 71, the first mapping relations 72nd, the mapping relations of allocation unit 73 and second set up unit 74.Wherein,
Process creation unit 71, for setting up multiple processes, each process connects multiple client;
First mapping relations set up unit 72, the client id for obtaining the client being connected in each process, set up Mapping relations between the process ID of client id and the affiliated process of the client id;
Allocation unit 73, for sharing memory block for each course allocation one;
Second mapping relations set up unit 74, the shared drive block corresponding with the process of the process ID for setting up process Mapping relations between shared drive block ID.
As a kind of preferred embodiment, the data processing unit 76 includes the first searching modul 761, the second searching modul 762 and data processing module 763:
First searching modul 761, for the mapping relations according to client id and process ID, searches the client id pair The process ID answered;
Second searching modul 762, for the mapping relations according to process ID and shared memory block ID, searches the process ID Corresponding shared drive block ID;
Data processing module 763, for the PUSH message and client id deposit is corresponding with shared drive block ID Shared drive block in.
As a kind of preferred embodiment, the message push unit 77 includes the message of first message pushing module 771 and second Pushing module 772.
First message pushing module 771, for reading the PUSH message in shared drive block one by one, according to PUSH message with The corresponding relation of client id, PUSH message is sent to client corresponding with the client id, until by shared drive All PUSH messages are all pushed to corresponding client in block.
Second message pushing module 772, the client id for obtaining the client being connected in process;From process correspondence Shared drive block in read corresponding with client id PUSH message, by the PUSH message send to the client Hold the corresponding clients of ID;Whether be last client id, if so, terminating pushing away for PUSH message if judging the client id Send, if it is not, carrying out the push of PUSH message to next client.
Further, the second message pushing module 772 is additionally operable to:If do not had from the corresponding shared drive block of process PUSH message corresponding with the client id is read, whether judge the client id is last client id, If so, terminating the push of PUSH message, if it is not, carrying out the push of PUSH message to next client.
In the present embodiment, the message to be sent for client is stored in shared drive in advance, it is many during PUSH message Individual process reads message from shared drive simultaneously and sends the message of reading to corresponding client;The reading speed of shared drive Degree is faster than database reading speed, and multiple processes read and sent simultaneously message in addition, thus can lift the effect of message push Rate.In addition, when storing message, it is corresponding common that the message to be sent of all clients that will connect same process is stored in the process Enjoy in memory block, each process can be avoided to travel through the message required for searching in all message, reduce message lookup Scope, can save message and search the time, realize that efficient real-time messages are pushed.Solve when the more situation of client terminal quantity Under, as soon as possible the problem of the real-time messages different from each other to each client push.
Embodiment 4
Below with reference to Fig. 8, it illustrates suitable for come the calculating of the terminal device or server of realizing the embodiment of the present invention The structural representation of machine system.
As shown in figure 8, computer system 900 includes CPU (CPU) 901, it can be read-only according to being stored in Program in memory (ROM) 902 or be loaded into program in random access storage device (RAM) 903 from storage part 908 and Perform various appropriate actions and processing.In RAM903, the system that is also stored with 900 operates required various programs and data. CPU901, ROM902 and RAM903 are connected with each other by bus 904.Input/output (I/O) interface 905 is also connected to bus 904。
I/O interfaces 905 are connected to lower component:Importation 906 including keyboard, mouse etc.;Penetrated including such as negative electrode The output par, c 907 of spool (CRT), liquid crystal display (LCD) etc. and loudspeaker etc.;Storage part 908 including hard disk etc.; And the communications portion 909 of the NIC including LAN card, modem etc..Communications portion 909 via such as because The network of spy's net performs communication process.Driver 910 is also according to needing to be connected to I/O interfaces 905.Detachable media 911, such as Disk, CD, magneto-optic disk, semiconductor memory etc., are arranged on driver 910, in order to read from it as needed Computer program be mounted into as needed storage part 908.
Especially, in accordance with an embodiment of the present disclosure, the process described above with reference to flow chart may be implemented as computer Software program.For example, embodiment of the disclosure includes a kind of computer program product, it includes being tangibly embodied in machine readable Computer program on medium, the computer program, which is included, is used for the program code of the method shown in execution flow chart.At this In the embodiment of sample, the computer program can be downloaded and installed by communications portion 909 from network, and/or from removable Medium 911 is unloaded to be mounted.
Flow chart and block diagram in accompanying drawing, it is illustrated that according to the system of the various embodiments of the application, method and computer journey Architectural framework in the cards, function and the operation of sequence product.At this point, each square frame in flow chart or block diagram can generation The part of one module of table, program segment or code, a part for the module, program segment or code is comprising one or more Executable instruction for realizing defined logic function.It should also be noted that in some realizations as replacement, institute in square frame The function of mark can also be with different from the order marked in accompanying drawing generation.For example, two square frames succeedingly represented are actual On can perform substantially in parallel, they can also be performed in the opposite order sometimes, and this is depending on involved function.Also It is noted that the combination of each square frame in block diagram and/or flow chart and the square frame in block diagram and/or flow chart, Ke Yiyong Perform the special hardware based system of defined function or operation to realize, or can be referred to specialized hardware with computer The combination of order is realized.
Being described in unit involved in the embodiment of the present application can be realized by way of software, can also be by hard The mode of part is realized.Described unit can also be set within a processor, for example, can be described as:A kind of processor bag Include receiving module, detection module and processing module.Wherein, the title of these modules is not constituted to the module under certain conditions The restriction of itself.
As on the other hand, present invention also provides a kind of nonvolatile computer storage media, the non-volatile calculating Machine storage medium can be the nonvolatile computer storage media included in device described in above-described embodiment;Can also be Individualism, without the nonvolatile computer storage media in supplying terminal.Above-mentioned nonvolatile computer storage media is deposited One or more program is contained, when one or more of programs are performed by an equipment so that the equipment is performed Following operational order:
Obtain PUSH message and client id;
The affiliated process of client id is determined, and PUSH message and client id are stored in shared drive corresponding with the process In block;
When reaching the message push time, each process reads PUSH message from corresponding shared drive block simultaneously, according to The corresponding relation of PUSH message and client id, PUSH message is sent to client corresponding with the client id.
Further, before the acquisition PUSH message and client id, in addition to:
Multiple processes are set up, each process connects multiple client;
The client id for the client being connected in each process is obtained, client id and the affiliated process of the client id is set up Process ID between mapping relations;
Memory block is shared for each course allocation one;
Mapping relations between the shared drive block ID for the process ID shared drive block corresponding with the process for setting up process.
Further, the determination affiliated process of client id, and PUSH message and client id are stored in and the process In corresponding shared drive block, including:
According to client id and the mapping relations of process ID, the corresponding process ID of the client id is searched;
According to the mapping relations of process ID and shared memory block ID, the corresponding shared drive block ID of the process ID is searched, The PUSH message and client id are stored in shared drive block corresponding with shared drive block ID.
Alternatively, the process reads PUSH message from corresponding shared drive block, according to PUSH message and client ID corresponding relation, PUSH message is sent to client corresponding with the client id, including:
The PUSH message in shared drive block is read one by one, according to PUSH message and the corresponding relation of client id, will be pushed away Message is sent to send to client corresponding with the client id, until PUSH message all in shared drive block is all pushed To corresponding client.
Alternatively, the process reads PUSH message from corresponding shared drive block, according to PUSH message and client ID corresponding relation, PUSH message is sent to client corresponding with the client id, including:
Obtain the client id for the client being connected in process;
PUSH message corresponding with the client id is read from the corresponding shared drive block of process,
The PUSH message is sent to client corresponding with the client id;
Whether judge the client id is last client id,
If so, terminating the push of PUSH message, if it is not, carrying out the push of PUSH message to next client.
Further, in addition to:If do not read and the client id from the corresponding shared drive block of process Corresponding PUSH message, then whether be last client id, if so, terminating pushing away for PUSH message if judging the client id Send, if it is not, carrying out the push of PUSH message to next client.
The present embodiment is based on shared drive and multi-process technology, reads message from shared drive simultaneously by multi-process and pushes away Client is given, the problem of message is pushed not in time is solved, efficient, real-time message is realized and pushes.
Above description is only the preferred embodiment of the application and the explanation to institute's application technology principle.People in the art Member should be appreciated that invention scope involved in the application, however it is not limited to the technology of the particular combination of above-mentioned technical characteristic Scheme, while should also cover in the case where not departing from the inventive concept, is carried out by above-mentioned technical characteristic or its equivalent feature Other technical schemes formed by any combination.Such as features described above has similar work(with (but not limited to) disclosed herein The technical characteristic of energy carries out technical scheme formed by replacement mutually.

Claims (12)

1. a kind of information push method, it is characterised in that including:
Obtain PUSH message and client id;
The affiliated process of client id is determined, and PUSH message and client id are stored in shared drive block corresponding with the process In;
When reaching the message push time, each process reads PUSH message from corresponding shared drive block simultaneously, according to push The corresponding relation of message and client id, PUSH message is sent to client corresponding with the client id.
2. according to the method described in claim 1, it is characterised in that before the acquisition PUSH message and client id, also Including:
Multiple processes are set up, each process connects multiple client;
The client id for being connected to client in each process is obtained, entering for client id and the affiliated process of the client id is set up Mapping relations between journey ID;
Memory block is shared for each course allocation one;
Mapping relations between the shared drive block ID for the process ID shared drive block corresponding with the process for setting up process.
3. method according to claim 1 or 2, it is characterised in that the affiliated process of determination client id, and will push Message and client id are stored in shared drive block corresponding with the process, including:
According to client id and the mapping relations of process ID, the corresponding process ID of the client id is searched;
According to the mapping relations of process ID and shared memory block ID, the corresponding shared drive block ID of the process ID is searched, by institute State PUSH message and client id is stored in shared drive block corresponding with shared drive block ID.
4. according to the method described in claim 1, it is characterised in that the process reads push from corresponding shared drive block Message, according to PUSH message and the corresponding relation of client id, PUSH message is sent to visitor corresponding with the client id Family end, including:
The PUSH message in shared drive block is read one by one, and according to PUSH message and the corresponding relation of client id, push is disappeared Breath is sent to client corresponding with the client id, until PUSH message all in shared drive block is all pushed into phase The client answered.
5. according to the method described in claim 1, it is characterised in that the process reads push from corresponding shared drive block Message, according to PUSH message and the corresponding relation of client id, PUSH message is sent to visitor corresponding with the client id Family end, including:
Obtain the client id for the client being connected in process;
PUSH message corresponding with the client id is read from the corresponding shared drive block of process,
The PUSH message is sent to client corresponding with the client id;
Whether judge the client id is last client id,
If so, terminating the push of PUSH message, if it is not, carrying out the push of PUSH message to next client.
6. method according to claim 5, it is characterised in that methods described also includes:
If not reading PUSH message corresponding with the client id from the corresponding shared drive block of process, judge Whether the client id is last client id,
If so, terminating the push of PUSH message, if it is not, carrying out the push of PUSH message to next client.
7. a kind of message pusher, it is characterised in that including:
Data capture unit, for obtaining PUSH message and client id;
Data processing unit, is stored in and the process for determining the affiliated process of client id, and by PUSH message and client id In corresponding shared drive block;
Message push unit, for simultaneously when reaching the message push time, each process is read from corresponding shared drive block PUSH message, according to PUSH message and the corresponding relation of client id, PUSH message is sent to corresponding with the client id Client.
8. device according to claim 7, it is characterised in that described device also includes:
Process creation unit, for setting up multiple processes, each process connects multiple client;
First mapping relations set up unit, the client id for obtaining the client being connected in each process, set up client Mapping relations between ID and the process ID of the affiliated process of the client id;
Allocation unit, for sharing memory block for each course allocation one;
Second mapping relations set up unit, and sharing for the shared drive block corresponding with the process of the process ID for setting up process is interior Mapping relations between counterfoil ID.
9. the device according to claim 7 or 8, it is characterised in that the data processing unit includes:
First searching modul, for the mapping relations according to client id and process ID, search the client id it is corresponding enter Journey ID;
Second searching modul, for the mapping relations according to process ID and shared memory block ID, searches the process ID corresponding Shared drive block ID;
Data processing module, for the PUSH message and client id deposit is corresponding with shared drive block ID shared interior In counterfoil.
10. device according to claim 7, it is characterised in that the message push unit includes:
First message pushing module, for reading the PUSH message in shared drive block one by one, according to PUSH message and client ID corresponding relation, PUSH message is sent to client corresponding with the client id, until by institute in shared drive block Some PUSH messages are all pushed to corresponding client.
11. device according to claim 7, it is characterised in that the message push unit includes:
Second message pushing module, the client id for obtaining the client being connected in process;It is corresponding shared from process Corresponding with client id PUSH message is read in memory block, by the PUSH message send to the client id pair The client answered;Whether judge the client id is last client id, if so, terminate the push of PUSH message, if It is no, the push of PUSH message is carried out to next client.
12. device according to claim 11, it is characterised in that the second message pushing module is additionally operable to:If from PUSH message corresponding with the client id is not read in the corresponding shared drive block of process, the client id is judged Whether it is last client id, if so, terminating the push of PUSH message, disappears if it is not, carrying out push to next client The push of breath.
CN201710321261.7A 2017-05-09 2017-05-09 Information push method and device Active CN107196848B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710321261.7A CN107196848B (en) 2017-05-09 2017-05-09 Information push method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710321261.7A CN107196848B (en) 2017-05-09 2017-05-09 Information push method and device

Publications (2)

Publication Number Publication Date
CN107196848A true CN107196848A (en) 2017-09-22
CN107196848B CN107196848B (en) 2018-09-04

Family

ID=59873189

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710321261.7A Active CN107196848B (en) 2017-05-09 2017-05-09 Information push method and device

Country Status (1)

Country Link
CN (1) CN107196848B (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108536544A (en) * 2018-03-21 2018-09-14 微梦创科网络科技(中国)有限公司 Consuming method, device, server based on database message queue and medium
CN109508246A (en) * 2018-06-25 2019-03-22 广州多益网络股份有限公司 Log recording method, system and computer readable storage medium
CN110019671A (en) * 2017-11-07 2019-07-16 北京京东尚科信息技术有限公司 A kind of method and system handling real-time messages
CN110928702A (en) * 2018-09-20 2020-03-27 北京君正集成电路股份有限公司 Multi-process message communication system
CN111447205A (en) * 2020-03-24 2020-07-24 深信服科技股份有限公司 Data processing method, system and related equipment
CN113760569A (en) * 2021-01-06 2021-12-07 北京沃东天骏信息技术有限公司 Multi-account management method and system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014108030A1 (en) * 2013-01-09 2014-07-17 北京奇虎科技有限公司 Web polling method, device and system
US20160182415A1 (en) * 2014-12-23 2016-06-23 FanActivate, LLC Scalable systems for change detection of statistic data feeds across multiple servers using shared memory with configurable messaging triggers
CN105893073A (en) * 2015-12-11 2016-08-24 乐视网信息技术(北京)股份有限公司 Update method and system used for application program, and business server and pushing server used for updating application program
CN105915587A (en) * 2016-04-05 2016-08-31 网宿科技股份有限公司 Content push method, content push system and buffer memory server

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014108030A1 (en) * 2013-01-09 2014-07-17 北京奇虎科技有限公司 Web polling method, device and system
US20160182415A1 (en) * 2014-12-23 2016-06-23 FanActivate, LLC Scalable systems for change detection of statistic data feeds across multiple servers using shared memory with configurable messaging triggers
CN105893073A (en) * 2015-12-11 2016-08-24 乐视网信息技术(北京)股份有限公司 Update method and system used for application program, and business server and pushing server used for updating application program
CN105915587A (en) * 2016-04-05 2016-08-31 网宿科技股份有限公司 Content push method, content push system and buffer memory server

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110019671A (en) * 2017-11-07 2019-07-16 北京京东尚科信息技术有限公司 A kind of method and system handling real-time messages
CN110019671B (en) * 2017-11-07 2022-04-12 北京京东尚科信息技术有限公司 Method and system for processing real-time message
CN108536544A (en) * 2018-03-21 2018-09-14 微梦创科网络科技(中国)有限公司 Consuming method, device, server based on database message queue and medium
CN109508246A (en) * 2018-06-25 2019-03-22 广州多益网络股份有限公司 Log recording method, system and computer readable storage medium
CN110928702A (en) * 2018-09-20 2020-03-27 北京君正集成电路股份有限公司 Multi-process message communication system
CN110928702B (en) * 2018-09-20 2023-03-21 北京君正集成电路股份有限公司 Multi-process message communication system
CN111447205A (en) * 2020-03-24 2020-07-24 深信服科技股份有限公司 Data processing method, system and related equipment
CN111447205B (en) * 2020-03-24 2022-11-22 深信服科技股份有限公司 Data processing method, system and related equipment
CN113760569A (en) * 2021-01-06 2021-12-07 北京沃东天骏信息技术有限公司 Multi-account management method and system
CN113760569B (en) * 2021-01-06 2024-04-05 北京沃东天骏信息技术有限公司 Multi-account management method and system

Also Published As

Publication number Publication date
CN107196848B (en) 2018-09-04

Similar Documents

Publication Publication Date Title
CN107196848A (en) Information push method and device
Feng et al. Joint service pricing and cooperative relay communication for federated learning
CN103761309B (en) Operation data processing method and system
Kuang et al. Age-of-information for computation-intensive messages in mobile edge computing
CN104283926B (en) A kind of method of data synchronization, device and server
CN107094165A (en) Distribution capacity is determined, dispatching task obtains, dispenses resource regulating method and equipment
CN108009028A (en) Message treatment method, device, equipment and computer-readable recording medium
CN108696895A (en) Resource acquiring method, apparatus and system
CN108429701A (en) network acceleration system
CN109246027B (en) Network maintenance method and device and terminal equipment
US20220247707A1 (en) Session message display method, electronic device and storage medium
Vargaftik et al. LSQ: Load balancing in large-scale heterogeneous systems with multiple dispatchers
CN108206742A (en) A kind of message method, device, server and system
CN109146446B (en) Virtual article issuing method, device and system
CN107729570A (en) Data migration method and device for server
CN107102833A (en) Line information interactive approach and electronic equipment
CN103326925A (en) Message push method and device
CN106982128B (en) Network-based community construction method
CN110391969A (en) Based on multimedia chat method and device, storage medium, electronic device
CN107807922A (en) Method and apparatus for determining party venue
CN104168174A (en) Method and apparatus for information transmission
CN110764833B (en) Task unloading method, device and system based on edge calculation
CN112199154A (en) Distributed collaborative sampling central optimization-based reinforcement learning training system and method
CN105306337B (en) Multi-conference file sharing method based on instant messaging, device and system
CN104838624B (en) The method, apparatus and system that a kind of control business data forward in virtual network

Legal Events

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