فرض کنید که یک سرویس WCF دارید که میتواند به ۱۰۰ نفر به طور همزمان خدمات دهد. حال اگر این ۱۰۰ نفر به ۱۱۰ نفر افزایش پیدا کند چه اتفاقی میافتد؟ به احتمال زیاد سیستم از کار افتاده، کل ۱۱۰ نفر از خدمات محروم میشوند، نیاز به restart سرویس مربوطه پیدا میکنید و در نهایت …
در ارتباط با بحث Instance management فرض کنید حالت یک instance را در همه حالات حفظ کنید. مثلاً اگر کلاینت قطع شد یا از یک proxy دیگر استفاده کرد، یا حتی اگر سرور خاموش شد. منظور از حفظ حالت، حفظ اطلاعات داخلی instance آبجکت سرویس مثل فیلدهای private آن است. به این حالت durable service …
هر سرویسی در WCF توسط یک کلاس ارائه میشود. مثلاً فرض کنید که سرویسی برای محاسبه حقوق یک کارمند وجود دارد. پیادهسازی این سرویس میتواند به شکل متودی از یک کلاس فرضی به نام CalcClass باشد. وقتی که کلاینتی به سرویس WCF مورد نظر وصل شده و یکی از متودهای آن را فراخوانی نماید، WCF …
Per-Session یکی دیگر از انواع Instance Management در WCF است. در این روش به ازای هر کلاینت (پراکسی) یک instance از آبجکت سرویس ایجاد میشود. Per-Session به عنوان یک روش statefull معادل روش برنامهنویسی Client-Serverی کلاسیک است. که در آن را کلاینت به سرور وصل شده و شروع به ارسال درخواستهایش میکند بدون آن که …
Per-Call اصلیترین نوع instance management سهگانه در WCF است. در این روش با هر request کلاینت، یعنی با فراخوانی هر یک از متودهای سرویس، یک instance از object سرویس ایجاد شده و پس از اتمام درخواست آن instance از بین میرود. روش Per-Call نسبت به بقیه دارای مزایایی است از جمله مشغول نگه نداشتن منابع …