جلسه دهم

Session | TimeOut | InProc | SQLServer| StateServer


تحقیق : 

1- Serialize کردن چیست ؟

2- Web Farm & Web Garden ؟

3- Application Pool ؟



نظرات 3 + ارسال نظر
آتنا شنبه 4 شهریور 1391 ساعت 01:23 ب.ظ

Serialization
می توان اشیا را دقیقا به همان سادگی ذخیره سازی انواع عددی و رشته ای درون view state ذخیره کرد. البته برای ذخیره سازی یک ایتم درون view state , ASP.NET باید قادر به تبدیل آن به یک جریان از بایت ها باشد طوری که قابل درج در فیلد ورودی پنهان موجود در صفحه باشد. این فرایند Serialization یا متوالی سازی نامیده می شود .
برای متوالی سازی اشیا باید یک صفت Serializationقبل از تعریف کلاس قرار گیرد . اگر این صفت نباشد کلاس قابل متوالی سازی نبوده و امکان قرار گیری نمونه هایی از ان درون view state وجود ندارد .

web farm
اگر ASP.NET با استفاده از بیش از یک سرور وب که معمولا web farm شناخته می شود .میزبانی شود به چند مرحله پیکر بندی بیشتر برای اطمینان از هم زمانی تمامی سرور های وب نیاز خواهد داشت .
برخی برنامه های کاربردی روی web farm اجرا می شود . web farm گروهی از کامپیوترهای سرور است که مسولیت مدیریت در خواست ها را به طور مشترک انجام می دهد .برای حجم بارگذاری بالا و با مدیریت سنگین ولی مناسب برای وب سایت های کوچک ومتوسط.

Application pool
به منظور تغییر حساب کاربری در IIS6,IIS7 باید Application pool به کار رفته برای اجرای برنامه کاربردی تحت وب را تغییرو Application pool در بالای ساختار درختی IIS Manager را گسترش و Application pool مورد نظر انتخاب و........
Application pool برای استفاده ازیک حساب کاربری خاص پیکربندی.....

محبوب شنبه 4 شهریور 1391 ساعت 03:28 ب.ظ

باسلام
جواب تحقیق ، مورد سوم:Application Pool


Worker Process :
Worker Process (w3wp.exe) برنامه تحت وب ASP.Net را در IIS اجرا می کند. و با استفاده از HTTP مسئولیت مدیریت تمامی درخواست و پاسخ هایی (Request & Response) که از سمت client میاد را برعهده دارد. تمامی عملکرد ASP.Net تحت حوزه Worker Process اجرا می شود. وقتی یک درخواست از سمت client به سرور میاد Worker Process مسئول ایجاد Request & Response است. خلاصه میتوانیم بگوییم Worker Process قلب برنامه تحت وب ASP.Net است که روی IISاجرا می شود.

Application Pool :
یک گروهی از یک یا بیشتر URL است که توسط یک Worker process یا مجموعه ای از Worker process به کار گرفته می شود. هر Application داخل یک Application Pool، worker process یکسانی را به اشتراک می گذارند.چون هر work processبه عنوان نمونه ای جداگانه از work process اجرایی(w3wp.exe) اجرا میشود، worker processای که سرویس های یک application pool را بر عهده دارد از work processهایی که سرویس های دیگری را برعهده دارند جداست. هر worker process یک محدوده پردازش جداگانه فراهم می کند که در نتیجه آن وقتی یک application به یک application pool اختصاص پیدا کرد مشکلات در دیگر application pool ها روی application تأثیر نگذارد. و به عبارتی دیگر : تضمین می کند که اگر worker process ای fail شد روی دیگر برنامه های در حال اجرا روی دیگر application pool ها تأثیری نگذارد. وقتی شما می خواهید تضمین کنید که application ها و وب سایت هاتون ایمن و مطمئن هستند ازچندین application pool استفاده کنید. به عنوان مثال، یک سازمان ممکنه وب سایت منابع انسانی و وب سایت مالی اش رو روی یک سرور ولی در application pool های متفاوتی بگذارد. استفاده از application pool متفاوت جهت جدا کردن برنامه ها کمک می کند تا از دستیابی و تغییر یا استفاده از اطلاعات محرمانه توسط مشتریان، ممانعت به عمل آورده شود. یک ISP که خدمات میزبانی وب سایت ها و application ها را بر عهده داردد ممکنه برای رقابت با دیگر شرکت ها خدمات وب هر شرکت را روی یک سرور اما در application pool های متفاوت قرار دهد.
خلاصه اینکه ...: application pool یکی از مهمترین چیزهایی است که باید برای applicastion ها دریک محیط تولید ایجاد کرد . Application poolها از مجموعه ای از IIS work process های جداگانه که تنظیمات یکسانی را به اشتراک می گذارند، استفاده می کنند. application pool ها ما را قادر می سازند تا web application های خود را برای امنیت بیشتر، قابلیت اعتماد بیشتر و در دسترس پذیری ایزوله کنیم. و موجب می شود وقتی یک work process یا application دچار مشکل یا recycle شد، دیگر برنامه ها و work process ها آسیبی نبینند.
جهت آشنایی بیشتر با انواع application pool ها و هم چنین نحوه ایجاد application poolو تنظیمات آن و اختصاص دادن application pool در ASP.Net به لینک های زیر مراجعه فرمایید.
http://www.codeproject.com/Articles/28693/Deploying-ASP-NET-Websites-on-IIS-7-0

http://www.developer.com/net/asp/article.php/2245511/IIS-and-ASPNET-The-Application-Pool.htm
پیشنهاد : توضیحات رادر word کپی کنید.

محبوب یکشنبه 5 شهریور 1391 ساعت 01:11 ب.ظ

باسلام
Web Garden :
به طور پیش فرض، هر application pool ای داخل یک worker process (w3wp.exe) اجرا می شود. ما میتونیم چندین worker process را داخل یک application pool داشته باشیم. یک application pool به همراه چندین worker process داخل خودش، Web Garden نامیده می شود. بسیاری از worker process ها با application pool یکسان میتوانند عملکرد خروجی و زمان پاسخ برنامه را بهبود بخشند. و هر worker process باید Thread و فضای حافظه مختص خودش را داشته باشد.برخی محدودیت ها در استفاده از web garden وجود دارد.مثلاً اگر از session mode ـِ Inproc استفاده کنیم، برنامه به درستی کار نمی کند چون session توسط یک worker process متفاوت مدیریت میشود. برای جلوگیری از این مشکل بهتره از session mode ـِ Outproc یا State Server و SQL-Server session state استفاده کنیم.
مزیت اصلی web garden : worker process ها در web garden، درخواست هایی را که برای application pool مشخصی می آید را به اشتراک می گذارند..و اگر یک worker process به هر دلیلی از کار بیفتد (یا fail شود) worker process دیگری می تواند پردازش درخواست ها را ادامه دهد.

Web Farm :
کاربردش برای زمانی است که تنها یک وب سرور داریم و چندین client که برای منابع به سرور درخواست میدهند. اما وقتی حجم زیادی از ترافیک ورودی برای وب سایت ها هست، تنها یک سرور برای پردازش درخواست کافی نیست. ممکنه به چندین سرور برای host کردن Application نیاز داشته باشیم تا ترافیک را در میان آنها تقسیم کنیم. به این حالت web farm گفته می شود. بنابراین وقتی داریم یک وب سایت را host میکنیم روی چندین سرور توسط Load Balancer ، web farm نامیده میشود.
برای اطلاعات ببیشتر در مورد تفاوت web garden & web farm می توانید به لینک زیر رجوع کنید:
http://www.codeproject.com/Articles/114910/What-is-the-difference-between-Web-Farm-and-Web-Ga


برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد