{"id":533,"date":"2009-02-17T15:27:54","date_gmt":"2009-02-17T20:27:54","guid":{"rendered":"http:\/\/jianmingli.com\/wp\/?p=533"},"modified":"2009-02-17T15:27:54","modified_gmt":"2009-02-17T20:27:54","slug":"esb","status":"publish","type":"post","link":"https:\/\/jianmingli.com\/wp\/?p=533","title":{"rendered":"ESB"},"content":{"rendered":"<p><strong>What is ESB?<\/strong><br \/>\n* ESB is used for application integrations in a <strong>heterogeneous <\/strong>environment (like EAI).<br \/>\n* ESB involves a common messaging <strong>bus <\/strong>(in contrast to the EAI hub and spoke architecture).<br \/>\n* The bus is used to communicate between different systems within an enterprise.<br \/>\n* Typically there is a <strong>shared <\/strong>messaging <strong>format <\/strong>on the bus.<br \/>\n* <strong>Adapters <\/strong>are used to translate proprietary messaging formats to the shared format.<\/p>\n<p><strong>ESB Core Functionalities<\/strong><br \/>\n* Location transparency<br \/>\n* Transport protocol conversion (JMS to HTTP, FTP to JMS etc)<br \/>\n* Message routing<br \/>\n* Message enhancement<br \/>\n* Security<br \/>\n* Monitoring and management<\/p>\n<p><strong>Open Source ESB Flavors<\/strong><br \/>\n* Apache ServiceMix: build on JBI (Java Business Integration)<br \/>\n* Apache Synapse: build on Web Services standards via Axis2<br \/>\n* Apache Tuscany: build on SCA (Service component architecture)<br \/>\n* Mule: not based on one particular standard.<br \/>\n* Sun Open ESB: build on JBI. Good tool support via NetBean IDE.<br \/>\n* JBoss ESB:<br \/>\n* PEtALS: supports distributed environment. Web based monitoring of JBI components.<\/p>\n<p><strong>Mule<\/strong><br \/>\n* Support more than 20 transport protocols<br \/>\n* Integrates with<br \/>\n    &#8211; Spring<br \/>\n    &#8211; ActiveMQ<br \/>\n    &#8211; Joram<br \/>\n    &#8211; CXF<br \/>\n    &#8211; Axis<br \/>\n    &#8211; Drools<\/p>\n","protected":false},"excerpt":{"rendered":"<p>What is ESB? * ESB is used for application integrations in a heterogeneous environment (like EAI). * ESB involves a common messaging bus (in contrast to the EAI hub and spoke architecture). * The bus is used to communicate between &hellip; <a href=\"https:\/\/jianmingli.com\/wp\/?p=533\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[48],"tags":[],"class_list":["post-533","post","type-post","status-publish","format-standard","hentry","category-esb"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/s8cRUO-esb","_links":{"self":[{"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/posts\/533","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=533"}],"version-history":[{"count":2,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/posts\/533\/revisions"}],"predecessor-version":[{"id":535,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/posts\/533\/revisions\/535"}],"wp:attachment":[{"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=533"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=533"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=533"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}