مقاله معماری سرویس گرا
معماری سرویس گرا دانشجویان و کاربران گرامی محتوای این فایل مقاله معماری سرویس گرا می باشد که در قالب WORD – قابل ویرایش و در 34 صفحه بصورت زیبا و منظم توسط وب سایت دبیر فایل تهیه و تنظیم شده است. برای خرید و دانلود فایل به روی گزینه افزودن به سبد خرید کلیک نمایید.
بخشی از متن :
مقدمه
برای مدت های طولانی برنامه نویسان سعی میکردند تا، کدهای خود را بصورت modular (یک سیستم از بالا به پایین به زیر سیستم های کوچک و نسبتا مستقل تفکیک میشود) بنویسند، تا بتوان از آن در تولید نرم افزارهای دیگر استفاده کرد. تفاوت نوشتن کد بصورت modular و بر اساس معماری سرویس گرا در حجم مخاطبان آن است. دوباره به همان مثال اول بر میگریم، وقتی شما کد خود را به منظور قابل استفاده بودن توسط نرم افزارهای دیگر، به شکل modular مینویسید مانند این است که، یک شبکه تلویزیون کابلی درون یک ساختمان خاص دارید و بنابراین فقط ساکنین آن ساختمان میتوانند از آن بهره برداری کنند.
در جهان امروز طیف مخاطبانی که بالقوه میتوانند از سرویس شما استفاده کنند، كل كاربران روي شبكه اينترنت است. بنابراين بايد مكانيزمي بوجود مي آمد، كه مي توانست پاسخگوي اين محيط جديد (اينترنت) و كاربران آن باشد و بنابراین معماری سرویس گرا به وجود آمد.
معماری سرویس گرا
این معماری توسط دو شرکت IBM , Microsoft به وجود آمد، که هر دو شرکت طی سالهای اخیر از حامیان اصلی سرویس های وب و عامل بسیاری از ابداعات جدید در حیطهی سرویس های وب، مانند UDDI ,WSE بوده اند. قابل ذکر است، كه در آخرین معماري در حال توسعه، در توليد نرم افزار كه هنوز هم در مرحله تحقيقاتي است MDA، تدابيري جهت هماهنگي با معماري سرویس گرا در نظر گرفته شده است. از نمونه هاي استفاده از اين معماري در کشور خودمان، سازمان ثبت احوال كشور است كه موظف شده تا پايگاه هاي اطلاعاتي خود را بصورت سرویس وب و مبتني بر اين معماري به ساير نهادها مانند نيروي انتظامي و ساير دستگاه ها ارائه دهد.
سرویسها چه هستند؟
بسیاری از ما آنقدر با تکنولوژی های سرویس های وب آشنا هستیم که اغلب درباره اين كه خود سرویسها واقعا چه هستند، فکر نمیکنیم. هر کس که از سایت های تجارت الکترونیکی به صورت آنلاین خرید کرده باشد، با مفهوم سرويس ها آشنا است. وقتی که سفارشتان را دادید، باید اطلاعات کارت اعتباري تان را ارایه کنید كه به طور معمول توسط يك فراهم كننده سرويس ثانويه، تاييد و شارژ مي شود. وقتي كه سفارش پذيرفته شد، شركت سفارش گيرنده با يك شركت فراهم كننده سرويس حمل ونقل سرویستان را فراهم مي كند و در نهايت كالاي شما تحويلتان مي شود.
مقاله معماری سرویس گرا
در ادامه سه تعریف می آوریم که در کنار یکدیگر ماهیت یک سرویس را شرح میدهند:
۱- سرویسها اجزاء مستقلی هستند كه پیغام های XML با ساختار مشخص و خوش تعریف را پردازش میکنند. XML سادهترین ورژن SGML استاندارد برای ایجاد و طراحی سند های HTML است (مناسب برای استفاده در سایت های اینتر نتی). SGML یک استاندارد مدیریت اطلاعات است که در سال 1986 به وسیله سازمان بین المللی استاندارد سازی (ISO) معرفی گردید و وسیلهای است برای ارائه اسناد مستقل از یک سیستم يا برنامه كاربردى خاص ضمن به کارگیری اطلاعاتی چون قالب بندی، شاخص دهی و حفظ اطلاعات پیوندی در اسناد.
۲- سرویسها دارای رابط های خوش تعریف هستند که به وسیله یک سند مبتنی بر XML که سند WSDL خوانده میشود، به این سند گاهی قرارداد WSDL نیز گفته میشود، پردازش می شوند. محتویات این سند، عملیاتی (متدهایی) كه توسط سرویس ارائه میشود را شرح میدهد. از جمله اطلاعات مربوط به انواع داده، اطلاعات نحوه اتصال به سرویس، جهت یافتن و ارتباط با عملیات سرویس وب.
۳- سرویسها دارای نقاط انتهایی (Endpoint)هستند كه استفاده کنندگان از سایر سرویسها میتوانند بر اساس آدرس سرویس (URL)معمولاً به آن ها متصل شوند. اين همان چيزي است كه ارتباط(جفت شدن) آزادانه خوانده میشود.
سرویس ها می توانند به دو شکل ساده و ترکیبی ارائه شوند. سرویس های ترکیبی، سرویس هایی هستند که بر اساس بکارگیری چند سرویس ساده ( یا ترکیبی) ایجاد می شوند. برای مثال، ممکن است سیستم توزیع شده ای بر اساس چند سرویس ساده صدور صورتحساب، ثبت سفارش، مدیریت روابط مشتری و… سرویس های ترکیبی گسترده تری در ارتباط با حرفه اي خاص ایجاد نماید. پس می توان گفت: سرويس ها اجزاي توزيع شده با رابط های تعریف شده و مشخص هستند که پیغام های XML را پردازش و تبادل میکنند.
معماری سرویس
چندین مصرفکننده سرویس میتوانند با ارسال پیام اقدام به فراخوانی سرویسها نمایند. این پیامها معمولا توسط يك گذرگاه سرویس تغيير شكل داده شده و به سوي سرويس مناسب هدايت ميگردند. معماري سرويس ميتواند يك موتور قواعد تجاري را فراهم سازد كه امكان تلفيق قواعد تجاري در يك سرویس یا چندین سرویس را عملی سازد.
معماری سرویس مزبور همچنین یک زیربنایی مدیریت سرویس فراهم میآورد که سرویسها و اعمالی از قبیل بازرسی، پرداخت صورتحساب، و واقعهنگاری (logging) را مدیریت مینماید. به علاوه، اين معماري انعطافپذيري ناشي از دارا بودن فرایندهای تجاری تغییر پذیر را به سازمانها ارزانی میدارد، فرایندهایی که نیازمندیهای تنظیمی همانند Sarbanes Oxley (SOX) را مد نظر قرار ميدهند، و سرویسهای اختصاصی را بدون تحت تاثير قرار دادن ساير سرویسها تغییر میدهند.
معرفی SOA و چند کار برد آن:
معماري سرويس گرا (SOA) شکل تکامل یافته محاسبهگری توزیع شده مبتنی بر فرضیه طراحی تقاضا/پاسخ برای برنامههای کاربردی همگام و ناهمگام است. منطق تجاري يا توابع اختصاصي يك برنامه كاربردي به صورت ماژولار در آمدهاند و به عنوان سرویسهایی برای برنامههای کاربردی مصرف کننده/کلاینت ارائه گردیدهاند.
مهمترین نكته در مورد این سرویس ها طبيعت اتصال آزادانه آنهاست؛ بدين معني كه رابط سرويس، مستقل از پيادهسازي است.
تعاریف گوناگونی از معماری سرویس گرا ارائه شده است كه از جمله آنها می توان به تعاریف زیر اشاره كرد:
1. مجموعه قوانین، سیاست ها و چارچوب هایی كه نرم افزارها را قادر می سازد تا عملكرد خود را از طریق مجموعه سرویس های مجزا و در عین حال مربوط به هم در اختیار سایر درخواست كنندگان قرار دهند تا بتوانند بدون اطلاع از نحوه پیاده سازی و تنها از طریق رابط های استاندارد و تعریف شده، این سرویس ها را پیدا كرده و فراخوانی نمایند.
2. روشی برای ساخت سیستم های توزیع شده ای است که در آنها عملکرد سیستم بصورت سرویس در اختیار کاربران و یا سایر سرویسها قرار می گیرد.
3. از دیگر تعاریف ارائه شده می توان به “واحدهای نرم افزاری آماده در شبکه (Network-available Software Unit) ” یا “سرویس های سطح کسب و کار (Business-level services) ” اشاره کرد.
معماریهای سرویس گرا دارای خصوصیات اصلی زیر هستند:
– سرویس های SOA دارای رابط های خود توصیف گر در اسناد XML مستقل از پلتفرم هستند. زبان توصیف سرویسهای وب (WSDL) استاندارد به كار برده شده برای توصیف این سرویسها میباشد. سرویسهای SOA با پیامهایی که رسماً توسط مدل XML (که XSD نیز نامیده میشود) تعریف شدهاند ارتباط برقرار مینمایند. ارتباط میان مصرف کنندگان و فراهم کنندگان يا سرويسها معمولا در محيطهاي ناهمگن رخ ميدهد، با دانش كم يا بدون هیچ دانشی در مورد فراهمکننده. پیامهای مبادله شده میان سرویسها را ميتوان به عنوان اسناد تجاري مهم پردازش شده در يك سازمان نگريست.
– سرویسهای SOA توسط یک رجیستری که به عنوان یک فهرست دایرکتوری عمل میکند نگهداري ميگردند. برنامههاي كاربردي ميتوانند سرويسها را درون رجیستری جستجو نمایند و سرویس را فراخوانی کنند. توصیف، تعریف، و یکپارچگی جهاني (UDDI) استانداردی است كه برای رجیستری سرویس مورد استفاده قرار گرفته است. هر سرويس SOA داراي يك كيفيت سرويس (QoS) مرتبط با خود است. برخی از عناصر اساسی QoS شامل نیازمندیهای امنیتی، از قبیل احراز هویت و صدور مجوز، پیام رسانی قابل اطمینان، و خط مشیهایی در این زمینه که چه افرادی میتوانند سرويسها را فراخواني نمايند، ميباشد.می توان گفت: معاري سرويس گرا (SOA) روشي جديد و در حال تكامل براي ساخت برنامه هاي توزيع شده با Distributed Application است.
معماری سرویس گرا
با رويكرد سرويس گرا مي توان راه حل هایي را ارائه داد كه به مرز دامنه هاي سازمان، شركت يا دپارتمان محدود نيستند. با استفاده از SOA مي توان در شركتي كه داراي سيستم ها و برنامه هاي كاربردي مختلف روي پلتفرم هاي متفاوت است، يك راه حل يك پارچه سازي با استقلال زياد(loosly coupled) ساخت كه جريان يكنواخت و هماهنگ كار را تضمين كند. نياز به معماري سرويس گرا از جنبه اي ديگر نيز به نحوه بارزي در برنامه هاي كاربردي E-Commerce مشهود است.
اگر مثلا جزء (componet) مربوط به پرداخت با كارت اعتباري offline و يا غير فعال باشد، قرار نيست كه فرايند فروش متوقف شود. بلكه سفارش ها بايستي پذيرفته شوند وعمليات پرداخت به وقت ديگري موكول شود. مثل ساير معماری های توزیع شده، SOA ساخت برنامه هاي كاربردي با استفاده اجزايي كه در domainهاي جدا از هم را قرار دارند را ممكن مي سازد. SOA از سرويس هاي وب به عنوان نقاط ورود برنامه كاربردي استفاده مي كند كه از لحاظ مفهومی معادل همان اجزای proxy و stub در سيستم هاي توزيع شده سنتي مبتني بر اجزاء هستند.
مقاله معماری سرویس گرا
با این تفاوت که در این جا ارتباط بین سرویس وب و استفاده کننده خیلی آزاد ترانه و مستقل تر (loosely coupled) است. بعلاوه SOA به خاطر در بر داشتن فاکتورهایی که اهمیت حیاتی در تجارت دارند، نیز منحصر به فرد است. فاکتورهایی نظیر: قابلیت اطمینان سرویس، جامعیت پیام، یکسانی تراکنش و امنیت پیام. در امور تجاري واقعي نمي توان روي سرويس هايي كه يك درخواست را فقط به خاطر اين كه بتوانند بفهمند، پردازش مي كنند حساب كرد. در امور تجاري به قطعيت و اطمينان بيشتري نياز است. واضح است كه سيستم هاي مختلف ممكن است بعضي اوقات غير فعال باشند و يا پاسخگويي آن ها در دفعات مختلف متفاوت باشد. با وجود اين هيچكدام از اين موارد نبايد براي كنار گذاشتن ياعدم پاسخ به يك درخواست باشند.
نکات مهم : پس از پرداخت وجه لینک دانلود به شما نمایش داده میشود و برای اطمینان بیشتر یک لینک دیگر به ایمیل شما ارسال میگردد.
رسول حسینی فر –
مقاله خوبی بود تشکر میکنم از مدیر سایت
دبیر فایل –
با سلام و احترام
ضمن تشکر از خرید و حسن انتخاب شما بابت دیدگاه ارسالیتون بسیار سپاسگزاریم.
موفق و موید باشید.