قاصدک

منبع مقاله با موضوع سرویس گرا، معماری سرویس گرا، اصول طراحی

تعامل سرویسها و معنی دار بودن آن، آنهاباید اطلاعاتی را مبادله کنند.بنابراین یک چارچوب ارتباطاتی که دارای قابلیت ایجاد ارتباط دارای اتصال سست باشد موردنیازاست. یک چارچوب برای این منظور، پیام رسانی است.

۲-۶-۳ چگونه سرویس ها با هم ارتباط برقرار می کنند.
پس ازآنکه سرویسی پیامی را میفرستد، دیگرکنترل آن رادراختیار ندارد. به همین دلیل است که سرویس هابه پیام ها نیاز دارند تا بعنوان واحد مستقل ارتباطی باقی بمانند. این به معنای آن است که پیام ها نیز مانند سرویس ها باید خود مختار باشند. به همین دلیل میزانی از هوشمندی را دارا هستند تا بتوانند در بخشهای مختلف پردازش خود را مدیریت کنند.

۲-۶-۴چگونه سرویس ها طراحی می شوند.
اصول سرویس گرایی مسائل مرتبط بامواردزیرراتحت پوشش قرارمی دهد(این اصول درادامه معرفی خواهند شد).
الف- چگونه سرویس هاطراحی میشوند؟
ب- ارتباط بین سرویسهاچگونه بایدتعریف شود؟ (شامل تعیین چگونگی تبادل پیامها یاهمان الگوی تبادل پیام MEP)
پ- چگونه باید پیامهاراطراحی کرد؟
ت–چگونه توصیف سرویس ها طراحی می شوند؟

۲-۶-۵ توصیفات سرویسها
هرسرویسی که می خواهد نقش دریافت کننده پیام را داشته باشد باید توصیف سرویس را به همراه داشته باشد. هرتوصیف پیام نقطه اتصالی ازفراهم کننده سرویس رادراختیارقرارمی دهد و دارای تعریفی رسمی از واسط این نقطه اتصال است (تا درخواست کنندگان بتوانند ازساختار پیامی که می بایست برای دریافت خدمات به سرویس دهنده ارسال کنند،آگاه شوند) وهمچنین محل سرویس را (که برای استفاده کنندگان شفاف خواهد بود) معین می کنند.

۲-۷ ویژگی های معماری سرویس گرا
از آنجایی که تعریف رسمی واحدی برای معماری سرویس گرا وجود ندارد، هیچ مجموعه رسمی واحدی از اصول طراحی بر مبنای سرویس گرایی وجود ندارد. با این حال، مجموعه ای از اصول طراحی در سطح سرویس توسط افرادی نظیر Erl و Mcgovern معرفی شده اند که بر سرویس گرایی انطباق مناسبی دارند و عبارتند از] ۲۹[ :
• سرویس ها معمولا یک دامنه یا وظیفه کاری را نمایش می دهند.
• سرویس ها دارای طراحی ماژولار (پیمانه ای) هستند.
• سرویس ها دارای وابستگی ضعیف اند.
• سرویس ها قابل کشف اند.
• محل سرویس ها برای سرویس گیرندگان شفاف است.
• سرویس ها مست
• سرویس ها دارای استقلال داخلی اند.
• قل از روش انتقال هستند.
• سرویس ها مستقل از پلت فرم هستند.
• سرویس ها قابل استفاده ی مجدد هستند.
• سرویس ها قابل ترکیب اند.
در معماری سرویس گرا منظور از اتصال سست، قابلیت تعامل بین سرویس ها به صورت مستقل از کد نویسی و مکان سرویس هاست. به گونه ای که سرویس ها در زمان اجرا می توانند تغییر مکان داده و روال های داخلی خود را تغییر دهند. سرویس ها ماژول هایی از کسب و کار هستند که می توانند توسط پیام هایی درخواست شوند و در نرم افزارهای مختلف مورد استفاده قرار بگیرند. یک نمونه از سرویس می تواند انجام یک درخواست روی داده مانند دریافت یا ذخیره ی اطلاعات باشد. سرویس ها در یک زبان استاندارد توصیف می شوند و فعالیت ها و فرایندهای کسب و کار را پشتیبانی می کنند. سرویس هایی که از استانداردهایی مثل یو دی دی آی۲، دبلیو اس دی ال۳، سواپ۴ استفاده می کنند، عمومی ترین نوع سرویس هایی هستند که امروزه در دسترس می باشند. این سرویس ها به راحتی می توانند ترکیب شوند تا مجموعه ای از فرآیندهای کسب و کار مستقل را شکل دهند. ویژگی مستقل از سکو بودن معماری سرویس گرا این امکان را فراهم کرده است تا هر کاربر، از هر سیستمی و یا هر نوع سیستم عامل و زبان برنامه نویسی می تواند به سرویس ها دسترسی پیدا کند] ۲۹ [.
سازمان های مختلف در بخش های گوناگون، معماری سرویس گرا را به دلیل قابلیت آن در بهبود فرآیندهای کسب و کار سریع، و انعطاف پذیری را ایجاد کنند.
به طور کلی برخی از مزایای به کارگیری معماری سرویس گرا عبارتند از:
• یکپارچه سازی برنامه های موجود
• بهبود یکپارچه سازی داده ها
• سرعت بخشیدن به توسعه ی برنامه های کاربردی سفارشی
• سهولت برون سپاری جهانی
• تسریع در انجام فرآیندهای سیستم اطلاعاتی و …]۳۰[.

  پایان نامه ارشد دربارهسرمایه اجتماعی، مشارکت مدنی، جامعه مدنی، مشارکت سیاسی

۲-۸ تعریف گذرگاه سرویس
تعاریف متفاوتی در منابع گوناگون برای گذرگاه سرویس سازمانی ارائه گردیده است که تعدادی از آنها به شرح زیر می باشد:
* ESB به عنوان یک لایه هوشمند، توزیع شده، تعاملی و پیام رسان برای اتصال برنامه های کاربردی و سرویس هایی که معمولا به صورت توزیع شده از طریق زیرساخت های ارتباطی سازمان ها با هم ارتباط دارند، عمل می کند]۳۱[.
* مجموعه ای از استاندارها جهت ارائه یک زیرساخت عملیاتی و قدرتمند برای پشتیبانی عملیات یکپارچه سازی برنامه های کاربردی توزیع شده]۳۲[.
* ESB به عنوان یک معماری است که از ترکیب وب سرویس، پیام رسانی میان افزار، مسیریابی هوشمند و تبدیل اطلاعات بدست می آید]۳۳[.
* ESB به عنوان متصدی و مسئول مسیریابی، تبدیل و کنترل ارتباطات بین ارائه کننده و مصرف کننده خدمات می باشد]۳۴ [.
* ESB یک الگوی معماری و یک کلید مهم واساسی در اجرای زیرساخت های معماری سرویس گرا می باشد، در واقع ESBشرایطی برای تعامل بین سرویس های ناهمگن و رابط های کاربری که دارای عدم تطابق هستند فراهم می نماید]۳۵[.
ESB یک سیستم مبتنی بر استانداردهای توزیع شده پیام رسانی همزمان و یا غیرهمزمان توسط میان افزارها می باشد که قابلیت
همکاری و تعامل امن بین برنامه کاربردی سازمان ها را با استفاده از XML، وب سرویس، رابط های کاربری و مسیریابی مبتنی بر قوانی فراهم نموده و به یکپارچه سازی سرویس ها در میان چندین برنامه کاربردی در داخل و خارج سازمان کمک می کند. این امر از طریق ایجاد گذرگاهی استاندارد و ارائه تطبیق دهنده هایی برای تبادل اطلاعات بین برنامه ها صورت می گیرد.

شکل ۲-۳٫ ارتباط بین برنامه های کاربردی مختلف در ] ESB 36[

2-8-1 مسیریابی و مقیاس پذیری
از ویژگی های مهم استفاده از ESB حل مشکل توسعه سیستم در روش ارتباط نقطه به نقطه است. همان گونه در بخش هایی فبلی هم مطرح گردید جهت برقراری ارتباط به صورت نقطه به نقطه برای N برنامه کاربردی نیاز به N(N-1)/2 ارتباط می باشد که این روش در سازمان های نسبتا بزرگ و بزرگ اصلا مناسب نبوده و قابل اجرا نمی باشد. نکته مهم در برقراری ارتباطات بین برنامه های کاربردی کاربردی در روش ESB این است که برای ارتباط از یک گرگاه مشترک استفاده می گردد و برنامه ها به صورت مستقیم با هم ارتباط ندارند. در واقع تعداد ارتباطات مورد نیاز برای برقراری تعامل بین برنامه برای N برنامه برابر با تعداد آنها، یعنی N می باشد که نسبت به روش نقطه به نقطه بسیار ساده تر و بهینه تر می باشد.

  منابع تحقیق درموردتغییرات ساختاری، نرخ بیکاری، ساختار صنعت، رشد اقتصادی

شکل ۲-۴٫ ارتباط غیر مستقیم بین برنامه های کاربردی با استفاده از قابلیت مسیریابی پیام در ] ESB 37 [

برای ارتباط غیر مستقیم بین برنامه های کاربردی از طریق یک گرگاه مشترک در ESB علاوه بر کاهش تعداد ارتباطات موردنیاز برای تعامل برنامه ها مزایای دیگری نیز دارد که از جمله می توان به مواردی از قبیل نگهداری و بروزرسانی ساده تر سیستم یکپارچه و همچنین افزایش چابکی در پیاده سازی ساختار یکپارچه سازی برنامه های کاربردی سازمان اشاره نمود.

۲-۸-۲ تبدیل پروتکل انتقال
عدم تطابق پروتکل های ارتباطی در برنامه های کاربردی سازمان، یکی دیگر از مشکلات موجود در یکپارچه سازی برنامه های کاربردی در سازمان ها می باشد و دلیل آن توسعه برنامه ها در سازمان ها و عدم استفاده از پروتکل های یکسان در پیاده سازی آن ها می باشد به نحوی که ممکن است در برخی موارد عدم تطبیق پروتکل های ارتباطی در نرم افزار ارائه دهنده سرویس و نرم افزار مصرف کننده سرویس رخ دهد. استفاده از پروتکل یکسان توسط کلیه برنامه های کاربردی سازمان در عمل دارای محدودیت های فراوان بوده و غیر قابل اجرا می باشد.

شکل ۲-۵٫ برقراری ارتباط بین برنامه های کاربردی با پروتکل های انتقال مختلف با استفاده از پیاده سازی گرگاه سرویس سازمان ] ESB 37 [

2-8-3 تبدیل پیام
موارد دیگری که در پیاده سازی ESB مدنظر قرار گرفته و برای آن راه حل ارائه گردیده است، تبدیل پیام ها و حل مشکل عدم تطبیق فرمت پیام ها و داده ها می باشد. یکی از مشکلاتی که در یکپارچه سازی برنامه های کاربردی در سازمان ها وجود دارد این است که فرمت داده ها و پیام ها در مصرف کننده سرویس و فرمت مورد نیاز برای تامین کننده سرویس با یکدیگر تفاوت دارد و در نتیجه این امر مانع برقراری یا ارتباط و تبادل داده ها بین برنامه ها می گردد.
بنابراین یکی دیگر از کارکردهای اصلی که باید توسط ESB ارائه گردد، تبدیل پیام ها و یا داده ها می باشد. هنگامی که این قابلیت با دو قابلیت اصلی دیگر یعنی مسیریابی و تبدیل پروتکل های ارتباطی ترکیب شود، در نتیجه برنامه های کاربردی می توانند به راحتی و بدون نیاز به تطابق پروتکل ها و فرمت پیام ها و داده ها با یکدیگر ارتباط برقرار کنند.

  منابع پایان نامه ارشد درموردتوفان تندری، دینامیکی

شکل ۲-۶٫ با استفاده از ESB برنامه های کاربردی می توانند حتی زمانی که فرمت پیام ها و پروتکل های ارتباطی متفاوت دارند، با یکدیگر تعامل داشته باشند] ۳۷ [

۲-۸-۴ ویژگی ها و مزایای گذرگاه سرویس
با توجه به مطالب مطرح شده در قسمت قبلی، ESBویژگی های کلیدی ذیل را ارائه می دهد ] ۳۷ [:
مسیریابی مبتنی بر محتوا و متن
تبدیل پروتکل های انتقال
تبدیل پیام ها و داده ها

سرویس و امکاناتی که با استفاده ازESBفراهم می گیرد فراتر از برقراری اتصال و تعامل بین برنامه های کاربردی می باشد و با استفاده ازESBسرویس های ارزش افزوده ای نیز حاصل می گردد که تعدادی از آن ها در ادامه بیان می گردد] ۳۸[:
* فراهم کردن امکان اتصال
* مسیریابی هوشمند
* تامین امنیت و قابلیت اطمینان تعامل
* مدیریت سرویس
* نظارت و ثبت رخدادها

۲-۸-۵ اجزای گذرگاه سرویس
به منظور اجرای ویژگی ها و وظایف مطرح شده برای ESBتعدادی از مولفه ها و اجزا در ساختار تشکیل دهنده آن مورد نیاز می باشد که ضمن نمایش آن ها در شکل شماره ۳-۱۹ تعدادی از آن ها در ادامه بیان می گردد] ۳۹ [:
* سازگارکننده ها: از اجزای اصلی ESBهستند وشرایطی را فراهم می آورند تا ESBبتواند با ورودی/ خروجی متفاوت تعامل داشته باشد.به ازای هر مصرف کننده و یا ارائه دهنده سرویس، یک سازگارکننده خاص وجود دارد که تنها ترکیب خاصی از پروتکل های و فرمت های پیام را تشخیص می دهد.به عنوان مثال می توان سازگارکننده ای را نام برد که کلیه درخواست های ورودی بر مبنای SOAP را روی HTTP ارائه می دهد.
* توزیع کننده: به عنوان یک نقطه ورود مرکزی عمل می کند و وظیفه آن دریافت اطلاعات از سازگار کننده ها و ارسال به قسمت مربوطه برای مسیریابی، تبدیل، غنی سازی، و غیره می باشد. توزیع کننده درخواست ها را به سمت اداره کننده درخواست ها ارسال می کند و همراه با آن قابلیت مسیریابی مبتنی بر محتوا را
در ESB فراهم می نمایند.

شکل ۲-۷٫ اجزای منطقی تشکیل دهنده ] ESB 39 [

* اداره کننده درخواست ها: هر سرویس اداره کننده درخواست مخصوص به خود دارد و وظیفه آن انتقال پارامترهای خاص مربوط به سرویس به موتور مسیریابی برای اجرای مناسب سرویس می باشد.

* موتور قوانین و مسیریابی: وظیفه این مولفه، اجرای تبدیل و غنی سازی وظایف و مسیریابی آنها برای تحویل به نمایندگان سرویس خاص می باشد.
* نماینده های سرویس: به عنوان نقطه انتهایی برای دسترسی به سرویس خاص هستند و با استفاده از سازگارکننده ها با ارائه دهندگان سرویس ارتباط برقرار می کنند.

* موتور تبدیل: این جزء ازESB کلیه پیام ها و یا داده های ورودی را به فرمت مناسب برای ارائه کننده سرویس تبدیل می کند.

* اجزاء غنی سازی : این مولفه به ESB اجازه می دهد تا محتویات پیام را مطابق با نیاز ارائه دهنده سرویس و از طریق یک منبع خارجی (مانند: پایگاه داده) تقویت نماید.

* اجزاءثبت عملیات: این

دیدگاهتان را بنویسید