Application of ESB in actual projects (WebSphere Message Broker)

Source: Internet
Author: User
Tags case statement
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.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.