مرجع تخصصی برنامه نویسان

بزرگترین انجمن برنامه نویسان فارسی زبان

ایجاد یک بخش آنلاین در سایت که بصورت خودکار هر لحظه آپدیت شود

چهارشنبه, 05 دی 1397 04:14

ایجاد یک بخش آنلاین در سایت که بصورت خودکار هر لحظه آپدیت شود

سلام.

در بخشی از سایتی که دارم روش کار میکنم میخوام یک مزایده آنلاین بین کاربران برگزار کنم

که مثلا 10 نفر میان عضو مزایده میشن و بعد که مزایده شروع شد میتونن همه پیشنهاد بدن و قیمت های خودشون رو بدن

و لیست پیشنهاد ها هم باید به صورت آنی برای همه لحظه به لحظه آپدیت بشه (بدون اینکه خودشون صفحه رو رفرش کنن یا اینکه روی چیزی کلیک کنن) - یعنی هر قیمت جدیدی که ثبت میشه لیست قیمت در مرورگر همه کاربرا بروز شه

دقیقا نمونه سایت رد کالا رو میخوام : لینک

در این لینک که یک مزایده تمام شده هست قسمت آخرین پیشنهاد ها رو ببینید این لیست در زمان برگزاری مزایده بصورت دائم برای همه بروز میشه

ویک مورد دیگه اینکه اگر برای 10 ثانیه هیچ پیشنهادی داده نشود مزایده بسته میشود که این مورد رو هم من باید انجام بدم

من این کارو با Ajax انجام دادم به اینصورت که یک دکمه به اسم بروزرسانی گذاشتم که وقتی کاربر روش کلیک کنه اون لیست بروز میشه ولی اون لیست باید بصورت آنی و بدون کلیک کردن کاربر بروز بشه.

میشه لطفا راهنمایی کنید که با Ajax و Jquey میشه ویا باید با SignalR انجام بشه ؟

چهارشنبه, 05 دی 1397 07:44

سلام

استفاده از signalR  را توصیه می کنم.

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

جمعه, 07 دی 1397 19:16

ممنون با SignalR دارم کار رو انجام میدم.

یه سوال دیگه میخوام اگه برای 10 ثانیه هیچ درخواستی از هیچ کاربری به سمت سرور فرستاده نشد مزایده تموم بشه , این کار رو چطوری باید انجام بدم ؟

جمعه, 07 دی 1397 20:03
سلام مجدد باید از وظایف زمان بندی شده استفاده کنی که به نظرم Quartzبهترینشه شما میتونی یک وظیفه در Quartzتعریف کنی که هر ۱۰ ثانیه یکبار اجرا بشه. ساعت اعلام هر مزایده را هم نگه داری کنی. اگر به هنگام اجرای یک وظیفه تا وظیفه ی بعدی در Quartz هیچ مزایده ای ثبت نشد پس مزایده را به اتمام برسونه

ارسال پاسخ برای این تاپیک

ارسال پاسخ مخصوص اعضا سایت می باشد ! میتوانید با حساب کاربری خود وارد سایت شده یا ثبت نام کنید