2 نهج لتتبع المستخدمين عبر الإنترنت مع redis. أيهما أسرع؟

StackOverflow https://stackoverflow.com/questions/2644021

  •  27-09-2019
  •  | 
  •  

سؤال

لقد وجدت مؤخرًا منشورًا لطيفًا في المدونة تقدم مقاربين لتتبع المستخدمين عبر الإنترنت لموقع ويب بمساعدة Redis.

1) المفاتيح الذكية ووضع انتهاء صلاحيتهاhttp://techno-weenie.net/2010/2/3/where-s-waldo-track-user-locations-with-node-js-dreis

2) Set-S والمتقاطعات

هل يمكنك الحكم على أي واحد يجب أن يكون أسرع ولماذا؟

هل كانت مفيدة؟

المحلول

لمعرفة ما إذا كان مستخدم معين على الإنترنت أم لا ، ستكون الطريقة الأولى أسرع بكثير - لا يوجد شيء أسرع من قراءة مفتاح واحد.

إن العثور على مستخدمين على صفحة معينة ليس واضحًا (لم أر أرقامًا صعبة على أداء مفاتيح التقاطع أو مفاتيح البطاقة البرية) ، ولكن إذا كانت المجموعة كبيرة بما يكفي لإحداث مشاكل في الأداء في أي من التنفيذ ، فليس من العملي عرض كلهم على أي حال.

بالنسبة للمستخدمين المطابقة لقائمة الأصدقاء ، من المحتمل أن أذهب مع النهج الأول أيضًا - حتى بضع مئات من عمليات الحصول على (التحقق من حالة كل شخص في القائمة) يجب أن يتفوق على التقاطع على مجموعات متعددة إذا كانت هذه المجموعات تحتوي على عدد كبير من السجلات وهي من الصعب الحفاظ عليها.

تعد مجموعات Redis أكثر ملاءمة للأشياء التي لا يمكن القيام بها باستخدام المفاتيح ، لا سيما عندما يكون الحصول على جميع العناصر في المجموعة أكثر أهمية من التحقق مما إذا كان هناك عنصر معين في المجموعة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top