Message Source là một khái niệm được sử dụng trong các ứng dụng Mule ESB từ phiên bản 3.x trở về trước, là một thành phần đóng vai trò quan trọng. Trong bài viết này, mình sẽ trình bày với các bạn những kiến thức chi tiết về khái niệm này các bạn nhé!
Thật vậy, trong một ứng dụng Mule ESB thì Message Source chính là thành phần sẽ tạo ra Mule Message từ việc tiếp nhận hoặc lấy dữ liệu từ các hệ thống khác. Sau khi một Mule Message được tạo xong, nó sẽ được xử lý bởi một hoặc nhiều Message Processors ở phía sau.
Ví dụ nếu các bạn có một HTTP Listener Connector nằm trong Message Source thì connector này sẽ là thành phần để các bên thứ ba có thể gọi tới ứng dụng Mule của chúng ta và truyền các dữ liệu cần thiết.
Còn nếu Database Connector nằm trong phần Message Source thì khi chạy ứng dụng Mule ESB của chúng ta lên, connector này sẽ có nhiệm vụ lấy dữ liệu từ database được cấu hình trong nó lên để tạo Mule Message.
Trong Anypoint Studio, phần Editor cho một Flow trong ứng dụng Mule ESB, các bạn sẽ thấy phần Message Source nằm ở đầu của một Flow như sau:
Trong một Flow của ứng dụng Mule ESB thì chúng ta chỉ có duy nhất một Message Source.
Mule ESB hỗ trợ cho chúng ta nhiều loại Message Source như sau:
- Inbound Endpoints
- Polls
- Custom Message Sources
Đây là những Connectors mà chúng ta có thể gọi chúng làm cho ứng dụng Mule ESB của chúng ta nằm ở thế bị động. Có nghĩa khi sử dụng những connectors này, ứng dụng Mule ESB của chúng ta phải đợi bên thứ ba gọi tới thì mới tạo Mule Message được.
HTTP Listener Connector là một Inbound Endpoint như thế.