EnKamran
چهارشنبه 25 مهر 1397, 17:46 عصر
سلام دوستان
تو یکی از پروژه های اخیر که کار میکردم به یه مشکل خیلی جالب برخوردم که فکر میکنم بیشتر شما هم همین مشکل رو دارید.
جریان از این قرار بود که بعذ از یه مدتی که پروژه کارش رو شروع کرده بود و درخواست ها زیاد شده بودن پرفرمنس خیلی اومده بود پایین و واقعا نرم افزار ناپایدار بود، از دسترس خارج میشد و خطا میداد! ریز به ریز کدها رو بررسی کردم هیچ مشکلی نبود یعنی مشکلی که باعث این ناپایداری بشه نبود، خیلی اتفاقی کانکشن ها رو بررسی میکردم که متوجه شدم کانکشن هایی که باز میشن بسته نمیشن تا یه مدت (کوتاه) با یه حساب سرانگشتی دیدم بله همین جریان داره باعث ناپایداری میشه.
وقتی از بلاک using برای HttpClient استفاده میکنیم این مشکل پیش میاد و ویندوز 240 ثانیه هر کانکشن رو باز نگه میداره تا ببینه درخواستی میاد یا نه (ممکنه وسط راه مشکل شبک یا هرچیزی باشه و درخواست دیر به سرور برسه برای همین منتظر میمونه) و دقیقا مشکل همینجا بود، که بعد از استفاده از یک نمونه استتیک از HttpClient و دیدن نتایج و آنالیز تفاوت خیلی زیادی رو دیدم.
نکته جالب این قسمتش بود که همه ما از using استفاده میکنیم و طبق گفته خود مایکروسافت خیلی هم خوبه اما تو این یک مورد باعث همچین مشکلی میسه.
متن کامل مقاله با تصاویر و کدهای پروژه نمونه و همینطور سورس کد پروژه نمونه رو تو سایت گذاشتم میتونید ببینید : https://sadin.ir/Articles/Article/big-mistake-in-using-httpclient
تو یکی از پروژه های اخیر که کار میکردم به یه مشکل خیلی جالب برخوردم که فکر میکنم بیشتر شما هم همین مشکل رو دارید.
جریان از این قرار بود که بعذ از یه مدتی که پروژه کارش رو شروع کرده بود و درخواست ها زیاد شده بودن پرفرمنس خیلی اومده بود پایین و واقعا نرم افزار ناپایدار بود، از دسترس خارج میشد و خطا میداد! ریز به ریز کدها رو بررسی کردم هیچ مشکلی نبود یعنی مشکلی که باعث این ناپایداری بشه نبود، خیلی اتفاقی کانکشن ها رو بررسی میکردم که متوجه شدم کانکشن هایی که باز میشن بسته نمیشن تا یه مدت (کوتاه) با یه حساب سرانگشتی دیدم بله همین جریان داره باعث ناپایداری میشه.
وقتی از بلاک using برای HttpClient استفاده میکنیم این مشکل پیش میاد و ویندوز 240 ثانیه هر کانکشن رو باز نگه میداره تا ببینه درخواستی میاد یا نه (ممکنه وسط راه مشکل شبک یا هرچیزی باشه و درخواست دیر به سرور برسه برای همین منتظر میمونه) و دقیقا مشکل همینجا بود، که بعد از استفاده از یک نمونه استتیک از HttpClient و دیدن نتایج و آنالیز تفاوت خیلی زیادی رو دیدم.
نکته جالب این قسمتش بود که همه ما از using استفاده میکنیم و طبق گفته خود مایکروسافت خیلی هم خوبه اما تو این یک مورد باعث همچین مشکلی میسه.
متن کامل مقاله با تصاویر و کدهای پروژه نمونه و همینطور سورس کد پروژه نمونه رو تو سایت گذاشتم میتونید ببینید : https://sadin.ir/Articles/Article/big-mistake-in-using-httpclient