Outline:
1. WebSphere Message Broker Introduction
A) ESB Overview
B) Message Broker Overview
C) Message Broker Performance Report
2. ESB Project Sharing
Content:
1. Message Broker is based on MQ. [This shows how important message-oriented middleware is to MB, and reliable transmission is a prerequisite and a basis .]
2. Business Integration Reference Architecture
The above is the reference architecture for IBM business integration, and the figure below is full of the entire architecture with IBM products.
3. The position of the ESB, which acts as the connection layer, organizes information between the service requestor and the service provider.
4. ESB solves connectivity problems
A) Decouple interfaces from application. [ESB can Decouple interfaces from applications. Note: The current project is always dealing with interfaces]
B) Enable all applications to communicate with each other regardless
I. Programming languages ages
Ii. System Platforms
Iii. Programming models
Iv. Protocols
V. Data formats
Applications can communicate with each other on the premise of being unrelated to the above five layers.
5. What is Enterprise Service Bus (ESB )?
C) A flexible connectivity infrastructure for integrating applications and services. [A flexible connectivity infrastructure for integrating applications and services .]
D) Used to reduce the number, size, and complexity of interfaces. [Used to reduce the number, size, and complexity of interfaces]
6. Functions of ESB
E) Matches & routes (message between services) [the original application system is directly connected, and each other knows that the other party exists and relies on interfaces]
F) Converts (transport protocols between requestor and service) [protocol conversion]
G) Transforms (message format between requestor and service) [message format conversion]
H) Distributes (business events from/to disparate sources) [distribution event]
7. Communication services provided by ESB
I) transmission (including JMS messages and asynchronous protocols)
J) Events
K) Transit
8. What is Brokering? (Note: The data format is different)
Broker willingness is the meaning of Broker, which can be understood as agent here.
After using Message Broker, you can easily connect to new applications.
9. Message Broker Product Family
You can learn how IBM divides basic products and high-end products.
10. core concepts of Message Broker
L) Message processing)
I. process independent items in messages
Ii. physical and logical message model
M) conversion and Routing (Transformation and Routing)
I. Message Manipulation]
Ii. Content-based routing)
N) simple and clear programming mode
I. Visual Programming mode: Message stream
11. Message Broker Overview
From this process, we can see the basic functions of MB:
1) receive and route messages
2) convert a message to another format, or to multiple other formats.
3) publish a message to the subscriber
4) access an external database to process incremental messages or storage
5) respond to events and errors
12. MB components-during deployment
Broker has the concept of Domain. In addition, both Message sets and Message flow run in the Broker. Multiple brokers are deployed in the same Broker Domain and configured through Configuration in the same Domain.
13. MB components-runtime
1) Broker (Message proxy): A Message Processing Engine of MB, which provides all runtime services of MB.
2) Configuration Manager (Configuration Manager): CM is a workbench that configures an interface between the repository and the Broker. It maintains the Configuration information of the Broker Domain, provide the Broker with Initialization Configuration Information and subsequent changes. The Configuration Manager is a core runtime component in MB used to manage all components and resources that constitute the Broker Domain.
3) Broker Domain: several brokers share the same configuration to form a message proxy Domain. Each message proxy Domain is controlled by a unique Configuration Manager, in a message proxy domain, you can create or start one or more brokers and an optional User Name Server.
4) Execution Group: an Execution Group is a combination of several message streams and a message stream running engine. Each execution group is an independent process. In this way, message streams in the same execution group can be independent of each other at runtime. In an execution group, message streams run in different thread pools. To improve performance, we can specify the thread pool size for each message stream by setting the number of running instances for each message stream.
5) User Name Server (User Name Server): an important component of any key system is to provide an effective security mechanism to ensure the security of assets. User Name Server is an optional runtime component that provides security control for users and groups related to Publish/Subscribe operations.
6) Message Flow (Message Flow): In MB, Message operation, format conversion, routing, and other functions are implemented through Message Flow, each message is output from the input MB to the input MB by a message stream and then sent to the target application system. A Message stream is composed of various Message Processing nodes. A Message Processing Node can perform various Processing operations on the Message. A Node is connected to a Node to form a Message stream.
7) Message Processing Node: in MB, all calculations and Processing of messages are implemented by Message nodes, A message node is actually a dynamic link library (DLL) called by the Broker runtime environment. It operates messages using ESQL statements and processes the message node attributes in China, it enables the node to execute specific functions through its own messages.
8) ESQL: The ESQL language used for message stream development in MB. ESQL is an extension of SQL V3. In addition to database operations, ESQL can also operate message data, including messages in Generic XML and MRM formats.
14. Message Flows [Message-oriented workflow]
15. Message Processing Nodes (6.0 is added on this basis)
From my point of view, the most important node is:
A) MQInput & MQOutput
B) HttpInput can be used as the WS service, and HttpRequest can access WS.
C) Publication for publishing
D) ESQL statement node, which can be used to manually write ESQL, is a omnipotent node.
E) Mapping: ing between a message and a message to a DB
F) Filter to implement if-else. Four statuses are returned: failer, true, false, and unknow.
G) RouteToLaber works with the Label, which is equivalent to the case statement.
H) TryCatch and Throw
I) Trace, used to print debugging information. MB also supports command line debugging.
J) Aggregate Request, Reply, Control, aggregation
Added in the new version
A) Timer Node
B) JMS Node
16. MB Toolkit
17. ESQL editor
18. Message Set Development
19. Mapping editor
20. Deployment
MB needs to be packaged into a bar package, which has higher flexibility and performance. Of course, it will be a little more troublesome. For self-developed products, packaging and deployment must be simple. It is best to support hot deployment.
21. mqsideploy command line Deployment Tool. For large projects, You need to develop, test, joint debugging, and production environments. The generated script can be executed multiple times. This is one of the differences between large software and general software.
22. MB performance report
4160 1 kb packages/second. We recommend that you use a transaction package ranging from 1 kb to 2 kb.
MQ message persistence refers to writing files to ensure message integrity when the service is down. Higher performance than durability.
For example, if the maximum waiting time for a bank ATM is 60, the message itself does not make sense after the timeout. You can choose non-persistent.
23. Reference Value of MQInput/MQOutput message stream
24. Parallel Processing Option
MB can be parallel through multiple instances or multiple execution groups. The specific effect is better, depending on the specific application.