PDA

View Full Version : افراد آنلاین



MinusOne
پنج شنبه 17 اسفند 1391, 19:26 عصر
چطوری میشه تعداد افراد آنلاین در هر لحظه رو فهمید ؟ من یک آمارگیر تهیه کردم که وقتی فرد وارد صفحه ای میشه آیپیش و زمان ورودش در دیتابیس ثبت میشه اول خواستم یه timeout قرار بدم که بعد 10 دقیقه مثلا دیگه کاربر آنلاین نیست و از لیست افراد آنلاین خود به خود حذف بشه ولی ایده ی قشنگی نیست . چطوری میتونم از افراد آنلاین در صفحم در هرلحظه باخبر بشم ؟ (منظورم اینه که کسی که داره صفحه رو مشاهده میکنه بتونه افراد آنلاین رو ببینه) آیا با جاوا اسکریپت و آیجکس وقتی طرف خواست صفحه رو ببنده رکوردی که تو دیتابیس مربوط به طرف بود پاک بشه ؟ و یه سوال دیگه فرض کنیم یه سری کاربر تو سایتم هستن . من میخوام بفهمم دقیقا از لحظه ی ورودشون تا لحظه ای که Logout کنن یا اتصالشون به سایت قطع بشه چه مدتی آنلاین بودن.

رضا قربانی
پنج شنبه 17 اسفند 1391, 20:11 عصر
http://barnamenevis.org/showthread.php?362178-%D9%86%D9%85%D8%A7%DB%8C%D8%B4-%D8%A7%D9%81%D8%B1%D8%A7%D8%AF-%D8%A2%D9%86%D9%84%D8%A7%DB%8C%D9%86-%D8%A8%D8%AF%D9%88%D9%86-%D8%AF%DB%8C%D8%AA%D8%A7%D8%A8%DB%8C%D8%B3

MinusOne
پنج شنبه 17 اسفند 1391, 20:29 عصر
ممنون اون فایل رو دانلود کردم ولی این نوع آمارگیری دقیق نیست ممکنه یه کاربر 14 دقیقه پیش صفحه رو ترک کرده باشه ولی هنوز جزو افراد آنلاینه و ممکنه یه کاربر 20 دقیقش که داره یه مطلب رو مطالعه میکنه ولی جزو افراد آنلاین نیست برای قسمت دوم سوالم هم که اصلا این روش جواب نمیده.

MMSHFE
جمعه 18 اسفند 1391, 22:01 عصر
ببینید هیچ راه دقیقی برای اینکار وجود نداره چون مرورگرها Push Notification برای سرور ندارن (بخاطر مسائل امنیتی) ولی میتونید با کمک AJAX یه کارهایی انجام بدین. مثلاً یک جدول افراد آنلاین داشته باشین که وقتی کاربر لاگین کرد، ID اون توی این جدول بیاد و یک فیلد هم برای آخرین زمان فعالیتش توی سایت توی همین جدول داشته باشین. حالا توی صفحات مختلف سایتتون با AJAX هر 1 دقیقه یکبار این فیلد رو Update کنید. موقع نمایش افراد آنلاین هم فقط کسانی رو از جدول کاربران آنلاین نشون بدین که این فیلدشون زیر 1 دقیقه باشه. درسته که باز هم دقیق نیست ولی خوب 1 دقیقه زمان قابل قبولی هست و حتی توی بازدیدهای نسبتاً بالا (هزار کاربر همزمان) هم در هر دقیقه 1000 درخواست میاد که سرورهای امروزی به خوبی از عهده اون بر میان. موفق باشید.