PDA

View Full Version : مشکل کندی سرعت و تایم اوت در دیتابیس تحت وب



melika_ka
دوشنبه 11 دی 1391, 12:32 عصر
با سلام
من یک دیتابیس تحت وب دارم که کلاینت ها از جاهای مختلف با نرم افزار خودشون به sql server کانکت میشن و اطلاعات موجود روی سرور را بر میدارن
مشکل اینجاس که اکثر اوقات این کار بسیار کند انجام میشه و یا اررور میده. ( معمولا وقتی بیش از 500 رکورد باشه)

نحوه کار به این شکله که یک دیتا تیبل روی ویندوز اپلیکیشن تعریف می کنم و با یک دستور select دیتا را از سرور می خوان و توی دیتا تیبل میریزم . ( که این بخش کار طول میکشه) و بعد با insert اطلاعات رو توی دیتابیس لوکال می نویسم . آیا این روش درسته؟؟
چطور میشه سرعت دریافت اطلاعات را بالاتر برد؟؟
با تشکر

mohsen.net
دوشنبه 11 دی 1391, 20:59 عصر
500 رکورد که اصلا چیزی نیست
از لحاظ سخت افزاری وضعیت سرور را چک کن . مخصوصا حافظه
نحوه کویری هایی که می زنی هم مهمه و ایندکس کردنشان

ab1234
سه شنبه 12 دی 1391, 00:06 صبح
سرعت اجرای کوری روی خود سرور چطوره؟

melika_ka
سه شنبه 12 دی 1391, 00:09 صبح
بله درست می فرمایید 500 رکورد چیزی نیست
از نظر سخت افزاری سرور مشکلی نداره (4گیگ رم داره) کوری ها هم روی سرور راحت ران میشن
منم فکر میکنم اشکال از کوری هاست . نمی دونم چطور باید عمل کنم که سرعت بالا بره ، منظور شما را از "ایندکس کردن" متوجه نشدم ، لطفا بیشتر راهنمایی بفرمایید

ASKaffash
سه شنبه 12 دی 1391, 07:22 صبح
سلام
ربطی به SQLServer ندارد در WinApp اگر مثلا از شی SQLCommand استفاده می کنید CommandTimeOut را افزایش دهید یا صفر قرار دهید

mohsen.net
سه شنبه 12 دی 1391, 11:19 صبح
مقدار پیش فرض timeout برابر 30 ثانیه است . که 30 ثانیه هم زیاده پس مشکل چیز دیگه هست

ramin149
سه شنبه 12 دی 1391, 11:45 صبح
دوست عزیز مشکل از سرعت اینترنت شما است . من هم موقعی که دیتابیسم را روی اینترنت قرار می دهم و روی کامپیوتر اجرا می کنم این خطا ها را نمایش می ده . حتی با سرعت 1 mb و برای من بیشتر موقع ها عصر ها می باشد . و صبح مشکلی پیش نمی آید .

melika_ka
سه شنبه 12 دی 1391, 15:19 عصر
دوست عزیز مشکل از سرعت اینترنت شما است . من هم موقعی که دیتابیسم را روی اینترنت قرار می دهم و روی کامپیوتر اجرا می کنم این خطا ها را نمایش می ده . حتی با سرعت 1 mb و برای من بیشتر موقع ها عصر ها می باشد . و صبح مشکلی پیش نمی آید .

بله دقیقا همینه که می فرمایید
اما این مساله قطعا باید راه حل داشته باشه ، چون یدیدم برنامه هایی که دیتابیس تحت وب دارند و با اینترنت دیالاپ به راحتی کار می کنند ( مثل نرم افزار دفاتر اسناد رسمی)
من فکر میکنم اگه بشه همه داده ها را به یک string تبدیل و ارسال کرد مشکل حل میشه اما نمیدونم چقدر عملیاتی باشه
لطفا دوستانی که تو این زمینه تجربه دارند کمک کنند

حمیدرضاصادقیان
پنج شنبه 14 دی 1391, 10:42 صبح
سلام.
شما به صورت Local وقتی داده ها رو بررسی میکنید همین مشکل رو دارید یاخیر؟

melika_ka
جمعه 15 دی 1391, 13:06 عصر
سلام.
شما به صورت Local وقتی داده ها رو بررسی میکنید همین مشکل رو دارید یاخیر؟

خیر ، local خیلی سریع جواب میده

Reza_Yarahmadi
شنبه 16 دی 1391, 07:44 صبح
یکی از راه کارهایی که میشه برای این موضوع پیشنهاد کرد پیاده سازی برنامه بصورت Multi Tier است. در این مورد جستجو نمایید.

حمیدرضاصادقیان
شنبه 16 دی 1391, 12:51 عصر
شما روی سرور Profiler رو اجرا کنید ببینید چه کارهایی داره رخ میده و بیشترین زمان مربوط به چه عملیاتی هست

melika_ka
شنبه 16 دی 1391, 15:19 عصر
شما روی سرور Profiler رو اجرا کنید ببینید چه کارهایی داره رخ میده و بیشترین زمان مربوط به چه عملیاتی هست

چطور باید این کار را انجام بدم؟

hossein_h62
شنبه 16 دی 1391, 15:52 عصر
چطور باید این کار را انجام بدم؟
Tools > SQL Server Profiler