1 / 21

Học viên thực hiện – Nhóm 6: 1. Nguyễn Xuân Tùng 2. Nguyễn Xuân Hậu 3. Hồ Văn Tuấn

Mule ESB. Học viên thực hiện – Nhóm 6: 1. Nguyễn Xuân Tùng 2. Nguyễn Xuân Hậu 3. Hồ Văn Tuấn. Nội dung. 1. Khái niệm về ESB? 2. Java Business Integration (JBI) 3. Kiến trúc Mule 4. Ứng dụng Mule trên thế giới và Demo 5. Tài liệu tham khảo. Vấn đề được giải quyết bằng ESB.

mikko
Download Presentation

Học viên thực hiện – Nhóm 6: 1. Nguyễn Xuân Tùng 2. Nguyễn Xuân Hậu 3. Hồ Văn Tuấn

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Mule ESB Học viên thực hiện – Nhóm 6: 1. Nguyễn Xuân Tùng 2. Nguyễn Xuân Hậu 3. Hồ Văn Tuấn

  2. Nội dung 1. Kháiniệmvề ESB? 2. Java Business Integration (JBI) 3. Kiếntrúc Mule 4. Ứngdụng Mule trênthếgiớivà Demo 5. Tàiliệuthamkhảo

  3. Vấnđềđượcgiảiquyếtbằng ESB • Tíchhợpcáchệthốngđãcó • Linhhoạtkhithayđổicácyêucầu • Phântándịchvụ • Khảnăngmởrộng (cungcấpgiảiphápđầyđủchodoanhnghiệp) • Cácdoanhnghiệpcóthểchiasẻdịchvụ • KhảnăngtáchbiệtNghiệpvụ • Đẩymạnhtiêuchuẩn

  4. Địnhnghĩa (ESB) Gartner Group • Mục đích của ESB là làm cho việc tích hợp các ứng dụng và quy trình trở nên thuận tiện hơn bằng cách cung cấp một quy trình phân tán, điều hướng thông minh, bảo mật và có thể tự động chuyển đổi dữ liệu. Trong hệ thống ESB những dịch vụ trên là những dịch vụ nền tảng do đó các ứng dụng không cần phải thi hành riêng biệt những yêu cầu trên theo một cách thức riêng biệt của chúng.

  5. Kiếntrúc ESB (Giaotiếpgiữacác Layer)

  6. Java Business Integration (JBI) • Là một chuẩn của java được xây dựng để giải quyết các vấn đề của EAI(Kiến trúc tích hợp nghiệp vụ) và B2B dựa vào mô hình và các khái niệm đã được đưa ra bởi kiến trúc hướng dịch vụ SOA. • Phiên bản đặc tả hiện tại của JBI là JSR 208 1.0 • JBI định nghĩa hai loại component trong môi trường thực thi: • Service Engine Coponents (SEs): những component này có trách nhiệm thi hành logic nghiệp vụ và các dịch vụ khác. Các SE component bản thân chúng sử dụng các công nghệ và khái niệm thiết kế khác nhau. Các SE Component này có thể chỉ là dạng đơn giản như chuyển đổi dữ liệu đến phức tạp hơn như WS-BPEL • Binding Components (BCs): thường được sử dụng để cung cấp ở mức chuyển đổi cho phép những dịch vụ giao tiếp với nhau. BC có thể thuộc về một trong các loại dưới đây: • cho phép giao tiếp từ xa với các hệ thống ngoài sử dụng các giao thức giao tiếp chuẩn. • Cho phép gọi ở mức máy ảo đối với hai dịch vụ cùng được cài đặt trên cùng một máy ảo. • Cho phép giao tiếp với các dịch vụ sử dụng WS-I COTS

  7. Vídụvề JBI XSLT – message transformation PXE – choreography Groovy – scripting

  8. Kháiniệm Mule ESB • Địnhnghĩa: • Mule-ESB làmộtnềntảngtíchhợpnhỏgọnchophépchúngtanhanhchóngvàdễdàngkếtnốicácứngdụngvớinhau. Mule cung cấp một nền tảng mạnh mẽ, an toàn và khả năng mở rộng để xây dựng ứng dụng doanh nghiệp cung cấp một loạt các giaothứctruyềntải như JMS, HTTP, Email, FTP, JDBCvànhiềuhơnnữa. Nó cũng cung cấp một tập hợp phong phú các tính năng cho các dịch vụ web, định tuyếnthôngđiệp (message),điềuphối,chuyển đổi và quản lý giao dịch. Thiết kế xung quanh khái niệm ESB (Enterprise Service Bus). Tạodịchvụvàlưutrữ • Expose transport end-points, EJBs, Spring beans, and POJOs as modular and reusable services • Host services as a lightweight service container Điềuphốidịchvụ • Táchbiệtnghiệpvụtừthôngđiệp • Chethànhphầndịchvụtừdịnhdạngthôngđiệpvàgiaothức • Cho phépgọicácdịchvụtừvịtrítáchbiệt Địnhtuyếnthôngđiệp • Địnhtuyếnthôngđiệpdựatrênnội dung vàquytắc (rule) phứctạp • Lọc, tổnghợpvàtáichuỗithôngđiệp (in-bound) Chuyểnđổidữliệu • Traođổidữliệutrêncácứngdụngvớicácđịnhdạngdữliệukhácnhau • Chuyểnđổidữliệukhicần, dựatrênnhucầu • Địnhdạngthôngđiệptrêncácgiaothứctruyềntảikhôngđồngnhất

  9. Tạisaolạisửdụng Mule ESB • Táchriêng Business Logic • Trongsuốtvịtrí • Giaothứctruyềntải • Chuyểnđổi • Chuyểnđổithôngđiệp • Địnhtuyếnthôngđiệp • Cảitiếnthôngđiệp • Tin cậy (Giaodịch) • Bảomật • Khảnăngmởrộng • Khôngcóđịnhdạngthôngđiệptheoquyđịnh • - XML, CSV, Binary, Streams, Record, Java Objects • - Mix and match • Cácđốiđượngtồntạicóthểđượcquảnlý • - POJOs, IoC Objects, EJB Session Beans, Remote Objects • - REST & Web Services • Dễdàngđể test

  10. Kiếntrúc Mule ESB Mule is a lightweight UMO container UMO = Universal Messaging Objects (POJO) UMOs làcácđiểmcuối (endpoint) biếtcáchđểthựchiệngửivànhậnyêucầunhưthếnào

  11. Cácthànhphầnvàcấuhìnhcủa Mule Thànhphần Mule • Spring based • mule-config.xml (default) • Multiple config files • using import • Điểmcuối (Endpoint) • Kênh, Bộnhậnthôngđiệp, Bộkếtnối • Bộchuyểnđổi (transformer) • Cảitiếnvàchuyểnđổithôngđiệp • Bộđịnhtuyến (Router) • Kiểmsoátluồngthôngđiệp (inbound/outbound) • Thànhphầndịchvụ (Service component) • Tíchhợp logic

  12. Mule Flow View Kênh – Cáchkếtnốigiữahaiđiểm Bộkếtnối– bộcungcấpgiaothứctruyềntải (e.g., http, jms, soap, smtp, etc) thựcthinhậnthôngđiệpvàchuyểnthôngđiệp (dispatch). Bộchuyểnđổi (transformer) – Chuyểnđổicấutrúc/địnhdạngthôngđiệp (e.g., http to xml). Bộđịnhtuyến (Router) – Di chuyểncácthôngđiệpgiữa UMOs vàbộkếtnối.

  13. Bộkếtnối View của Mule myUMO (xml→xml) http→xml xml→pop3 pop3://user@userland.com http://myapp.com [Mule]

  14. Sựthựcthi UMO Yêucầumộtbộgiảiquyếtthànhphần (e.g., Spring or Pico) cho • Sựkhởitạocủa UMOs • Cấuhìnhcủa UMOs Xửlýsựkiện • Khôngđồngbộ • Đồngbộ • Yêucầu – Phảnhồi

  15. Môhìnhlậptrìnhtrong Mule Ứngdụng logic Ứngdụng glue Mule glue

  16. Bộđínhtuyến (Routers) trong Mule

  17. 4 Ứngdụngcủa Mule trênthếgiới • Đòn bẩy thời gian thực quá trình kinh doanh tự động hóa: các ứng dụng tài chính trong thời gian thực, và tự động hoá quy trình kinh doanh trên các ứng dụng như SAP, NetSuite, Zuora. • Nhanhchóng import, export vàxóacácdữliệutrong Salesforce.com • Kết nối với Salesforce trong thời gian thực • Tínhnăngứngdụng doanh nghiệp - tích hợpSAP: Sử dụng MuleSoft Enterprise Gateway cho SAP bạn có thể đồng bộ hóa dữ liệu giữa SAP và Salesforce trong thời gian giảm nhập dữ liệu dễ bị dư thừa và lỗi

  18. 4 Demo Môtảbàitoán: • Ứng dụng mô phỏng một ứng dụng Web cho một cửa hàng điện tử. Khách hàng có thể đặt hàng mua thông qua một giao diện web. Ứng dụng backend sẽ phân loại các đơn đặt hàng, sau đó xử lý chúng theo phân loại. Ứng dụng yêucầugiá cho mỗi đơn hàng, thiết lập một trạng thái cho kết quả của đơnhàng(thành công hay thất bại), sau đó kiểm toán theo thứ tự và hợpcác kết quả vào một bản tóm tắt trả lời được gửi lại cho khách hàng. Nếu lệnh không thành công và giá mua trên $ 5000, ứng dụng khởi tạocơchế rollback ngoại lệ.

  19. 4 Demo Cơchếhoạtđộng: “Service Orchestration” và “Choice Routing” trong Mule chỉradịchvụ Web dựatrên SOAP, chấp nhận yêu cầu đặt hàng và xử lý từng hạng mục trong đơn đặt hàng. Nếu một mặt hàng yêu cầu được sản xuất bởi Samsung, sau đó ứng dụng địnhtuyếnyêu cầu mặt hàng cụ thể với một dịch vụ Web dựa trên SOAP bên ngoài đượctổ chức bởiSamsung. Ứng dụng sẽ gửi tất cả các yêu cầutớimộtbộxửlýđơnhàng (in-house order processor), được định nghĩa trong luồnginhouseOrder. Bất kể ai xử lý yêu cầu, ứng dụng lưu trữ kết quả cho các yêu cầu (thành công hay thất bại) với giá cả, mà nó lấy từ một in-house- dịchvụ Web RESTful. Để giảm các yêucầugọi đến dịch vụ này và nâng cao hiệu quả xử lý đơn hàng, ứng dụng lưu trữ (cache) kết quả các đơn đặt hàng cho một khoảng thời gian. Nếu một lời gọi đến dịch vụ Web của Samsung thất bại, các ứng dụng không thử lại để gọi dịch vụ, nhưng thiếtlậptình trạng nhận mua là REJECTED.

  20. 5. Tàiliệuthamkhảo 1. [Mule] Mule Architecture Guide. http://mule.mulesource.org/display/MULE/Architecture+Guide • http://www.mulesoft.org • 2. Mule getting started guide - Mule Enterprise Edition version 2.2.6, 8/2010. • 3. Michael Rosen, Boris Lublinsky, Kevin T. Smith, Marc J. Balcer, “Applied SOA: Service-Oriented Architecture and Design Strategies”, Wiley Publishing Inc, 2008.

  21. Xinchânthànhcámơn!

More Related