Abstract
Service-Oriented architecture is a developing method to creating distributed programs for flexible and dynamic architecture and is highly suitable for expanding the distributing systems. The use of this architecture has increased the design of software systems. Reliability is the main challenge of this architecture. The fault tolerance mechanism is one of the existing mechanisms for creating reliable services and failure rate measurement of the system is a challenge for fault tolerance. In this paper we propose a method named Service-Oriented SysFailRate Measurement for measuring the failure rate of the system in service-oriented architecture using fuzzy logic. In this system we used incomplete description of a service, lack of integration, incorrect format, and being out of the pre-determined time out factors to measuring the failure rate. Testing rests demonstrated that this approach is promising to significantly improve measuring the failure rate in Service-Oriented architecture
چکیده
معماری سرویس گرا را میتوان متدی توسعه یافته به منظور ایجاد برنامه های توزیع شده ای برای معماری پویا و انعطاف پذیر دانست که یک چنین معماری ای را میتوان برای توسعه ی سیستم های توزیع کننده بسیار مناسب دانست. استفاده از این معماری باعث افزایش طراحی سیستم های نرم افزاری گردیده است. یکی از چالش های اصلی در این معماری، قابلیت اطمینان میباشد. مکانیسم تحمل پذیری در برابر خطا را میتوان یکی از مکانیسم های موجود برای ایجاد سرویس هایی ایمن دانست که اندازه گیری نرخ خطا در آن میتواند برای حمل پذیری در برابر خطا، یک چالش باشد. در این مقاله قصد داریم متدی را با نام SysFialRate سرویس گرا ارائه دهیم که نرخ خطای سیستم را در یک معماری سرویس گرا و با استفاده از منطق فازی اندازه گیری میکند. در این سیستم، ما از تشریح ناقصی از سیستم استفاده کرده ایم که فاقد ادغام بوده و فرمت نادرستی دارد و برای اندازه گیری نرخ خطا، از فاکتور های زمانی خارج است. تست ها نیز نشان داده اند که این روش میتواند به میزان قابل ملاحظه ای باعث بهبود نرخ خطا در معماری سرویس گرا گردد
1-مقدمه
معماری سرویس گرا را میتوان جذاب ترین روش برای توسعه ی سیستم نرم افزاری دانست که از آن برای تولید برنامه های کاربردی پیچیده استفاده میشود. با استفاده از این روش، برنامه های عملی مبتنی بر معماری سرویس گرا، بر اساس سرویس ایجاد میشوند ولی کدگذاری نشده اند. در داخل این معماری، یک سرویس را میتوان یک تابع یا مجموعه ای از توابع و اعمالی دانست که یک برنامه ی کاربردی را هدایت میکنند. در سیستم های قدیمی ای که بر مبنای سرویس ها نبوده اند، این توابع به صورت خودکار در داخل سیستم تبدیل میشدند[1]. امروزه، معماری سرویس گرا در سطح زیادی به عنوان یک معماری انعطاف پذیر برای توسعه ی سیستم های پویا استفاده میشود[2,3]. این سیستم، دارای اتصالات و پیکربندی پویایی برای توسعه ی سیستم های توزیعی مختلف می باشد…