تاریخ انتشار | ۱۸ مرداد ۱۳۹۳ |
---|---|
عنوان انگلیسی | Introduction to Enterprise Service Bus – ESB |
گذرگاه (bus) مفهومی است که تاریخچهی آن به معماری سختافزارهای رایانه برمیگردد. تحول مهمی که معماری سختافزارها را مقیاس پذیر کرد. بعد از استفاده از این مولفه بود که صنعت سختافزار توانست ابزارهای مختلفی را به راحتی و تنها با استفاده از استانداردی واحد به رایانه متصل کند. کارتهای صوتی، گرافیک، شبکه، و مودمها و دیگر ابزارهایی که به راحتیِ جا انداختن در هر یک از شیارها از سوی مادربورد شناسایی شده مورد استفاده قرار میگیرند.
با الهام از این مولفه مهم و تاثیرگذار در سختافزار و بعد از به وجود آمدن مشکلات مختلف در روشهای مختلف یکپارچهسازی سازمانی گذرگاه خدمات سازمانی تکامل پیدا کرد. گذرگاه خدمات سازمانی، قسمتی از معماری خدمت گرای سازمانی است. این عنصر مهم از معماری سازمانی نقش شبکه اعصاب خدمات سازمانی به عهده دارد. مجموعهای از اصول و قوانین برای تجمیع تعداد زیادی برنامه و خدمت با همدیگر. راهکارهای مختلفی برای اجرای گذرگاه خدمات سازمانی وجود دارد که هر یک روشها و معماری خود را پیشنهاد میدهد.مفهوم بنیادین در ESB اتصال انواع مختلف برنامههای سازمانی به یک گذرگاه پیام، و قادر ساختن آن برنامهها به برقراری ارتباط با این گذرگاه است. این عملکرد باعث از بین رفتن وابستگی میان برنامههای مختلف میشود، و اجازه میدهد این برنامهها بدون نیاز به داشتن اطلاع از دیگر برنامههای روی گذرگاه تنها با گذرگاه ارتباط برقرار کنند.
چرا استفاده از ESB؟
یکی از مهمترین دلایلی که سازمانها علاقهمند به استفاده از ESB در زیرساخت فناوری اطلاعات خود هستند میل به رشد چابکی است. معماری ESB، با ایجاد یک سامانه ساده، خوشتعریف، و قابل الصاق، و مقیاسپذیری را به راحتی فراهم میکند. به علاوه ESB کمک میکند که از سامانههای موجود در سازمان نیز استفاده شود و به کمک قابلیتهای ارتباطی و تبدیلیاش آنها را در معرض برنامههای جدید قرار داد.
پیادهسازی
معماری ESB شامل تعدادی اصول کلیدی است که چابکی و مقیاسپذیری را فراهم کند. تمرکز اصلی بر روی جداسازی سامانهها از یک دیگر است که است که آنها را قادر میسازد از طریقی سازگار و قابل مدیریت با یکدیگر ارتباط برقرار کنند.
- مفهوم گذرگاه (bus) که باعث جدایی سامانهها از یکدیگر است. این موضوع معمولاً با استفاده از ابزارهای پیغامرسان اجرا میشود.
- دادههایی که بر روی گذرگاه حرکت میکنند، در یک قالب استاندارد هستند که عموما XML است.
- «مبدل»هایی بین سامانهها و گذرگاه وجود دارد که ارتباط میان این دو را تسهیل میکند.
- مبدل مسئولیت برقراری ارتباط با برنامه و تبدیل اطلاعات روی گذرگاه به قالب قابل قبول برنامه و بالعکس را به عهده دارد. همچنین مبدل میتواند محلی برای فعالیتهای دیگری چون مسیریابی ، پایش، امنیت، و مهار خطاها باشد.
- ESB ها وضعیت را حفظ نمیکنند (stateless). وضعیت باید در پیامهای عبوری گنجانده شود.
- قالب استاندارد پیامها قراردادی میان سامانهها است. این بدان معناست که هر پیغامی که از گذرگاه عبور میکند، باید از یک قالب سازگار استفاده کند و هر دو سامانهای قابلیت ارتباط با یکدیگر را دارند.
نیاز مادر اختراع است
ESB یک معماری جدید برای یکپارچهسازی است که در حال رشد کردن در میان سازمانها در جهان است. برای بسیاری از شاهدان، این موضوع به مثابه تکنولوژی ای است که از هیچ به وجود آمده است. درواقع ESB اتفاق نیافتاده است، بلکه به مرور زمان اتفاقات مختلف روندی تکاملی را به وجود آورده است این رخدادها باعث. درسهایی شده است که از رویکرد تکنولوژیهای پیشین آموخته شدهاند. معماری مبتنی برESB را نمیتوان زادهی کارهای دانشگاهی، چرا که راهحلی بود برای نیازمندیهایی واقعی که در پروژههای یکپارچهسازی به وجود میآمد، و با هیچ یک از تکنولوژیهای قبلی برطرف نمیشد[۲].
زبان یکپارچهسازی
XML که مختصر شده عبارت eXtensible Markup Language است زبانی است که از سوی صنعت برای حمل دادههای ساختاریافته میان برنامهها و سازمانها انتخاب شده است. این انتخاب دلایلی دارد که از مهمترین آنها میتوان به موارد زیر اشاره کرد:
- XML به صورت جهانی قابل فهم است.
- XML امکان ایجاد مدلهای داده غنیتری را فراهم میکند.
- دادهها در قالبXML خودشان، خودشان را توصیف میکنند.
- با این زبان قالبهای صلب را میتوان حذف کرد.
- و یکی از مهمترین ویژگیها: XML برای انسان قابل خواندن است.[۲]
از ESB چه انتظاری داشته باشیم؟
- تشخیص پیامها و مسیریابی آنهای میان برنامهها و سرویسها
- راهبری پیامها از میان پروتکلهای مختلف انتقال میان برنامهها و سرویسها
- تبدیل قالبها مختلف پیام در حین انتقال میان سرویسها و برنامهها
- تشخیص و توزیع رخدادهای مختلف از/به برنامههای جدا از هم
- ایجاد ارتباط امن و قابل اتکا میان همه انواع سامانهها و برنامهها
- معماری قابل گسترش بر پایه مولفههای قابل اتصال
- قابلیت یکپارچهسازی برنامههای مختلف، چه آنها که بر پایه استانداردهای وب سرویس باشند، و چه آنها که استاندارد معمولی را رعایت نمیکنند.
- توانمندی مسیریابی هوشمند، و مستقل از مکان
- مدیریت شرح و تعریف پیامهاو قالبهای مختلف آنها با استفاده از فرادادهها [۳]
منابع
[۱] Wikipedia, Bus (Computing) accessible accessible at http://en.wikipedia.org/wiki/Bus_(computing)
[۲] MuleSoft(TM) website, What is an ESB? MuleSoft accessible at http://www.mulesoft.org/what-esb
[۳] Chappell, David. Enterprise service bus. ” O’Reilly Media, Inc.”, 2004. accessible at http://books.google.com/books?id=wjebAgAAQBAJ&lpg=PT4&ots=Na5heyrdy5&dq=why%20enterprise%20service%20bus&lr&pg=PT66#v=onepage&q&f=true
[۴] Carter, Sandy. What Is an ESB, and Do You Really Need One?Computerworld Inc., 2006 accessible at http://www.computerworld.com/s/article/108478/What_Is_an_ESB_and_Do_You_Really_Need_One_?pageNumber=1
«استفاده از مطالب این وبلاگ با ذکر لینک و منبع، بلامانع است»