CN103856393B - Distributed message middleware system and its operation method based on database - Google Patents

Distributed message middleware system and its operation method based on database Download PDF

Info

Publication number
CN103856393B
CN103856393B CN201310287640.0A CN201310287640A CN103856393B CN 103856393 B CN103856393 B CN 103856393B CN 201310287640 A CN201310287640 A CN 201310287640A CN 103856393 B CN103856393 B CN 103856393B
Authority
CN
China
Prior art keywords
message
component
container
persistent
database
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
Application number
CN201310287640.0A
Other languages
Chinese (zh)
Other versions
CN103856393A (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.)
Shanghai Ctrip Business Co Ltd
Original Assignee
Shanghai Ctrip Business 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 Shanghai Ctrip Business Co Ltd filed Critical Shanghai Ctrip Business Co Ltd
Priority to CN201310287640.0A priority Critical patent/CN103856393B/en
Publication of CN103856393A publication Critical patent/CN103856393A/en
Application granted granted Critical
Publication of CN103856393B publication Critical patent/CN103856393B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention discloses a kind of distributed message middleware system and its operation method based on database.The distributed message middleware system includes message collection component, database, message distribution component and message exchange component, and database includes message container;Message collection component is used to receive the message from the message producer and gives message exchange component;Message distribution component is used to receive the consumer requests from message consumer and gives message exchange component;Message exchange component is used to the message from message collection component being stored in message container, is additionally operable to read message from message container according to consumer requests and give message distribution component to be consumed to supply message consumer.Present invention incorporates the reliability of database, high availability, transactional and the advantages of be easy to the asynchronism and application decoupling of O&M and Message Queuing Services, and considerably improve the runnability in the business scenario in face of high concurrent.

Description

Distributed message middleware system and its operation method based on database
Technical field
The present invention relates to a kind of Distributed Message Queue service, more particularly, to a kind of distributed message based on database The operation method of middleware system and the distributed message middleware system.
Background technology
Relevant database is the conventional data storage scheme of enterprise application system, with reliability, availability, affairs, The characteristics such as the resource contention of optimization, simultaneously because obtaining the reason largely used, enterprise generally all has abundant database fortune Dimension experience, thus it is also easy to O&M and management.But relevant database performance when in face of high concurrent, the business of high-throughput Perform poor.
Message Queuing Services are the common approach that asynchronous communication is realized between enterprise applies, and are generally handled up with asynchronous, high Amount, using decoupling the advantages of.In order to support the reliable of message to submit, Message Queuing Services need message carrying out persistence, but It is due to the birth defect of relevant database, persistence scheme is typically all voluntarily in conventional Message Queuing Services system Exploitation, seldom using existing relational database, which greatly enhances the complexity of programming, to the O&M and prison of message system Control is also very inconvenient.And the scheme of persistence is realized using relational database on a small quantity, although in programming complexity and later stage O&M On have convenience, but can occur serious performance issue in the business scenario in face of high concurrent.
The content of the invention
The technical problem to be solved in the present invention is to utilize the lasting of database realizing message in the prior art to overcome During change, the defect of serious performance issue can occur in the business scenario in face of high concurrent there is provided a kind of based on database The operation method of distributed message middleware system and the distributed message middleware system, it combines the reliable of database Property, high availability, transactional and the advantages of be easy to the asynchronism and application decoupling of O&M and Message Queuing Services, and show Improve the runnability in the business scenario in face of high concurrent with writing.
The present invention is to solve above-mentioned technical problem by following technical proposals:
A kind of distributed message middleware system based on database, its feature is, the distributed message middleware system System includes message collection component, database, message distribution component and message exchange component,
Database includes message container, and message container is stored by corresponding with there being the message table of message in database Message;
Message collection component is used to receive the message from the message producer and gives message exchange component;
Message distribution component is used to receive the consumer requests from message consumer and gives message exchange component;
Message exchange component is used to the message from message collection component being stored in message container, and being additionally operable to please according to consumption Ask to read message from message container and give message distribution component and consumed with supplying message consumer.
In the present invention, mutually bound between message exchange component and message container, message exchange component is only to tying up Message is stored in fixed message container and message is only read from the message container of binding.
During message collection:The message producer sends to message collection component includes message friendship in message, message Change the message datas such as address, message subject and message content;Message collection component is selected according to the message exchange address received Message exchange component is selected, and selected message exchange component is given by message and is handled;Chosen message exchange component will Message is stored in message container, so as to complete collection.
During message distribution:Message consumer is initiated in information consumption request, consumer requests to message distribution component Include the information such as consumer identification, message exchange address, the message subject of consumption;Message distribution component is according to message exchange Location selects message exchange component, and transfers to selected message exchange component to be handled consumer requests;Chosen message is handed over Change component and qualified message is taken out from the message container of binding, and return to message consumer.
Message container is the logical partitioning to database, and it is responsible for preserving message data persistence, to ensure message Reliability.The physical data table of each message container and the message that is stored with database(That is message table)Correspondence, because This is it may also be said that all message being stored with its that corresponding physical data table in each message container.
Message exchange component in the present invention supports point-to-point(Queue)Message exchange semanteme and publish/subscribe(pub/ sub)Message exchange is semantic, identical with traditional message components intension herein, therefore does not repeat.
It is preferred that the distributed message middleware system also includes manufacturing side Message Agent and consumption terminal Message Agent, disappear The producer is ceased by manufacturing side Message Agent and message collection assembly communication, and message consumer is by consumption terminal Message Agent with disappearing Cease distributed components communication.
Delivering, collection, translation, filtering, mapping and the route of data necessary to Message Agent mainly provides application integration Etc. function, its can shield wide gap and difference between different hardware platforms, database, message format, communication protocol there is provided It is applied to efficient, easily communication capacity between application.
It is preferred that the quantity of message exchange component is one or more, each message exchange component and one or more numbers According to the message container binding in storehouse, the quantity of the message container in each database be it is one or more, message collection component and/ Or the quantity of message distribution component is one or more.
The distribution of multiple message containers can share the pressure in different messages exchanging address in same database, it is ensured that System even running;When database turns into access bottleneck, the distributions of multiple databases being capable of sharing system pressure, it is ensured that system Even running.And each message exchange component then can both have been bound with one or more of database message container, Can be with the message container in multiple databases(Can equally there are one or more message containers in each database)Binding.
Multiple message collection components then realize the horizontal extension of message collection service, in the pressure from the message producer When big, just the disposal ability of message collection can be extended by increasing the quantity of message collection component.Similarly, multiple message Distributed components then realize the horizontal extension of message distribution services, when consumer requests amount is big, just can be by increasing message point Send out the quantity of component to realize the load balancing of message distribution services, so as to improve the availability of system.
It is preferred that the quantity of message container is multiple, each message container is respectively provided with for characterizing in the message container The weight of the hit rate of message, message exchange component is used to select to be stored in the message container of message according to weight and reads message Message container, to accelerate database processing speed and balance the load ratio between each database.
If the cocommutative message number of message exchange component is too many, in order to improve message throughput, and also to not Too big pressure is brought to database, each message exchange component can be bound with multiple message containers, and the plurality of message is held Device is distributed in multiple databases, and when needing deposit message, message exchange component can select one according to the weight of message container Individual message container is simultaneously stored in message.
It is preferred that message collection component is used to receive the message from the message producer and is put into local cache queue, only Just message exchange component is given when full or timer expires for local cache queue by the message in local cache queue.
Timer herein is used to determine certain time interval, and the present invention is not limited the specific value of the time interval System.Do not write direct when message is stored in into message container, but use above-mentioned asynchronous system to realize, expire when timer or When the queue of person's local cache is expired, message is just stored in message container by special write-in thread, can so ensure message While throughput, the access pressure of database is substantially reduced.
It is preferred that message exchange component read from message container bulk messages and be cached in message distribution component for Consumed to message consumer.
It is preferred that the distributed message middleware system also includes monitor component, monitor component is used for:Each message is held The message that message distribution component has been given in device is recorded, and in the case of using multiple message distribution components, this is possible to Prevent same message by Double Spending;And/or, storage location to the message of having given message distribution component and hand over extremely Message distribution component is recorded, and in the case of using multiple message distribution components, each message distribution component is at oneself Batch in the range of consumed, just can solve multiple message distribution components and meanwhile consume message the problem of;And/or, to Give the message consumed in the bulk messages of message distribution component to be recorded, this is just realized to current in bulk messages The mark of the position for the message consumed, all can be from the position of this current mark after consumption time-out or program crashing Place starts consumption, and this mark can be also used for retransmitting message, thus just improve the reliability of system.
Present invention also offers a kind of operation method of the distributed message middleware system based on database, its feature exists In, the distributed message middleware system includes message collection component, database, message distribution component and message exchange component, Database includes message container, and message container stores message by corresponding with there being the message table of message in database;
The operation method includes:
S1, message collection component receive the message from the message producer and give message exchange component;
Message from message collection component is stored in message container by S2, message exchange component;
S3, message distribution component receive the consumer requests from message consumer and give message exchange component;
S4, message exchange component message is read from message container according to consumer requests and give message distribution component for Consumed to message consumer.
It is preferred that the distributed message middleware system also includes manufacturing side Message Agent and consumption terminal Message Agent, disappear The producer is ceased by manufacturing side Message Agent and message collection assembly communication, and message consumer is by consumption terminal Message Agent with disappearing Cease distributed components communication.
It is preferred that the quantity of message exchange component is one or more, each message exchange component and one or more numbers According to the message container binding in storehouse, the quantity of the message container in each database be it is one or more, message collection component and/ Or the quantity of message distribution component is one or more.
It is preferred that the quantity of message container is multiple, each message container is respectively provided with for characterizing in the message container The weight of the hit rate of message, message exchange component is used to select to be stored in the message container of message according to weight and reads message Message container.
It is preferred that S1 includes:
S11, message collection component receive the message from the message producer and are put into local cache queue;
S12, judging whether to meet local cache queue, full or timer expires, if then entering S13, if otherwise again Perform S12;
Message in local cache queue is given message exchange component by S13, message collection component.
It is preferred that message exchange component read from message container bulk messages and be cached in message distribution component for Consumed to message consumer.
It is preferred that the distributed message middleware system also includes monitor component, monitor component is performed:Each message is held The message that message distribution component has been given in device is recorded;And/or, the storage position of the message to having given message distribution component Put and hand over message distribution component extremely to be recorded;And/or, in the bulk messages to having given message distribution component by The message of consumption is recorded.
On the basis of common sense in the field is met, above-mentioned each optimum condition can be combined, and produce each preferable reality of the present invention Example.
The positive effect of the present invention is:Present invention incorporates the reliability of database, high availability, transactional and The advantages of being easy to the asynchronism and application decoupling of O&M and Message Queuing Services, and considerably improve in face of it is high simultaneously The runnability during business scenario of hair.
Brief description of the drawings
Fig. 1 is the structured flowchart of the distributed message middleware system of the present invention.
Fig. 2 for the present invention between message exchange component and message container one-to-one mapping schematic diagram.
Fig. 3 in the present invention between message exchange component and message container single one-to-many mapping in storehouse schematic diagram.
Fig. 4 for the present invention between message exchange component and message container many one-to-many mappings in storehouse schematic diagram.
Fig. 5 is the flow chart of the message collection process of the present invention.
Fig. 6 is the flow chart of the message distribution process of the present invention.
Fig. 7 is the schematic diagram of the application example 1 of the present invention.
Fig. 8 is the schematic diagram of the application example 2 of the present invention.
Fig. 9 is the schematic diagram of the application example 3 of the present invention.
Embodiment
The present invention is further illustrated below by the mode of embodiment, but does not therefore limit the present invention to described reality Apply among a scope.
A kind of distributed message middleware system based on database is present embodiments provided, as shown in figure 1, the distribution Message-oriented middleware system includes message collection component 1, database 2, message distribution component 3 and message exchange component 4.
Database 2 includes message container 21, and message container 21 passes through corresponding with there being the message table of message in database And store message;
Message collection component 1 is used to receive the message from the message producer and give message exchange component 4 to be handled;
Message distribution component 3 is used to receive the consumer requests from message consumer and give message exchange component 4 to carry out Processing;
Message exchange component 4 is used to the message from message collection component 1 being stored in message container 21, is additionally operable to basis and disappears Expense request reads message from message container 21 and gives message distribution component 3 and consumed with supplying message consumer.
In the present embodiment, the quantity of message exchange component can be to be one or more, and each message exchange component can be with Bound with the message container in one or more databases, the quantity of the message container in each database can be one or many It is individual.In addition, the quantity of message collection component and/or message distribution component can also be one or more.
Specifically, the mapping relations between the message container in message exchange component and database can have following three kinds:
(1)(Single storehouse or many storehouses)One-to-one mapping
Single storehouse or many storehouses in the present embodiment refer respectively to single database or multiple databases.
As shown in Fig. 2 the message container binding in each message exchange component and a database, i.e., with the message Message table binding corresponding to container.This is the most commonly used mapping relations of applicable situation, when system pressure is larger, can be adopted Multiple databases are used, by the distribution of database so as to by different databases is come sharing system pressure.
(2)The one-to-many mapping in single storehouse
Multiple message containers in each message exchange component and a database(Message table)Binding, wherein shown in Fig. 3 For a message exchange component and the situation of two message container bindings.This mapping relations are particularly suitable for use in the overall pressure of system Power is less big, but has the excessive occasion of the cocommutative message of part messages exchanging address, and now multiple message containers are just realized The distribution of message container, so that by multiple message containers are come counterpressure.
(3)The one-to-many mapping in many storehouses
Each message exchange component and the message container in multiple databases(Message table)Binding, wherein in each database There can be one or more message containers, the single message that Fig. 4 is shown in a message exchange component and two databases is held The situation of device binding.When system integral pressure is larger, this mapping relations from the physical layer of database due to not only carrying out Distribution, is also further distributed from the logic level of data store internal(That is the distribution of message container), therefore, it is possible to By multiple databases and multiple message containers effectively sharing system pressure, so as to ensure the even running of system.
Each message container is respectively provided with the weight of the hit rate for characterizing the message in the message container, message exchange group Part is used to select to be stored in the message container of message according to weight and reads the message container of message, to accelerate database processing speed And balance load ratio between each database.
The mapping relations of message exchange component and message container are as shown in table 1 to table 4:
Table 1
Table 1 is Exchange tables(Swap table), it is used to record message exchange address information, including message exchange address name Title and message exchange type etc..
Table 2
Column name Data type Description
DeliveryID Integer Database increases major key certainly
ExchangeID Integer Exchange token record major keys
VesselID Integer Vessel token record major keys
Enable Bit Whether enable
Table 2 is Delivery tables(Transmit table), it is used to record message exchange component and the binding relationship of message container.
Table 3
Table 3 is Vessel tables(Message container table), it is used for the database table information for recording message container, including message table Name and database linkage information.The ConnectionRule data different by depositing, just can be distributed to difference by message table Database in so that reach reduction database pressure purpose.
Table 4
Table 4 is the message table for being used to store message corresponding with message container, and it is used in persistent storage message container Message.
Correspondingly, the operation method of the distributed message middleware system includes two portions of message collection and message distribution Point.
Message collection process includes:
Step 1: message collection component receives the message from the message producer and gives message exchange component;
Step 2: the message from message collection component is stored in message container by message exchange component.
Message distribution process includes:
Step 3: message distribution component receives the consumer requests from message consumer and gives message exchange component;
Step 4: message exchange component reads from message container message according to consumer requests and gives message distribution component Consumed with supplying message consumer.
During message collection:The message producer sends to message collection component includes message friendship in message, message Change the message datas such as address, message subject and message content;Message collection component is selected according to the message exchange address received Message exchange component is selected, and message is sent to selected message exchange component and is handled;Chosen message exchange component will Message is stored in message container, so as to complete collection.
During message distribution:Message consumer is initiated in information consumption request, consumer requests to message distribution component Including information such as consumer identification, message exchange address, the message subjects of consumption;Message distribution component is according to message exchange address Message exchange component is selected, and transfers to selected message exchange component to be handled consumer requests;Chosen message exchange Component takes out bulk messages from the message container of binding and is cached in message distribution component to supply message consumer's progress Consumption.
In the present embodiment, the distributed message middleware system also includes manufacturing side Message Agent and consumption terminal message generation Reason, the message producer passes through consumption terminal message generation by manufacturing side Message Agent and message collection assembly communication, message consumer Reason and message distribution assembly communication.Message Agent can shield different hardware platforms, database, message format, communication protocol Between wide gap and difference there is provided efficient, the easily communication capacity between being applied to application.
As described above, the message collection process in the present embodiment is as shown in Figure 5:
Step 100, message collection component receive the message from the message producer and are put into local cache queue;
Step 101, judge whether to meet local cache queue full or timer(Timer is set to for example arrive every 1s Phase)Expire, if then entering step 102, if otherwise performing step 101 again;
Step 102, message collection component send the message in local cache queue to each according to message exchange address Message exchange component;
Step 103, message exchange component select a message container from the message container of binding according to weight and will come from The message container that the message deposit of message collection component is selected.
In the present embodiment, do not write direct when message is stored in into message container, but use above-mentioned asynchronous system Realize, when timer expires or local cache queue is expired, message be just stored in message container by special write-in thread, The access pressure of database so can be substantially reduced while message throughput is ensured.
And following three record sheets will be then used during message distribution:
Table 5
Table 5 is FetchMark tables(Capture record sheet), it is used to record the message count consumed in each message container, The message count is the numbering for embodying the message that message distribution component has been given in each message container, thus just can be distinguished Which message be crawled, which be not crawled also, using in the case of multiple message distribution components, this is by energy Enough prevent same message by Double Spending.
Table 6
Table 6 is BatchReservation tables(Batch crawl record sheet), it is used to recording a collection of disappearing of being captured in batches The storage location of breath, and be by which message distribution component crawl, thus, batch of each message distribution component at oneself Consumed in the range of amount, just can solve multiple message distribution components while the problem of consuming message.
Table 7
Table 7 is ConsumerMark tables(Information consumption record sheet), it is used to record what is currently consumed in bulk messages Position, HighWaterMark is a sequence sequentially, if consumption time-out or program crashing after, all can from work as This preceding HighWaterMark position starts consumption, and this HighWaterMark can be used for retransmitting message.
As shown in fig. 6, message distribution process includes:
Step 200, message consumer send information consumption request to message distribution component;
Step 201, message distribution component according to the message exchange address choice in consumer requests message exchange component, and Consumer requests are handed over to the chosen message exchange component;
Representated by BatchID in step 202, message exchange component inquiry ConsumerMark tables in a newest record Bulk messages whether consumed completion, if consumed complete if enter step 203, if do not consume complete if enter step 204。
Step 203, message exchange component select message container according to weight and obtained from the chosen message container New bulk messages, while the Count field values in FetchMark tables increase the message count of the new bulk messages, Increase a record in BatchReservation tables for the new bulk messages, wherein Start is in the new bulk messages Minimum idx values(Exponential quantity), Size is the message count of the new bulk messages, in addition, being similarly in ConsumerMark tables The new bulk messages increase a record, subsequently into step 205.
Step 204, the BatchID in a newest record in ConsumerMark tables are inquired about Respective record in BatchReservation tables.
Step 205, based on the information acquisition messages in BatchReservation tables.
Step 206, message distribution component are filtered according to consumer requests to message.
Message by filtering is returned to message consumer by step 207, message distribution component.
Wherein, in step 206, " being filtered according to consumer requests to message " includes two kinds of situations:
(1)The message producer have sent the message of multiple message subjects to a message exchange component, so The message of multiple message subjects may be had in one record of Batchreservation tables, and message consumer can specify As long as a specific message subject, it is accomplished by this when being filtered by message subject in message distribution assembly end, only returns Return the message for the message subject that message consumer needs.
(2)The message producer to a message exchange component send be same message subject message, and message disappears Expense person wishes to be consumed by certain condition when consuming the message subject, such as message establishing date>Some scheduled date, Now message consumer will specify filter condition in consumer requests, and message distribution assembly end is also required to according to this condition Filtered.
Application example 1
As shown in Figure 7:The system is a low concurrent system, and system pressure is smaller, and it includes some message producer applications With message consumer's application.Distributed message middleware system under this occasion can using a message collection server and One message distribution services device, and message data is deposited using a database.Wherein, the function of message collection component is by disappearing Cease acquisition server and realize that the function of message distribution component is realized by message distribution services device, and the function of message exchange component Then realized jointly by message collection server and message distribution services device.Now, the mapping of message exchange component and message container Relation can use one-to-one mapping, and if having message exchange in part messages exchanging address frequently, can also be using single storehouse One-to-many mapping mode.
Application example 2
As shown in Figure 8:The system is a moderate concurrent system, and it equally includes, and some message producers apply and message disappears The person of expense applies.Distributed message middleware system under this occasion can equally use a message collection server and one Message distribution services device, but from needing to deposit message data using several databases unlike application example 1.Now, System pressure is mainly reflected in database access, therefore the mapping relations of message exchange component and message container can use one Map one(It is distributed in multiple databases), and when having that message exchange is frequent in part messages exchanging address, can also adopt Mapping mode is waited with many storehouses are one-to-many.
Application example 3
As shown in Figure 9:The system is a high concurrent system, and it includes, and a large amount of message producers apply and message consumer should With.Distributed message middleware system under this occasion is needed using some message collection servers, some message distributions Server, and message data is deposited using several databases, because now not only database needs distribution, message collection clothes Business, Message exchange services and message distribution services are also required to be distributed.Now, the mapping of message exchange component and message container Relation can use one-to-one mapping(It is distributed in multiple databases), and working as has message exchange frequency in part messages exchanging address When numerous, it would however also be possible to employ many storehouses are one-to-many to wait mapping mode.

Claims (12)

1. a kind of distributed message middleware system based on database, it is characterised in that the distributed message middleware system Including message collection component, database, message distribution component and message exchange component;
Database includes message container, and message container is deposited by corresponding with there being the message table of persistent message in database Store up persistent message;
Message collection component is used to receive the persistent message from the message producer and is put into local cache queue, only local Persistent message in local cache queue is just given message exchange component by buffer queue when full or timer expires;
Message distribution component is used to receive the consumer requests from message consumer and gives message exchange component;
Message exchange component is used to the persistent message from message collection component being stored in message container, is additionally operable to according to consumption Request reads persistent message from message container and gives message distribution component and consumed with supplying message consumer.
2. distributed message middleware system as claimed in claim 1, it is characterised in that the distributed message middleware system Also include manufacturing side Message Agent and consumption terminal Message Agent, the message producer passes through manufacturing side Message Agent and message collection group Part communicates, and message consumer passes through consumption terminal Message Agent and message distribution assembly communication.
3. distributed message middleware system as claimed in claim 2, it is characterised in that the quantity of message exchange component is one Individual or multiple, each message exchange component is bound with the message container in one or more databases, disappearing in each database The quantity for ceasing container is one or more, and the quantity of message collection component and/or message distribution component is one or more.
4. distributed message middleware system as claimed in claim 3, it is characterised in that the quantity of message container be it is multiple, Each message container is respectively provided with the weight of the hit rate for characterizing the persistent message in the message container, message exchange component For selecting to be stored in the message container of message according to weight and reading the message container of message.
5. the distributed message middleware system as described in any one in claim 1-4, it is characterised in that message exchange group Part reads batch persistent message from message container and is cached in message distribution component to be disappeared with supplying message consumer Take.
6. the distributed message middleware system as described in any one in claim 1-4, it is characterised in that the distribution disappears Ceasing middleware system also includes monitor component, and monitor component is used for:To having given message distribution component in each message container Persistent message is recorded;And/or, storage location to the persistent message of having given message distribution component and hand over to Message distribution component recorded;And/or, consumed in the batch persistent message to having given message distribution component Persistent message is recorded.
7. a kind of operation method of the distributed message middleware system based on database, it is characterised in that the distributed message Middleware system includes message collection component, database, message distribution component and message exchange component, and database includes message Container, message container stores persistent message by corresponding with there being the message table of persistent message in database;
The operation method includes:
S1, message collection component receive the persistent message from the message producer and give message exchange component;
S1 includes:
S11, message collection component receive the persistent message from the message producer and are put into local cache queue;
S12, judging whether to meet local cache queue, full or timer expires, if then entering S13, if otherwise performing again S12;
Persistent message in local cache queue is given message exchange component by S13, message collection component;
Persistent message from message collection component is stored in message container by S2, message exchange component;
S3, message distribution component receive the consumer requests from message consumer and give message exchange component;
S4, message exchange component persistent message is read from message container according to consumer requests and give message distribution component with Supply message consumer is consumed.
8. operation method as claimed in claim 7, it is characterised in that the distributed message middleware system also includes the manufacturing side Message Agent and consumption terminal Message Agent, the message producer pass through manufacturing side Message Agent and message collection assembly communication, message Consumer passes through consumption terminal Message Agent and message distribution assembly communication.
9. operation method as claimed in claim 8, it is characterised in that the quantity of message exchange component be it is one or more, often Individual message exchange component is bound with the message container in one or more databases, the quantity of the message container in each database To be one or more, the quantity of message collection component and/or message distribution component is one or more.
10. operation method as claimed in claim 9, it is characterised in that the quantity of message container is multiple, each message container The weight of the hit rate for characterizing the persistent message in the message container is respectively provided with, message exchange component is used for according to weight The message container of selection deposit message and the message container for reading message.
11. the operation method as described in any one in claim 7-10, it is characterised in that message exchange component holds from message Batch persistent message is read in device and is cached in message distribution component and is consumed with supplying message consumer.
12. the operation method as described in any one in claim 7-10, it is characterised in that the distributed message middleware system System also includes monitor component, and monitor component is performed:Persistent message to having given message distribution component in each message container Recorded;And/or, storage location to the persistent message of having given message distribution component and hand over message distribution extremely Component is recorded;And/or, the persistent message consumed in the batch persistent message to having given message distribution component Recorded.
CN201310287640.0A 2013-07-09 2013-07-09 Distributed message middleware system and its operation method based on database Active CN103856393B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310287640.0A CN103856393B (en) 2013-07-09 2013-07-09 Distributed message middleware system and its operation method based on database

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310287640.0A CN103856393B (en) 2013-07-09 2013-07-09 Distributed message middleware system and its operation method based on database

Publications (2)

Publication Number Publication Date
CN103856393A CN103856393A (en) 2014-06-11
CN103856393B true CN103856393B (en) 2017-11-03

Family

ID=50863629

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310287640.0A Active CN103856393B (en) 2013-07-09 2013-07-09 Distributed message middleware system and its operation method based on database

Country Status (1)

Country Link
CN (1) CN103856393B (en)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104219306B (en) * 2014-09-02 2018-08-24 上海华力微电子有限公司 The monitoring system of message-oriented middleware
CN104378415A (en) * 2014-10-29 2015-02-25 中国建设银行股份有限公司 High-availability cloud system and achievement method based on information
CN104636211B (en) * 2015-03-10 2018-10-16 中国农业银行股份有限公司 Information interacting method and middleware system between a kind of software systems
CN104796456B (en) * 2015-03-17 2019-06-28 青岛海尔智能家电科技有限公司 A kind of message treatment method and device
CN105554066B (en) * 2015-12-04 2018-09-28 上海斐讯数据通信技术有限公司 Communication service container and communication means in a kind of distributed system
CN107038077B (en) * 2016-11-17 2021-07-27 创新先进技术有限公司 Message flood storage method and device
CN107239343B (en) * 2017-06-02 2020-10-16 浪潮金融信息技术有限公司 Data processing method and device
CN109214741B (en) * 2017-07-07 2021-11-12 北京京东尚科信息技术有限公司 Early warning method and early warning system for monitoring indexes
CN109391646B (en) * 2017-08-04 2021-08-17 中国电信股份有限公司 Message middleware message acquisition method, device and system
CN107592364B (en) * 2017-09-22 2020-08-11 中汇信息技术(上海)有限公司 Distributed message exchange method and system
CN108198078B (en) * 2017-12-11 2021-02-05 泰康保险集团股份有限公司 Processing method and system of reinsurance business
CN108196961B (en) * 2017-12-28 2020-05-12 蜂助手股份有限公司 Asynchronous message processing method, terminal, system and storage medium
CN108536544B (en) * 2018-03-21 2021-06-25 微梦创科网络科技(中国)有限公司 Consumption method, device, server and medium based on database message queue
CN108848031A (en) * 2018-06-14 2018-11-20 深圳金证引擎科技有限公司 Information transferring method and device
CN108932309B (en) * 2018-06-15 2020-12-01 未鲲(上海)科技服务有限公司 Cross-platform database management method, device, computer equipment and storage medium
CN110740145B (en) * 2018-07-18 2023-08-08 北京京东尚科信息技术有限公司 Message consumption method and device, storage medium and electronic equipment
CN108924041A (en) * 2018-08-03 2018-11-30 北京捷易迅信息技术有限公司 A kind of message efficient reliable diffusion method in instant messaging
CN108881492B (en) * 2018-08-08 2020-03-31 百卓网络科技有限公司 Method for solving message processing sequence and dredging message processing
CN109067810A (en) * 2018-10-22 2018-12-21 中链科技有限公司 A kind of distributed message guard method and protective device based on block chain
CN109729148A (en) * 2018-11-30 2019-05-07 北京奇艺世纪科技有限公司 A kind of message treatment method, system and equipment
CN109600380B (en) * 2018-12-19 2020-11-10 北京创鑫旅程网络技术有限公司 Data transmission method and device
CN109873904B (en) * 2019-03-05 2021-08-03 平安科技(深圳)有限公司 User message state reporting processing method, device and storage medium for message pushing
CN110572461A (en) * 2019-09-11 2019-12-13 宝付网络科技(上海)有限公司 Intermediate service system based on production and consumption modes
CN111049915B (en) * 2019-12-17 2023-04-07 书行科技(北京)有限公司 Container under-cloud message queue agent system and method
CN111245900B (en) * 2019-12-31 2021-09-14 北京健康之家科技有限公司 Distributed message sending processing system and processing method thereof
CN111416823A (en) * 2020-03-23 2020-07-14 北京明略软件系统有限公司 Data transmission method and device
CN112698969A (en) * 2020-12-30 2021-04-23 佰年颐堂医疗科技股份有限公司 MQ message reliability delivery solution method based on message drop base
CN113296977B (en) * 2021-02-24 2023-04-07 阿里巴巴集团控股有限公司 Message processing method and device
CN113535368B (en) * 2021-09-07 2021-12-21 武汉中科通达高新技术股份有限公司 Task processing method and device and electronic equipment
CN113986601B (en) * 2021-12-27 2022-04-26 飞狐信息技术(天津)有限公司 Consumption information query method and device, storage medium and electronic equipment
CN114666292A (en) * 2022-04-01 2022-06-24 广州大学 Instant messaging technology method, system and medium

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103024014A (en) * 2012-12-03 2013-04-03 北京京东世纪贸易有限公司 Method and system for distributing and processing mass data passing through message queues

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103024014A (en) * 2012-12-03 2013-04-03 北京京东世纪贸易有限公司 Method and system for distributing and processing mass data passing through message queues

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"基于XML消息代理的企业应用集成技术";盛步云 等;《计算机应用研究》;20061231(第12期);正文第1段、第1节、第2.1节、第3节、第4节 *
"基于发布/订阅的消息中间件技术及其应用";詹先银;《中国优秀硕士学位论文全文数据库,信息科技辑》;20051015(第6(2005)期);正文第三章 *

Also Published As

Publication number Publication date
CN103856393A (en) 2014-06-11

Similar Documents

Publication Publication Date Title
CN103856393B (en) Distributed message middleware system and its operation method based on database
CN110113420B (en) NVM-based distributed message queue management system
CN108268208B (en) RDMA (remote direct memory Access) -based distributed memory file system
CN100530195C (en) File reading system and method of distributed file systems
CN102831120B (en) A kind of data processing method and system
CN101923558B (en) Storage network structure and reading and writing method for data based on (d, k) Mohr diagram
CN101789976B (en) Embedded network storage system and method thereof
EP2369494A1 (en) Web application based database system and data management method therof
CN103095758B (en) A kind of method processing file data in distributed file system and this system
CN102088389B (en) Distributed content access scheduling device and content reading method
CN106789726A (en) A kind of high concurrent service resource allocation method based on service priority
CN206775541U (en) Distributed game services system
CN103744719B (en) Lock management method and system, the collocation method and device of lock administration system
CN102088484B (en) Write lock method of distributed file system and a system thereof
CN103186537B (en) A kind of data read-write method and device based on index order
CN103166991B (en) Cross nodal point storage implementation method and device based on P2P and cloud storage
CN106919654A (en) A kind of implementation method of the High Availabitity MySQL database based on Nginx
CN102136003A (en) Large-scale distributed storage system
CN101330431B (en) Method and system for storing instant information
CN107436813A (en) A kind of method and system of meta data server dynamic load leveling
CN101771723A (en) Data synchronization method
CN103312624A (en) Message queue service system and method
CN102411639A (en) Multi-copy storage management method and system of metadata
CN102420814A (en) Data access method and device, and server
CN110008041A (en) A kind of message treatment method and device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20160301

Address after: 200335 Shanghai city Changning District Admiralty Road No. 968 Building No. 16 10 floor

Applicant after: SHANGHAI XIECHENG BUSINESS CO., LTD.

Address before: 200335 Shanghai City, Changning District Fuquan Road No. 99, Ctrip network technology building

Applicant before: Ctrip computer technology (Shanghai) Co., Ltd.

GR01 Patent grant
GR01 Patent grant