CN111130999B - Method and bus adapter suitable for distributed message transmission - Google Patents
Method and bus adapter suitable for distributed message transmission Download PDFInfo
- Publication number
- CN111130999B CN111130999B CN201911337784.6A CN201911337784A CN111130999B CN 111130999 B CN111130999 B CN 111130999B CN 201911337784 A CN201911337784 A CN 201911337784A CN 111130999 B CN111130999 B CN 111130999B
- Authority
- CN
- China
- Prior art keywords
- client
- message
- name
- bus adapter
- submodule
- 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.)
- Active
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/214—Monitoring or handling of messages using selective forwarding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
The invention discloses a method and a bus adapter suitable for distributed message transmission, and provides a method and a bus adapter suitable for point-to-point communication between a message producer and a message consumer.
Description
Technical Field
The present invention relates to the field of message processing technologies, and in particular, to a method and a bus adapter suitable for distributed message transmission.
Background
Message-Oriented Middleware (MOM) refers to platform-independent data communication using an efficient and reliable messaging mechanism, and integration of distributed systems based on data communication. By providing a messaging and message queuing model, it can extend interprocess communications in a distributed environment and support multiple communication protocols, languages, applications, hardware and software platforms.
In the prior art, in a publishing/subscribing message-oriented middleware, a system a sends a message to a message middleware, and if a system B subscribes to the message sent by the system a, the message is pushed to the system B. In the case of a large amount of data, the message middleware bears an excessive load, which causes backlog of messages, delay, and the like.
Disclosure of Invention
The present invention is directed to overcome the deficiencies of the prior art and to provide a method and a bus adapter suitable for distributed message transmission.
The invention provides a method suitable for distributed message transmission, which comprises the following steps:
step S1: the bus adapter generates a registration node message according to the stored address information and creates a distributed node;
step S2: the bus adapter searches other distributed nodes except the newly created distributed node and sends asynchronous information of the registered node message to all the discovered distributed nodes;
step S3: the bus adapter creates a local client connection processing thread;
step S4: the bus adapter receives the message and judges the type of the message, if the message is a distributed message, the step S5 is executed, if the message is a response message for registering the distributed node, the step S6 is executed, if the message is an abnormal exit message of the distributed node, the step S7 is executed, and if the message is an unknown message, the step S8 is executed;
step S5: the bus adapter judges the type of the distributed message and executes corresponding operation;
step S6: the bus adapter judges whether the remote address information and the distributed node name in the received response message for registering the distributed node exist in the client list, if so, the bus adapter encapsulates the local address information and all the locally connected client names by using the register node message and then sends the encapsulated local address information and all the locally connected client names to the remote bus adapter corresponding to the remote address information, otherwise, the step S4 is returned;
step S7: the bus adapter deletes the address information of the abnormal node and all corresponding client names from the client list, and returns to the step S4;
step S8: the bus adapter discards the unknown message and returns to step S4;
the step S5 is executed if the distributed message type is an inter-node communication message, the step a1 is executed;
step A1: the bus adapter judges whether the name of the target node client exists in the stored client list, if so, the step A2 is executed, otherwise, the step S4 is returned;
step A2: the bus adapter judges the type of the target node client, if the client is a local client, the step A3 is executed, and if the client is a remote client, the step A4 is executed;
step A3: the bus adapter saves the dialogue message to the message queue of the client with the appointed name, and the step S4 is returned;
step A4: and the bus adapter uses inter-node communication information to package the name and the dialogue information of the target node client, sends the name and the dialogue information to the target node client, and returns to the step S4.
The present invention further provides a bus adapter suitable for distributed message transmission, including:
the generation and creation module is used for generating a registration node message according to the stored address information and creating a distributed node;
the searching and sending module is used for searching other distributed nodes except the newly created distributed nodes and sending asynchronous information for generating the register node message generated by the creating module to all the found distributed nodes;
the creating module is used for creating a local client connection processing thread;
the receiving and judging module is used for receiving the message and judging the type of the message;
the judging and executing module is used for judging the type of the distributed message and executing corresponding operation when the receiving and judging module judges that the message type is the distributed message;
the judging module is used for judging whether the remote address information and the name of the distributed node in the received response message of the registered distributed node exist in the client list or not when the receiving judging module judges that the message type is the response message of the registered distributed node;
the packaging and sending module is used for the judging module to judge that the local address information and the locally connected client name are packaged by using the registration node message and then sent to the remote bus adapter corresponding to the remote address information, and the receiving and judging module is triggered;
the deleting module is used for deleting the address information of the abnormal node and all corresponding client names from the client list when the receiving and judging module judges that the message type is the distributed node abnormal exit message, and triggering the receiving and judging module;
a discarding module, configured to discard the unknown message and trigger the receiving and determining module when the receiving and determining module determines that the message type is the unknown message;
the judgment execution module specifically comprises:
a first judging submodule, configured to, when the judgment execution module judges that the type of the distributed message is an inter-node communication message, judge whether a name of a target node client exists in a stored client list, if so, trigger a second judging submodule, and otherwise trigger a reception judging module;
the second judging submodule is used for judging the type of the target node client;
the first storage submodule is used for the second judgment submodule to judge that the type is the local client, storing the conversation message into the message queue of the client with the specified name and triggering the receiving judgment module;
and the first packaging and sending submodule is used for packaging the name and the dialogue message of the target node client by using the inter-node communication message when the second judging submodule judges that the type is the remote client, sending the name and the dialogue message to the target node client and triggering the receiving and judging module.
Compared with the prior art, the invention has the following advantages:
the technical scheme of the invention provides a point-to-point communication method suitable for a message producer and a message consumer, and the messages are directly transmitted to corresponding client queues according to client names without being accumulated at a bus adapter, so that the distributed message interaction efficiency is improved, and the load of the bus adapter is reduced.
Drawings
Fig. 1 is a flowchart of a method for distributed message transmission according to a second embodiment of the present invention;
FIG. 2 is a flowchart of a detailed process of step 103 in the second embodiment of the present invention;
FIG. 3 is a flowchart illustrating a detailed process of step 216 according to a second embodiment of the present invention;
FIG. 4 is a flowchart of a detailed process of step 105 according to a second embodiment of the present invention;
fig. 5 is a block diagram of a bus adapter suitable for distributed message transmission according to a third embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Example one
The embodiment of the invention provides a method suitable for distributed message transmission, which comprises the following steps:
step S1: the bus adapter generates a registration node message according to the stored address information and creates a distributed node;
step S2: the bus adapter searches other distributed nodes except the newly created distributed node and sends asynchronous information of the register node message to all the discovered distributed nodes;
step S3: the bus adapter creates a local client connection processing thread;
step S4: the bus adapter receives the message and judges the type of the message, if the message is a distributed message, the step S5 is executed, if the message is a response message for registering the distributed node, the step S6 is executed, if the message is an abnormal exit message of the distributed node, the step S7 is executed, and if the message is an unknown message, the step S8 is executed;
step S5: the bus adapter judges the type of the distributed message and executes corresponding operation;
step S6: the bus adapter judges whether the remote address information and the distributed node name in the received response message for registering the distributed node exist in the client list, if so, the bus adapter encapsulates the local address information and all the locally connected client names by using the register node message and then sends the encapsulated local address information and all the locally connected client names to the remote bus adapter corresponding to the remote address information, otherwise, the step S4 is returned;
step S7: the bus adapter deletes the address information of the abnormal node and all corresponding client names from the client list, and returns to the step S4;
step S8: the bus adapter discards the unknown message and returns to step S4;
step S5, when the distributed message type is the inter-node communication message, executing step A1;
step A1: the bus adapter judges whether the name of the target node client exists in the stored client list, if so, the step A2 is executed, otherwise, the step S4 is returned;
step A2: the bus adapter judges the type of the target node client, if the client is a local client, the step A3 is executed, and if the client is a remote client, the step A4 is executed;
step A3: the bus adapter saves the dialogue message to the message queue of the client with the appointed name, and the step S4 is returned;
step A4: the bus adapter encapsulates the name and the dialogue message of the target node client using the inter-node communication message, sends the name and the dialogue message to the target node client, and returns to step S4.
Example two
An embodiment of the present invention provides a method suitable for distributed message transmission, as shown in fig. 1, including:
step 101: the bus adapter generates a registration node message according to the stored address information and creates a distributed node;
specifically, the address information is a process id;
step 102: the bus adapter searches other distributed nodes except the newly created distributed node and sends asynchronous messages of the register node messages to all the discovered distributed nodes;
step 103: the bus adapter creates a local client connection processing thread;
in this embodiment, an implementation process of step 103 is shown in fig. 2, and specifically includes:
step 201: the bus adapter listens for local client socket connections;
step 202: the bus adapter receives socket connection of a local client;
step 203: the bus adapter prompts the user to input the client name and waits for receiving;
step 204: the bus adapter judges whether the received client name is valid, if yes, step 205 is executed, otherwise, step 203 is returned to;
specifically, the bus adapter determines whether the received client name meets a first preset condition, if so, step 205 is executed, otherwise, step 203 is executed;
specifically, the first preset condition is as follows: a combination of letters, numbers and special characters;
step 205: the bus adapter judges whether the received client name exists in the saved client list, if yes, the step 203 is returned, otherwise, the step 206 is executed;
step 206: the bus adapter stores the received client name into a client list, and uses a system notification message to package the information added by the client and stores the information into message queues of all local clients;
step 207: the bus adapter uses the new client joining information to package the joined information of the client and sends the joined information to other distributed nodes;
step 208: the bus adapter judges whether there is user's input, carry out step 209 if yes, carry out step 210 otherwise;
step 209: the bus adapter puts the message input by the user into the message queue of the current client, and executes step 210;
step 210: the bus adapter reads the kicked mark of the current client, judges whether the current client is kicked or not according to the kicked mark, if so, executes step 211, otherwise, executes step 212;
specifically, if the mark of the current client kicked off is 1, the current client is kicked off, and if the mark of the current client kicked off is 0, the current client is not kicked off;
step 211: the bus adapter informs the current client that the current client is kicked away, and forcibly ends the current client thread;
step 212: the bus adapter reads a message from the message queue of the current client, judges the message type, if the message is a system notification message, executes step 213, if the message is a local client private message, executes step 214, if the message is a local broadcast message, executes step 215, and if the message is a command message, executes step 216;
step 213: the bus adapter printing system notification message;
for example, a system notification message is "some client has joined" or "some client has disconnected";
step 214: the bus adapter prints a local client private message;
step 215: the bus adapter prints the local broadcast message;
step 216: the bus adapter processes the command message;
in this embodiment, an implementation process of step 216 is shown in fig. 3, and specifically includes:
step 301: the bus adapter judges the type of the command message, if the command message is kicked off the client with the specified name, step 302 is executed, if the command message is sent to the client with the specified name, step 306 is executed, if the command message is broadcast, step 310 is executed, and if the command message is quitted from the bus system, step 312 is executed;
step 302: the bus adapter judges whether the client with the appointed name exists in the saved client list, if so, the step 303 is executed, otherwise, the step 212 is returned to;
step 303: the bus adapter judges the type of the client with the appointed name, if the client is a local client, the step 304 is executed, and if the client is a remote client, the step 305 is executed;
step 304: setting a kicked mark of the client with the designated name by the bus adapter, putting a kicking success message into a message queue of the kicking client, and returning to the step 212;
step 305: the bus adapter uses the kicking client information to package the client name with the specified name and the kicking client name, sends the client name with the specified name to the client with the specified name, and returns to the step 212;
step 306: the bus adapter judges whether the client with the appointed name exists in the saved client list, if so, the step 307 is executed, otherwise, the step 212 is returned;
step 307: the bus adapter judges the type of the client with the appointed name, if the client is a local client, the step 308 is executed, and if the client is a remote client, the step 309 is executed;
step 308: the bus adapter saves the message to the message queue of the client with the appointed name, and returns to the step 212;
step 309: the bus adapter uses the communication information between the nodes to package the client name and the dialogue information with the appointed name, and sends the client name and the dialogue information to the client with the appointed name, and the step 212 is returned;
step 310: the bus adapter traverses all the clients in the client list, if the type of the client is a local client, the step 311 is executed, and if the type of the client is a remote client, the step 212 is returned;
step 311: the bus adapter stores the broadcast message in the message queue of the client, and returns to step 212;
step 312: the bus adapter finishes the client thread, and returns to step 212;
step 104: the bus adapter receives the message and judges the message type, if the message is a distributed message, step 105 is executed, if the message is a response message of registering the distributed node, step 106 is executed, if the message is an abnormal exit message of the distributed node, step 108 is executed, and if the message is an unknown message, step 109 is executed;
step 105: the bus adapter processes the distributed message;
in this embodiment, an implementation process of step 105 is shown in fig. 4, and specifically includes:
step 401: the bus adapter judges the type of the distributed message, if the message is an inter-node communication message, step 402 is executed, if the message is a registered node message, step 406 is executed, if the message is a broadcast message, step 410 is executed, if the message is a kicked client message, step 412 is executed, if the message is a new client added message, step 416 is executed, and if the message is a client disconnected message, step 419 is executed;
step 402: the bus adapter judges whether the client with the appointed name exists in the saved client list, if so, the step 403 is executed, otherwise, the step 104 is returned to;
step 403: the bus adapter judges the type of the client with the appointed name, if the client is a local client, the step 404 is executed, and if the client is a remote client, the step 405 is executed;
step 404: the bus adapter stores the dialogue message in the message queue of the client with the appointed name, and returns to the step 104;
step 405: the bus adapter uses the communication information between the nodes to package the name and the dialogue information of the client with the appointed name, and sends the name and the dialogue information to the client with the appointed name, and the step 104 is returned;
step 406: the bus adapter stores the address information in the registration node message into a client list, and stores all client names of the registration node into the client list;
step 407: the bus adapter judges the type of the message of the registered node, if the message is the registered information of other distributed nodes, the step 408 is executed, and if the message is the replied response of other distributed nodes, the step 409 is executed;
step 408: the bus adapter encapsulates the local address information and all client names connected locally by using the registration node message and then sends the encapsulated local address information and all client names connected locally to other distributed nodes, and step 409 is executed;
step 409: the bus adapter judges whether the address information in the registered node message is in the monitoring list, if so, the step is returned to 104, otherwise, the bus adapter adds the address information in the registered node message to the monitoring list, and the step is returned to 104;
specifically, the bus adapter inquires whether the address information of the other node in the client list has the received address information of the opposite node, if so, the bus adapter returns to the step 104, and if not, the bus adapter adds the received address information of the opposite node to the address information of the other node in the client list for monitoring;
step 410: the bus adapter traverses all the clients in the client list, if the type of the client is a local client, the step 411 is executed, and if the type of the client is a remote client, the step 104 is returned;
step 411: the bus adapter stores the broadcast message into the message queue of the client, and returns to step 104;
step 412: the bus adapter judges whether the name of the kicked client exists in the stored client list, if so, step 413 is executed, otherwise, step 104 is returned to;
step 413: the bus adapter determines the type of the kicked client, if the kicked client is a local client, step 414 is executed, and if the kicked client is a remote client, step 415 is executed;
step 414: setting a kicked mark of the kicked client by the bus adapter, putting a message of successful kicking into a message queue of the kicked client, and returning to the step 104;
step 415: the bus adapter uses the kicking client information to package the name of the kicked client and the name of the kicking client, sends the name to the kicked client and returns to the step 104;
step 416: the bus adapter judges whether the name of the new client exists in the saved client list, if so, step 417 is executed, otherwise, step 418 is executed;
step 417: the bus adapter sends a message for kicking off the client to the address information corresponding to the new client, and the step 104 is returned;
step 418: the bus adapter saves the name of the new client into a client list, uses a system notification message to package the information added by the client, sends the information to the message queues of all local clients, and returns to the step 104;
step 419: the bus adapter judges whether the client name exists in the saved client list, if so, step 420 is executed, otherwise, step 104 is returned;
step 420: the bus adapter judges the type of the client, if the client is a local client, the step returns to the step 104, and if the client is a remote client, the step 421 is executed;
step 421: the bus adapter deletes the corresponding client name from the client list, uses the system notification message to package the information of the client disconnection and stores the information into the message queues of all local clients, and returns to step 104;
step 106: the bus adapter judges whether the remote address information and the distributed node name in the received response message for registering the distributed node exist in the client list, if yes, the step 107 is executed, otherwise, the step 104 is returned;
step 107: the bus adapter encapsulates the local address information and all client names connected locally by using the registration node message and then sends the encapsulated information to the remote bus adapter corresponding to the remote address information, and the step 104 is returned;
step 108: the bus adapter deletes the address information of the abnormal node and all corresponding client names from the client list, and returns to step 104;
step 109: the bus adapter discards the unknown message and returns to step 104.
EXAMPLE III
A third embodiment of the present invention provides a bus adapter suitable for distributed message transmission, as shown in fig. 5, including:
a generation creating module 11, configured to generate a registration node message according to the stored address information, and create a distributed node;
a searching and sending module 12, configured to search for other distributed nodes except for the newly created distributed node, and send asynchronous information, which generates the registration node message generated by the creating module 11, to all the discovered distributed nodes;
a creating module 13, configured to create a local client connection processing thread;
a receiving and judging module 14, configured to receive a message and judge a message type;
a judging and executing module 15, configured to judge the type of the distributed message and execute a corresponding operation when the receiving and judging module 14 judges that the message type is the distributed message;
a judging module 16, configured to determine whether remote address information and a name of the distributed node in the received response message of the registered distributed node exist in the client list when the receiving and determining module 14 determines that the message type is the response message of the registered distributed node;
an encapsulation sending module 17, configured to determine, by the determining module 16, that the local address information and the locally connected client name are encapsulated by using the registration node message and then sent to the remote bus adapter corresponding to the remote address information, and trigger the receiving and determining module 14;
a deleting module 18, configured to delete the address information of the abnormal node and the corresponding client name from the client list when the receiving and determining module 14 determines that the message type is the distributed node abnormal exit message, and trigger the receiving and determining module 14;
a discarding module 19, configured to discard the unknown message and trigger the receiving determining module 14 when the receiving determining module 14 determines that the message type is the unknown message.
Optionally, in this embodiment, the judgment execution module 15 specifically includes:
a first judging submodule, configured to judge, when the execution module 15 judges that the type of the distributed message is an inter-node communication message, whether the name of the target node client exists in the stored client list, if yes, trigger a third judging submodule, and otherwise trigger the reception judging module 14;
the second judgment submodule is used for judging the type of the target node client;
the first storage submodule is used for the second judgment submodule to judge that the type is the local client, storing the conversation message into a message queue of the client with the specified name and triggering the receiving judgment module 14;
the first encapsulation sending submodule is used for the second judging submodule to judge that the type is the remote client, encapsulating the name and the dialogue message of the target node client by using the inter-node communication message, sending the name and the dialogue message to the target node client and triggering the receiving judging module 14;
optionally, in this embodiment, the judgment execution module 15 specifically includes:
the second saving submodule is configured to, when the determination executing module 15 determines that the distributed message type is the registration node message, save the address information in the registration node message into the client list, and save the client name of the registration node into the client list;
the third judgment submodule is used for judging the type of the registered node information;
the second encapsulation sending submodule is used for the third judging submodule to judge that the type of the registered node information is the registered information of other distributed nodes, and the local address information and the locally connected client name are encapsulated by using the registered node information and then sent to the other distributed nodes;
the fourth judgment submodule is used for the third judgment submodule to judge whether the type of the registered node information is a response replied by other distributed nodes, judge whether the address information in the registered node information is in the monitoring list, if so, trigger the receiving judgment module, and otherwise trigger the adding submodule;
and the adding submodule is used for adding the address information in the registered node information into the monitoring list and triggering the receiving judging module 14.
Optionally, in this embodiment, the judgment execution module 15 specifically includes:
the traversal judgment submodule is used for traversing all the clients in the client list and judging the client type when the judgment execution module 15 judges that the distributed message type is the broadcast message, if the client type is a local client, the third storage submodule is triggered, and if the client type is a remote client, the receiving judgment module is triggered;
and a third storing sub-module, configured to store the broadcast message in a message queue of the client, and trigger the receiving and determining module 14.
Optionally, in this embodiment, the judgment execution module 15 specifically includes:
a fifth judging submodule, configured to, when the judging execution module 15 judges that the type of the distributed message is a kicking client message, judge whether the name of the kicked client exists in the stored client list, if so, trigger the sixth judging submodule, and otherwise trigger the receiving judgment module 14;
the sixth judgment submodule is used for judging the type of the kicked client, triggering the setting storage submodule if the kicked client is the local client, and triggering the third packaging sending submodule if the kicked client is the remote client;
the setting and storing submodule is used for setting the kicked mark of the kicked client and putting the kicked message into a message queue of the kicked client;
and the third encapsulation sending submodule is used for encapsulating the name of the kicked client and the name of the kicked client by using the kicking client message, sending the name to the kicked client and triggering the receiving and judging module 14.
Optionally, in this implementation, the judgment execution module 15 specifically includes:
a seventh judging submodule, configured to, when the judgment execution module 15 judges that the distributed message type is a new client join message, judge whether a name of the new client exists in the stored client list, if yes, trigger the sending submodule, and otherwise trigger the storing and sending submodule;
the sending submodule is used for sending a message of kicking off the client to the bus adapter corresponding to the address information corresponding to the new client and triggering the receiving and judging module;
and the storage and sending submodule is used for storing the name of the new client into a client list, encapsulating the information added by the client by using a system notification message, sending the information to a message queue of the local client and triggering the receiving and judging module.
Optionally, in this implementation, the judgment execution module 15 specifically includes:
an eighth judging submodule, configured to, when the judgment execution module 15 judges that the distributed message type is a client disconnection message, judge whether a name of a disconnected client exists in the stored client list, if yes, trigger the ninth judging submodule, and otherwise trigger the reception judging module;
a ninth judging submodule, configured to judge a type of a disconnected client, trigger the receiving judging module if the disconnected client is a local client, and trigger the deleting saving submodule if the disconnected client is a remote client;
and the deletion and storage submodule is used for deleting the name of the corresponding disconnected client from the client list, using a system notification message to package the disconnected information of the client, storing the disconnected information of the client into the message queues of all local clients, and triggering the receiving and judging module 14.
Optionally, in this embodiment, the creating module 13 specifically includes:
the monitoring submodule is used for monitoring the socket connection of the local client;
the receiving submodule is used for receiving socket connection of a local client;
the prompt receiving submodule is used for prompting a user to input a client name and waiting for receiving;
the tenth judging submodule is used for judging whether the client name received by the prompt receiving submodule is valid or not, if so, the eleventh judging submodule is triggered, and otherwise, the prompt receiving submodule is triggered;
the eleventh judging submodule is used for judging whether the received client name exists in the stored client list, if so, the prompt receiving submodule is triggered, and if not, the encapsulation storing submodule is triggered;
the packaging and storing submodule is used for storing the received client name into a client list, using a system notification message to package the information added by the client and storing the information into message queues of all local clients;
a fourth encapsulation sending submodule, configured to encapsulate, using a new client join message, a message that the client has joined, and send the encapsulated message to other distributed nodes except for the newly created distributed node;
a twelfth judging submodule for judging whether there is user input, if yes, triggering the fourth saving submodule, otherwise triggering the reading judging submodule;
the fourth storage submodule is used for placing the message input by the user into the message queue of the current client and triggering the reading judgment submodule;
the reading judgment submodule is used for reading the kicked mark of the current client, judging whether the current client is kicked or not according to the kicked mark, if so, triggering the notification ending submodule, and otherwise, triggering the reading judgment submodule;
the notification ending submodule is used for notifying the current client that the current client is kicked off and forcibly ending the current client thread;
the reading judgment submodule is used for reading a message from a message queue of the current client, judging the type of the message, triggering the first printing submodule if the message is a system notification message, triggering the second printing submodule if the message is a local client private message, triggering the third printing submodule if the message is a local broadcast message, and triggering the processing submodule if the message is a command message;
a first printing sub-module for printing a system notification message;
the second printing sub-module is used for printing the private message of the local client;
a third printing sub-module for printing the local broadcast message;
and the processing submodule is used for processing the command message.
Optionally, in this embodiment, the processing sub-module specifically includes:
the first judging unit is used for judging the type of the command message, if the command message is a message for kicking off a client with a specified name, the second judging unit is triggered, if the command message is a message for sending to the client with the specified name, the fourth judging unit is triggered, if the command message is a broadcast message, the traversal judging unit is triggered, and if the command message is a message for exiting the bus system, the ending unit is triggered;
the second judgment unit is used for judging whether the client kicking the designated name exists in the stored client list, if so, the third judgment unit is triggered, and if not, the reading judgment sub-module is triggered;
the third judging unit is used for judging the type of the client with the designated name kicked off, triggering the setting storage unit if the client is a local client, and triggering the first packaging sending unit if the client is a remote client;
the setting and storing unit is used for setting a kicked mark of the client with the kicked name, putting a kicking success message into a message queue of the kicking client and triggering the reading judgment submodule;
the first encapsulation sending unit is used for encapsulating the name of the client with the kicked-off specified name and the name of the kicked-off client by using the kicked-off client message, sending the name to the client with the kicked-off specified name and triggering the reading judgment submodule;
the fourth judging unit is used for judging whether the client with the specified name exists in the stored client list or not, if so, the fifth judging unit is triggered, and if not, the reading judging submodule is triggered;
the fifth judging unit is used for judging the type of the client with the specified name, triggering the first storage unit if the client is a local client, and triggering the second packaging sending unit if the client is a remote client;
the first storage unit is used for storing the conversation message into a message queue of a client with a specified name and triggering the reading judgment submodule;
the second packaging and sending unit is used for packaging the client name with the specified name and the dialogue message by using the inter-node communication message, sending the client name with the specified name and the dialogue message to the client with the specified name and triggering the reading judgment submodule;
the traversal judgment unit is used for traversing all the clients in the client list, triggering the second storage unit if the type of the client is a local client, and triggering the reading judgment submodule if the type of the client is a remote client;
the second storage unit is used for storing the broadcast message into a message queue of the client and triggering the reading judgment sub-module;
and the ending unit is used for ending the client thread and triggering the reading judgment submodule.
The above description is only for the preferred embodiment of the present invention, but the scope of the present invention is not limited thereto, and any changes or substitutions that can be easily conceived by those skilled in the art within the technical scope of the present invention are included in the scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.
Claims (16)
1. A bus adapter adapted for distributed message transmission, comprising:
the generation and creation module is used for generating a registration node message according to the stored address information and creating a distributed node;
the searching and sending module is used for searching other distributed nodes except the newly created distributed nodes and sending asynchronous information for generating the register node message generated by the creating module to all the found distributed nodes;
the creating module is used for creating a local client connection processing thread;
the receiving and judging module is used for receiving the message and judging the type of the message;
the judging and executing module is used for judging the type of the distributed message and executing corresponding operation when the receiving and judging module judges that the message type is the distributed message;
the judging module is used for judging whether the remote address information and the name of the distributed node in the received response message of the registered distributed node exist in the client list or not when the receiving judging module judges that the message type is the response message of the registered distributed node;
the packaging and sending module is used for the judging module to judge that the local address information and the locally connected client name are packaged by using the registration node message and then sent to the remote bus adapter corresponding to the remote address information, and the receiving and judging module is triggered;
the deleting module is used for deleting the address information of the abnormal node and all corresponding client names from the client list when the receiving and judging module judges that the message type is the distributed node abnormal exit message, and triggering the receiving and judging module;
a discarding module, configured to discard the unknown message and trigger the receiving and determining module when the receiving and determining module determines that the message type is the unknown message;
the judgment execution module specifically comprises:
a first judging submodule, configured to, when the judgment execution module judges that the type of the distributed message is an inter-node communication message, judge whether a name of a target node client exists in a stored client list, if so, trigger a second judging submodule, and otherwise trigger a reception judging module;
the second judging submodule is used for judging the type of the target node client;
the first storage submodule is used for the second judgment submodule to judge that the type is the local client, storing the conversation message into the message queue of the client with the specified name and triggering the receiving judgment module;
and the first packaging and sending submodule is used for packaging the name and the dialogue message of the target node client by using the inter-node communication message when the second judging submodule judges that the type is the remote client, sending the name and the dialogue message to the target node client and triggering the receiving and judging module.
2. The bus adapter according to claim 1, wherein the judgment execution module specifically comprises:
the second storage submodule is used for storing the address information in the registration node message into the client list and storing the client name of the registration node into the client list when the judging execution module judges that the distributed message type is the registration node message;
the third judgment submodule is used for judging the type of the registered node information;
the second encapsulation sending submodule is used for the third judging submodule to judge that the type of the registered node information is the registered information of other distributed nodes, and sending the local address information and the locally connected client name to other distributed nodes after encapsulating the local address information and the locally connected client name by using the registered node information;
a fourth judgment sub-module, configured to judge, by the third judgment sub-module, that the type of the registered node information is a response replied by other distributed nodes, judge whether address information in the registered node information is in a monitoring list, if yes, trigger the reception judgment module, and otherwise trigger an addition sub-module;
and the adding submodule is used for adding the address information in the registered node information into the monitoring list and triggering the receiving judging module.
3. The bus adapter according to claim 1, wherein the judgment execution module specifically comprises:
a traversal judgment sub-module, configured to traverse all the clients in the client list and judge a client type when the judgment execution module judges that the distributed message type is a broadcast message, trigger the third saving sub-module if the client type is a local client, and trigger the reception judgment module if the client type is a remote client;
and the third storage submodule is used for storing the broadcast message into a message queue of the client and triggering the receiving judgment module.
4. The bus adapter according to claim 1, wherein the judgment execution module specifically comprises:
a fifth judging submodule, configured to, when the judgment execution module judges that the distributed message type is a kicked-off client message, judge whether a name of a kicked-off client exists in a stored client list, if yes, trigger the sixth judging submodule, and otherwise trigger the reception judging module;
the sixth judgment submodule is used for judging the type of the kicked client, triggering the setting storage submodule if the kicked client is a local client, and triggering the third packaging sending submodule if the kicked client is a remote client;
the setting and storing submodule is used for setting the kicked mark of the kicked client side and putting the kicked message into a message queue of the kicked client side;
and the third packaging and sending submodule is used for packaging the name of the kicked client and the name of the kicked client by using a kicking client message, sending the name to the kicked client and triggering the receiving and judging module.
5. The bus adapter according to claim 1, wherein the judgment execution module specifically comprises:
a seventh judging submodule, configured to, when the judgment execution module judges that the distributed message type is a new client join message, judge whether a name of a new client exists in a stored client list, if so, trigger the sending submodule, and otherwise, trigger the storing and sending submodule;
the sending submodule is used for sending a message of kicking off the client to the bus adapter corresponding to the address information corresponding to the new client and triggering the receiving judgment module;
and the storage and sending submodule is used for storing the name of the new client into the client list, encapsulating the information added by the client by using a system notification message, sending the information to the information queue of the local client and triggering the receiving and judging module.
6. The bus adapter according to claim 1, wherein the judgment execution module specifically comprises:
an eighth judging submodule, configured to, when the judgment execution module judges that the distributed message type is a client disconnection message, judge whether a name of a disconnected client exists in a stored client list, if yes, trigger the ninth judging submodule, and otherwise trigger the reception judging module;
the ninth judging submodule is used for judging the type of the disconnected client, triggering the receiving judging module if the disconnected client is a local client, and triggering the deleting and storing submodule if the disconnected client is a remote client;
and the deletion and storage submodule is used for deleting the name of the corresponding disconnected client from the client list, using a system notification message to package the disconnected information of the client, storing the disconnected information of the client into the message queues of all local clients, and triggering the receiving and judging module.
7. The bus adapter of claim 1, wherein the creating module specifically comprises:
the monitoring submodule is used for monitoring the socket connection of the local client;
a receiving submodule, configured to receive a socket connection of the local client;
the prompt receiving submodule is used for prompting a user to input a client name and waiting for receiving;
a tenth judging submodule, configured to judge whether the client name received by the prompt receiving submodule is valid, if so, trigger the eleventh judging submodule, and otherwise, trigger the prompt receiving submodule;
the eleventh judging submodule is used for judging whether the received client name exists in a stored client list, if so, the receiving submodule is triggered to be prompted, and if not, the storing submodule is triggered to be packaged;
the packaging and storing submodule is used for storing the received client names into the client list, using a system notification message to package the information added by the client and storing the information into message queues of all local clients;
a fourth encapsulation sending submodule, configured to encapsulate, using a new client join message, a message that the client has joined, and send the encapsulated message to the other distributed nodes except for the newly created distributed node;
a twelfth judging submodule for judging whether there is user input, if yes, triggering the fourth saving submodule, otherwise triggering the reading judging submodule;
the fourth storage submodule is used for placing the message input by the user into the message queue of the current client and triggering the reading judgment submodule;
the reading judgment submodule is used for reading the kicked mark of the current client, judging whether the current client is kicked or not according to the kicked mark, if so, triggering the notification ending submodule, and otherwise, triggering the reading judgment submodule;
the notification ending submodule is used for notifying the current client that the current client is kicked off and forcibly ending the current client thread;
the reading judgment submodule is used for reading a message from a message queue of the current client, judging the type of the message, triggering the first printing submodule if the message is a system notification message, triggering the second printing submodule if the message is a local client private message, triggering the third printing submodule if the message is a local broadcast message, and triggering the processing submodule if the message is a command message;
the first printing sub-module is used for printing the system notification message;
the second printing sub-module is used for printing the local client private message;
the third printing sub-module is used for printing the local broadcast message;
and the processing submodule is used for processing the command message.
8. The bus adapter of claim 7, wherein the processing submodule specifically comprises:
the first judging unit is used for judging the type of the command message, triggering the second judging unit if the command message is a message for kicking off a client with a specified name, triggering the fourth judging unit if the command message is a message for sending to the client with the specified name, triggering the traversal judging unit if the command message is a broadcast message, and triggering the ending unit if the command message is a message for exiting the bus system;
the second judging unit is used for judging whether the client kicking the designated name exists in the stored client list, if so, the third judging unit is triggered, and if not, the reading judging submodule is triggered;
the third judging unit is used for judging the type of the client with the designated name kicked off, triggering the setting storage unit if the client is a local client, and triggering the first packaging sending unit if the client is a remote client;
the setting storage unit is used for setting a kicked mark of the client with the kicked name, putting a kicking success message into a message queue of the kicking client and triggering the reading judgment submodule;
the first packaging and sending unit is used for packaging the name of the client with the kicked-off specified name and the name of the kicked-off client by using the kicked-off client message, sending the name to the client with the kicked-off specified name and triggering the reading judgment submodule;
the fourth judging unit is used for judging whether the client with the specified name exists in the stored client list, if so, the fifth judging unit is triggered, and if not, the reading judging submodule is triggered;
the fifth judging unit is used for judging the type of the client with the specified name, triggering the first storage unit if the client is a local client, and triggering the second packaging and sending unit if the client is a remote client;
the first storage unit is used for storing the conversation message into a message queue of a client with a specified name and triggering the reading judgment submodule;
the second packaging and sending unit is used for packaging the client name with the specified name and the dialogue message by using the inter-node communication message, sending the client name with the specified name and the dialogue message to the client with the specified name and triggering the reading judgment submodule;
the traversal judging unit is used for traversing all the clients in the client list, triggering the second storage unit if the type of the client is a local client, and triggering the reading judging submodule if the type of the client is a remote client;
the second storage unit is used for storing the broadcast message into a message queue of a client and triggering a reading judgment submodule;
and the ending unit is used for ending the client thread and triggering the reading judgment submodule.
9. A method for distributed messaging, comprising:
step S1: the bus adapter generates a registration node message according to the stored address information and creates a distributed node;
step S2: the bus adapter searches other distributed nodes except the newly created distributed node and sends asynchronous information of the registered node message to all the discovered distributed nodes;
step S3: the bus adapter creates a local client connection processing thread;
step S4: the bus adapter receives the message and judges the type of the message, if the message is a distributed message, the step S5 is executed, if the message is a response message for registering the distributed node, the step S6 is executed, if the message is an abnormal exit message of the distributed node, the step S7 is executed, and if the message is an unknown message, the step S8 is executed;
step S5: the bus adapter judges the type of the distributed message and executes corresponding operation;
step S6: the bus adapter judges whether the remote address information and the distributed node name in the received response message for registering the distributed node exist in the client list, if so, the bus adapter encapsulates the local address information and all the locally connected client names by using the register node message and then sends the encapsulated local address information and all the locally connected client names to the remote bus adapter corresponding to the remote address information, otherwise, the step S4 is returned;
step S7: the bus adapter deletes the address information of the abnormal node and all corresponding client names from the client list, and returns to the step S4;
step S8: the bus adapter discards the unknown message and returns to step S4;
the step S5 is executed if the distributed message type is an inter-node communication message, the step a1 is executed;
step A1: the bus adapter judges whether the name of the target node client exists in the stored client list, if so, the step A2 is executed, otherwise, the step S4 is returned;
step A2: the bus adapter judges the type of the target node client, if the client is a local client, the step A3 is executed, and if the client is a remote client, the step A4 is executed;
step A3: the bus adapter saves the dialogue message to the message queue of the client with the appointed name, and the step S4 is returned;
step A4: and the bus adapter uses inter-node communication information to package the name and the dialogue information of the target node client, sends the name and the dialogue information to the target node client, and returns to the step S4.
10. The method of claim 9, wherein the step S5 further comprises: when the distributed message type is a registered node message, executing step B1;
step B1: the bus adapter stores address information in the registration node message into the client list, and stores all client names of the registration node into the client list;
step B2: the bus adapter judges the type of the register node message, if the register node message is the register information of other distributed nodes, the step B3 is executed, and if the register node message is the register information of other distributed nodes, the step B4 is executed;
step B3: the bus adapter encapsulates the local address information and all client names connected locally by using the registration node message and then sends the encapsulated local address information and all client names to other distributed nodes, and step B4 is executed;
step B4: the bus adapter judges whether the address information in the registered node message is in the monitoring list, if so, the step returns to S4, otherwise, the bus adapter adds the address information in the registered node message to the monitoring list, and the step returns to S4.
11. The method of claim 9, wherein the step S5 further comprises: when the distributed message type is a broadcast message, executing step C1;
step C1: the bus adapter traverses all the clients in the client list and judges the types of the clients, if the type of the client is a local client, the step C2 is executed, and if the type of the client is a remote client, the step S4 is returned;
step C2: the bus adapter saves the broadcast message to the message queue of the client, and returns to step S4.
12. The method of claim 9, wherein the step S5 further comprises: when the distributed message type is the kicking client message, executing step D1;
step D1: the bus adapter judges whether the name of the kicked client exists in the stored client list, if so, the step D2 is executed, otherwise, the step S4 is returned;
step D2: the bus adapter judges the type of the kicked client, if the kicked client is a local client, the step D3 is executed, and if the kicked client is a remote client, the step D4 is executed;
step D3: setting a kicked mark of the kicked client by the bus adapter, putting a message of successful kicking into a message queue of the kicked client, and returning to the step S4;
step D4: and the bus adapter encapsulates the name of the kicked client and the name of the kicked client by using a kicking client message, sends the name of the kicked client to the kicked client and returns to the step S4.
13. The method of claim 9, wherein the step S5 further comprises: when the distributed message type is a new client join message, executing step E1;
step E1: the bus adapter judges whether the name of the new client exists in the saved client list, if so, the step E2 is executed, otherwise, the step E3 is executed;
step E2: the bus adapter sends a message of kicking the client to the bus adapter corresponding to the address information corresponding to the new client, and the step S4 is returned;
step E3: the bus adapter saves the name of the new client into the client list, uses the system notification message to package the message added by the client, sends the message to the message queues of all local clients, and returns to step S4.
14. The method of claim 9, wherein the step S5 further comprises: when the distributed message type is the client disconnection message, executing step F1;
step F1: the bus adapter judges whether the name of the disconnected client exists in the saved client list, if so, the step F2 is executed, otherwise, the step S4 is returned;
step F2: the bus adapter judges the type of the disconnected client, if the disconnected client is a local client, the step returns to the step S4, and if the disconnected client is a remote client, the step F3 is executed;
step F3: the bus adapter deletes the name of the disconnected client from the client list, encapsulates the information of the client disconnection using a system notification message, stores the information into the message queues of all local clients, and returns to step S4.
15. The method according to claim 9, wherein the step S3 specifically includes:
step G1: the bus adapter listens for local client socket connections;
step G2: the bus adapter receives a socket connection of the local client;
step G3: the bus adapter prompts a user to input a client name and waits for receiving;
step G4: the bus adapter judges whether the received client name is valid, if so, the step G5 is executed, otherwise, the step G3 is returned;
step G5: the bus adapter judges whether the received client name exists in the saved client list, if so, the step G3 is returned, otherwise, the step G6 is executed;
step G6: the bus adapter stores the received client name into the client list, and uses a system notification message to package the information added by the client and stores the information into message queues of all local clients;
step G7: the bus adapter uses a new client joining message to package the joined message of the client and sends the joined message to other distributed nodes except the newly created distributed nodes;
step G8: the bus adapter judges whether user input exists, if yes, the step G9 is executed, otherwise, the step G10 is executed;
step G9: the bus adapter puts the message input by the user into the message queue of the current client, and executes the step G10;
step G10: the bus adapter reads the kicked mark of the current client, judges whether the current client is kicked or not according to the kicked mark, if so, executes the step G11, otherwise, executes the step G12;
step G11: the bus adapter informs the current client that the current client is kicked off and forcibly ends the current client thread;
step G12: the bus adapter reads a message from the message queue of the current client, judges the type of the message, executes the step G13 if the message is a system notification message, executes the step G14 if the message is a local client private message, executes the step G15 if the message is a local broadcast message, and executes the step G16 if the message is a command message;
step G13: the bus adapter printing the system notification message;
step G14: the bus adapter prints the local client private message;
step G15: the bus adapter prints the local broadcast message;
step G16: the bus adapter processes the command message.
16. The method according to claim 15, wherein the step G16 specifically comprises:
step G16-1: the bus adapter judges the type of the command message, if the command message is a message for kicking off a client with a specified name, the step H1 is executed, if the command message is a message for sending to the client with the specified name, the step I1 is executed, if the command message is a broadcast message, the step J1 is executed, and if the command message is a message for exiting the bus system, the step K1 is executed;
step H1: the bus adapter judges whether the client with the designated name is kicked off and exists in the stored client list, if so, the step H2 is executed, otherwise, the step G12 is returned;
step H2: the bus adapter judges the type of the client with the designated name, if the client is the local client, the step H3 is executed, and if the client is the remote client, the step H4 is executed;
step H3: setting a kicked mark of the client with the kicked name by the bus adapter, putting a kicking success message into a message queue of the kicked client, and returning to the step G12;
step H4: the bus adapter uses a kicking client message to encapsulate the name of the client with the kicking designated name and the name of the kicking client, sends the name to the client with the kicking designated name, and returns to the step G12;
step I1: the bus adapter judges whether the client with the appointed name exists in the saved client list, if so, the step I2 is executed, otherwise, the step G12 is returned;
step I2: the bus adapter judges the type of the client with the appointed name, if the client is a local client, the step I3 is executed, and if the client is a remote client, the step I4 is executed;
step I3: the bus adapter stores the dialogue message into a message queue of the client with the specified name, and the step G12 is returned;
step I4: the bus adapter uses inter-node communication information to package the client name and the dialogue information with the appointed name, sends the client name and the dialogue information to the client with the appointed name, and returns to the step G12;
step J1: the bus adapter traverses all the clients in the client list, if the type of the client is a local client, the step J2 is executed, and if the type of the client is a remote client, the step G12 is returned;
step J2: the bus adapter stores the broadcast message into a message queue of the client, and the step G12 is returned;
step K1: the bus adapter finishes the client thread and returns to step G12.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911337784.6A CN111130999B (en) | 2019-12-23 | 2019-12-23 | Method and bus adapter suitable for distributed message transmission |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911337784.6A CN111130999B (en) | 2019-12-23 | 2019-12-23 | Method and bus adapter suitable for distributed message transmission |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111130999A CN111130999A (en) | 2020-05-08 |
CN111130999B true CN111130999B (en) | 2021-08-31 |
Family
ID=70501198
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911337784.6A Active CN111130999B (en) | 2019-12-23 | 2019-12-23 | Method and bus adapter suitable for distributed message transmission |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111130999B (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101917394A (en) * | 2010-06-13 | 2010-12-15 | 大连海事大学 | Middleware system for sharing data in mobile phone equipment and working method |
CN103379021A (en) * | 2012-04-24 | 2013-10-30 | 中兴通讯股份有限公司 | Method and system for achieving distributed message queue |
CN104092767A (en) * | 2014-07-21 | 2014-10-08 | 北京邮电大学 | Posting/subscribing system for adding message queue models and working method thereof |
CN105338086A (en) * | 2015-11-04 | 2016-02-17 | 浪潮软件股份有限公司 | Distributed message forwarding method |
CN107197015A (en) * | 2017-05-23 | 2017-09-22 | 阿里巴巴集团控股有限公司 | A kind of message treatment method and device based on Message Queuing system |
CN109558789A (en) * | 2018-10-09 | 2019-04-02 | 珠海亿联德源信息技术有限公司 | A kind of biological characteristic system for rapidly identifying based on distributed computing |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10728181B2 (en) * | 2017-03-27 | 2020-07-28 | Dell Products, L.P. | Advanced message queuing protocol (AMQP) message broker and messaging client interactions via dynamic programming commands using message properties |
-
2019
- 2019-12-23 CN CN201911337784.6A patent/CN111130999B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101917394A (en) * | 2010-06-13 | 2010-12-15 | 大连海事大学 | Middleware system for sharing data in mobile phone equipment and working method |
CN103379021A (en) * | 2012-04-24 | 2013-10-30 | 中兴通讯股份有限公司 | Method and system for achieving distributed message queue |
CN104092767A (en) * | 2014-07-21 | 2014-10-08 | 北京邮电大学 | Posting/subscribing system for adding message queue models and working method thereof |
CN105338086A (en) * | 2015-11-04 | 2016-02-17 | 浪潮软件股份有限公司 | Distributed message forwarding method |
CN107197015A (en) * | 2017-05-23 | 2017-09-22 | 阿里巴巴集团控股有限公司 | A kind of message treatment method and device based on Message Queuing system |
CN109558789A (en) * | 2018-10-09 | 2019-04-02 | 珠海亿联德源信息技术有限公司 | A kind of biological characteristic system for rapidly identifying based on distributed computing |
Also Published As
Publication number | Publication date |
---|---|
CN111130999A (en) | 2020-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101806257B1 (en) | Method and apparatus for implementing subscription notification | |
JP2001168903A (en) | Method for operating electronic mail sent out already and corresponding server | |
CN104811459A (en) | Processing method, processing device and system for message services and message service system | |
CN101317474A (en) | Message conversion equipment, system and conversion method | |
CN110545206B (en) | Method, device and system for generating scheduling table in time-triggered network | |
US20010047390A1 (en) | Messaging system for computers | |
CN101686176A (en) | Method and device for transmitting and receiving message | |
CN111245776A (en) | Vehicle-mounted data transmission method, device, equipment and storage medium | |
CN101571811B (en) | Information transmission method and device thereof | |
WO2023221452A1 (en) | Packet processing system and method, device, and storage medium | |
CN109379764B (en) | Message sending method and device | |
CN105635083A (en) | Service processing method and service processing system based on server and client architecture | |
JP2014123363A5 (en) | ||
EP3174318A1 (en) | Method for realizing resource attribute notification, and common service entity | |
WO2015168981A1 (en) | Attribute operating method and apparatus | |
CN111130999B (en) | Method and bus adapter suitable for distributed message transmission | |
EP2448226A1 (en) | Mobile phone messages processing method and mobile phone | |
CN113890891A (en) | Data sharing interaction method and device of energy cloud network | |
CN110858829A (en) | Video processing method, device and system, analysis server and transcoding server | |
CN100466635C (en) | Method and apparatus for transmitting message | |
CN115865886A (en) | Cross-network data interaction method and device based on HTTP | |
WO2010015172A1 (en) | Method for converting and obtaining mail, mail server, client and system thereof | |
CN114553956A (en) | Data transmission method and system based on UEP middleware | |
CN102237993A (en) | MMS (multimedia message) receiving/transmission retry method and device | |
CN111130968A (en) | Method and terminal for solving Modbus bus communication packet sticking |
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 |