PDA

View Full Version : خطای time out در برنامه بعد از یک مدت کار کردن باسایت



hamid mabhoot
چهارشنبه 26 مهر 1391, 12:35 عصر
سلام دوستان در سایت که به زبان asp است بعد از یک مدت کار کردن باسایت خطای time out میده و از برنامه خارج میشه.لطفا راهنمایی کنید

AmirGhasemi
چهارشنبه 26 مهر 1391, 12:48 عصر
الان مشكلت چي بود؟
مي خواهي خطا را بسازي يا خودت داري با يك سايت كار مي كني كه اين خطا را مي ده؟
البته اين خطا نيست بلكه يك قابليت براي اينه كه اگه كاربر لاگ اوت نكرد بعد يك مدت Idle بودن اونو از فعال بودن خارج كنه
حالا اصل سوالت كجاست؟

Mag-Mag
چهارشنبه 26 مهر 1391, 18:35 عصر
ببین این اشکال واسه اینه که سایتت داره از منابع زیادی از سرور استفاده می کنه
مثلا application pool
مثلا تعداد session هات خیلی زیاده
یا باید سایتت رو بهینه کنی
یا سایتت رو رو یک سرور Dedicated آپ کنی

hamid mabhoot
پنج شنبه 27 مهر 1391, 19:31 عصر
منظورتون از بهینه کردن چیه؟نه تعداد sessionهام زیاده وapplication pool رو هم نمدونم چیه.
سوالم اینجاست که سایتی که طراحی کردم بعد حدود 20 دقیقه از صفحه خارج میشه و خطای time out میده ومیگه از max pool size استفاده کردی.اما من همه جا دقت کردم و سریعا con رو قطع کردم بعد از استفاده.

aebrs@yahoo.com
جمعه 28 مهر 1391, 18:56 عصر
هر جلسه (session) یک زمان انقضاء (timeout) دارد که به صورت پیش فرض توسط سرور و بعد توسط شما قابل مدیریت کردن می باشد. شما می توانید این مدت را در وب کانفیگ (web.config) تنظیم کنید
معمولا چیزی شبیه به این کد :



<sessionState mode="InProc" cookieless="false" timeout="20"/>


اگر خارج شدن دقیقا بعد از زمان مشخص رخ می دهد موضوع می تواند همین زمان انقضاء باشد البته این به شرط آنست که در تمام این مدت 20 دقیقه شما هیچ کاری در آن سایت انجام ندهید.
اما اگر در حال کار کردن با آن سایت هستید و با صفحه کلید و موس و غیره یا اسکرول کردن کار می کنید و با زهم خارج می شود موضوع می تواند چییز دیگری باشد
پس به نظر می رسد لازم باشد بیشتر توضیح دهید
از سرور بگوئید
از لاگ این کردن بگوئید
از وب کانفیگ بگوئید
و ...
موفق باشید

hamid mabhoot
یک شنبه 30 مهر 1391, 00:59 صبح
خیلی خیلی ممنون دوست عزیز.اما من time out session رو نمیگم اونکه میدونم به طور پیش فرض بعد از 10 دقیقه اگر کاربر باسایت کار نکنه خارج میشه اما نه از برنامه که خطا بده بلکه ان قسمت هایی از سایت که فرد با توجه به session ایجاد شده میتونست وارد شه دیگه نمتونه. من time out connection رو میگم که بعد از حدود 20 تا 25 دقیقه که در حال کار کردن باسایت هستم از برنامه خارج شده وخطای time out رو در اتصال به پایگاه داده می دهد .متن کامل خطا به صورت زیر است.
Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached.


اما من دقت زیادی در اتصال و بستن پایگاهم کردم که یسریعا بعد از باز کردن پایگاهم را ببندم.حالا اگر توضیحات کافی بود متشکر میشوم اگر راهنمایی کنید

Mag-Mag
یک شنبه 30 مهر 1391, 08:52 صبح
یه چیری هست که توی connection string می داری به اسم Max Pool Size که این می شه The maximum number of connections allowed in the pool
حالا این default اش 100 هست
تو توی یک صفحت که داره لود می شه 100 بار که connection ات رو باز نمی کنی درسته ؟
اگر این کارو می کنی باید یا تعداد اینو بشتر کنی یا که اصلا فک نمی کنم اینطوری باشه،چون این کد که بهینه نیست،
پس فقط می مونه یک احتمال اونم این که حتما یه جایی یک connection ای رو که open کردی نبستی!

hamid mabhoot
سه شنبه 02 آبان 1391, 23:50 عصر
از راهنمایی های شما دوست عزیز متشکرم .من یک سوال دارم از شما واین اینکه مگه میشه یک conection روچند بار باز کنی ؟ آخه من وقتی یک بار con رو باز می کنم وبه طور مثال دوباره بخوام ازش استفاده کنم وبازش کنم خطا میده که conات باز هست دوباره که نمیشه باز کنی؟ شما مطمئنی منظور از max poolتعداد باز کردن های conاست؟ اما من دقت زیادی کردم در بستن پایگاه دادم .توروخدا کمکم کنیدددددددددددددد.

nafarinesh
چهارشنبه 03 آبان 1391, 08:09 صبح
من هم هم چنین مشکلی داشتم.
احتمالا نرم افزار ی رو نصب کردی که VS رو خراب کرده.

من چون احتیاج به نصب دوباره windows داشتم. بعد از اون دیگه همچین مشکلی پیش نیومد.