PDA

View Full Version : ترفند شما برای رفع کند شدن برنامه چیه؟



sgh_programer
پنج شنبه 30 آذر 1391, 19:27 عصر
سلام خدمت دوستان عزیز
ضمن تبریک یلدا

دوستان من یه برنامه نوشتم و اونو به مشتری دادم حالا حدود 7000 فاکتور ثبت کرده
وقتی که میخواد فاکتوری ثبت کنه یه خورده طول میکشه تا فاکتور ثبت بشه(کند شدن سرعت برنامه)
بانک اطلاعاتیم sql است

دوستان اگه کسی برای این مشکل راهکاری داره ممنون میشم راهنمایی کنه.

sgh_programer
جمعه 01 دی 1391, 07:23 صبح
یعنی کسی به چنین مشکلی برنخورده؟

ali.khoban
جمعه 01 دی 1391, 08:54 صبح
سلام

من از ترد استفاده میکنم/

کد ثبتو میزارم تو ترد

danialafshari
جمعه 01 دی 1391, 10:30 صبح
یک راه دیگه هم استفاده از sp است

veniz2008
جمعه 01 دی 1391, 10:31 صبح
سلام. ببینید 7000 و 70.000 و 700.000 دیگه واسه sql یه شوخی بچه گانه بیشتر نیست. با توضیحاتی که شما دادید اصلا نمیشه کمکی کرد. ولی بطور کلی چندتا مسئله رو باید در برنامه هامون رعایت کنیم:
1. بهتره که از stored procedure ها استفاده کنیم.
2. حتما منابعی رو که از سیستم می گیریم ( مخصوصا زمانیکه از دیتاتیبل و دیتاست استفاده می کنیم) بعد از اتمام کارمون، این منابع رو پس بگیریم. این اشیا از رم سیستم استفاده میکنن و اگر مدیریت نشه احتمالش زیاده که در سیستم هایی که رم زیادی ندارن با مشکل مواجه بشیم.
3. طراحی دیتابیس باید اصولی باشه. از دید هر کدوم از ما، جداولی که ایجاد می کنیم بهینه هستند ولی زمانیکه با یک حرفه ای و با تجربه مشورت میکنیم می بینیم که جداولمون بعضا مشکلات اساسی دارن.
4. سبک کدنویسی در سمت #C اهمیت فوق العاده ای داره. اینکه شما 700.000 رکورد رو برای نمایش چطوری بازیابی میکنی خیلی اهمیت داره. توی سیستم مشتری که مثلا رم 512 داره، اگر ما بخوایم کیلویی برنامه بنویسیم مطمئنا با مشکل مواجه می شیم و مشتری فکر میکنه تمام مشکلات بخاطر برنامه ای هست که ما نوشتیم.
5. به نظر من بهتره که بعد از اینکه تعداد رکوردهای جداولمون به یه حدی رسید، اول از داده ها backup گرفته بشه و بعد یکسری از داده ها که مدت زمان زیادی از درج و استفاده شون گذشته و در حال حاضر استفاده ای ازشون نمیشه رو حذف کنیم. اینطوری دیتابیس شما هم یه جونی میگیره.
موفق باشید.

hakim22
جمعه 01 دی 1391, 11:09 صبح
بستگی داره شما از چه روشی برای اتصال به سرور استفاده کرده باشید.

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

اول کمی متد مورد استفاده ی خود را شرح دهید.
در مورد دستوراتی که در پایگاه داده استفاده کرده اید تجدید نظر کنید.
معمولا برنامه نویس ها همه ی داده های SQL را به یک جدول ثانی منتقل می کنند و روی آن جدول تغییرات را اعمال کرده و سپس آن جدول را در پایگاه ثبت می کنند.
در حالی که این مرحله در خیلی موارد نیازی نیست.

یکی دیگر از مشکلات ممکن است join های زیاد باشد. بیش از حد نرمال کرده پایگاه خودش یک عیب است. چون بعدا برای SQL هماهنگ کردن کار مشکلی میشود
همیشه میشود با طراحی یک پایگاه داده ی مناسب بجای استفاده از شرط های پیچیده جستجوهای ساده تری انجام داد.

شما باید اطلاعات بیشتری در مود کد برنامه خودتان در اختیار ما قرار بدید