PDA

View Full Version : چگونگی و زمان پردازش نمرات دریافت شده از کاربران



barnamenevis2016
شنبه 16 خرداد 1394, 00:49 صبح
سلام....:متفکر:
من کلی مثلا مطلب گذاشتم...حالا کاربرا می آن واسه هر مطلب نمره می دن...از چند دیدگاه و منظر به اون مطلب نمره می دن...و نمرات در پایگاه داده ثبت می شه...حالا نمره کل و نتیجه ارزیابی کنار هر مطلب قرار می گیره...سوالم اینه که منطقی و برای اینکه برنامه با هیچگونه گافی همراه نباشه، ما بیام موقعی که مطالب نمایش داده می شه...همه نمرات درج شده توسط کاربران رو از پایگاه بگیرهیم و پردازش کنیم و حساب کتاب کنیم و معدل و نمره کل رو کنار مطلب بزاریم بهتره و یا نه...وقتی که کاربر نمرات رو می ده...همون موفع هم پردازش انجام بشه و با توجه به نمرات ثبت شده قبلی نمره کل رو در جایی ثبت کنیم که موقع نمایش مطلب دیگر پردازشی برای بدست آوردن نمره کل انجام ندیم و این رو به خاطر داشته باشید که مثلا در یک صفحه چه بسا چندین مطلب قرار داره و باید نمرشون هم کنارشون درج بشه. و نتیجه پردازش بیشتر لازمه و همچنین این نکته رو هم در نظر داشته باشید که در نتیجه و نمره کل، نوع و مقام ورتبه کاربری که نمره داده هم ملاکه...در نتیجه اگر رتبه کاربر بالا رفت...نمره کل هم در نتیجه تحت تاثیر بالا رفتن رتبه کاربر تغییر می کنه و بالا می ره و در نتیجه باید یک جورایی از نو رتبه کل و یا نمره کل اون مطلب محاسبه بشه...خلاصه. ..کدوم روش معقول تر و بهینه تر و بدونه گافه...و اصلا همچین کاری اصلا می تونه معقول باشه...؟:متفکر:
ممنون

H:Shojaei
شنبه 16 خرداد 1394, 01:06 صبح
اینطور که من متوجه شدم شما میگین برای جمع بندی نهایی امتیاز دهی بهتره وقتی کاربر امتیاز میده این جمع بندی انجام بشه یا نه وقتی که میخوایم مطالب رو بگیریم از دیتابیس جمع بندی ها ی مطالب هم انجام بشه...
خوب معلومه دیگه اگر قرار باشه با هر امتیاز یه سری عملیات روی چندین جدول برای بدست آوردن یه عدد انجام بشه که هر زمانی هم میشه اونو بدست آورد چرا با هر امتیاز این کارو بکنیم؟!!
هربار که مطلب قراره خونده بشه جمع کل رو با هر معیاری داره میزنیم و به کاربر نمایش میدیمش...

barnamenevis2016
شنبه 16 خرداد 1394, 01:12 صبح
*********

خوب معلومه دیگه اگر قرار باشه با هر امتیاز یه سری عملیات روی چندین جدول برای بدست آوردن یه عدد انجام بشه که هر زمانی هم میشه اونو بدست آورد چرا با هر امتیاز این کارو بکنیم؟!!
هربار که مطلب قراره خونده بشه جمع کل رو با هر معیاری داره میزنیم و به کاربر نمایش میدیمش...
**********
ممنون...بله منظورم رو درست فهمیدید...خوب من نگران اینم که مثلا سرعت بالا اومدن سایت کم بشه...از بابت پردازش نمرات...و در کل سرعت سایت پایین بیاد...به خاطر همین مثلا موقعی که کاربر نمره می ده محاسبه رو انجام بدیم که دیگه در هنگام نمایش مطالب قرار نباشه پردازشی انجام بشه که سرعت احیانا پایین بیاد....به نظر شما این پردازش تاثیر آنچنانی در عملکرد و سرعت اجرای سایت نداره؟؟
(چون من هنوز سایتی رو در عمل و در شبکه اینترنت و در اختیار تعداد زیاد کاربر قرار ندارم..و تجربه ندارم...درک درستی از اینکه در عمل چی پیش خواهد آمد ندارم
:متفکر: )

H:Shojaei
شنبه 16 خرداد 1394, 01:20 صبح
الآن که خوب فکر میکنم میبینم همون که با امتیاز دهی کاربر انجام بشه بهتره تفکر من اشتباه بود اول دقت کافی نکردم روی موضوع...
چون کاربری میاد امتیاز میده اون عملیات انجام میشه...
حالا اون کاربر 10 بار رفرش میکنه الکی اون عملیاته که نباید هر 10 بار انجام بشه واسه امتیاز دهی واسه هر امتیاز یک بار این عملیات انجام میشه ولی واسه نمایش میتونه n بار انجام بشه که پردازشات اضافیه...
البته اگر این که نتیجه بروز راشه زیاد مهم نیست عملیات رو بذارید توی یک کرون جاب که اگر امتیاز جدیدی وارد شد تو هر مطلبی بیاد و هر یک ساعت مثلا این عدد جمع کل رو ویرایش کنه اگر هم به روز بودنش مهمه که همون با امتیاز کاربر باشه بهتره...

barnamenevis2016
شنبه 16 خرداد 1394, 01:32 صبح
مرسی
*********
البته اگر این که نتیجه بروز راشه زیاد مهم نیست عملیات رو بذارید توی یک کرون جاب که اگر امتیاز جدیدی وارد شد تو هر مطلبی بیاد و هر یک ساعت مثلا این عدد جمع کل رو ویرایش کنه اگر هم به روز بودنش مهمه که همون با امتیاز کاربر باشه بهتره...
***********
فکر می کنم هم هر روز یک بار پردازش باس انجام بشه و هم هر بار که کاربر نمره می ده
:متفکر: چون حتی اگر هیچ کاربری هم نمره نده تا یک مدت...ولی رتبه های کاربرا گفتم که می تونه تغییر کنه که این تغییر رتبه در نمره کل مطالب موثره...پس فکر می کنم علاوه بر اینکه در هنگام ثبت نمره جدید...پردازش می تونه انجام بشه....هر چند وقت یکبار هم پردازش انجام بشه.....:متفکر:
و در کل فکر نمی کنم به قول شما معقول باشه که در هربار رفرش محاسبات انجام بشه....