انتقل إلى المحتوى
أمين أبوزيد
درس مخطط لهMID-038-L06

عرض عملي: لوحة متصدرين بالمجموعات المرتّبة

  • الدرس 6 من 7
  • Mid-level
في هذا الدرس 3 موضوعات

هذا الدرس مخطط له. يعرض المخطط أدناه الموضوعات التي سيغطيها، ولم يُنشر الدرس الكامل بعد.

نص الدروس والتمارين باللغة الإنجليزية، بينما تبقى واجهة الموقع وعناوين الدروس بالعربية.

في هذا الدرس

build a "top products this week" board. Prepares the data-structure selection scenarios.

تفاصيل المخطط المبدئي

خطوة بخطوة

  1. Create key shop:top:week:2026-W44 and record sales with ZINCRBY key 1 productId.
  2. Read the top 10 with ZRANGE key 0 9 REV WITHSCORES.
  3. Wrap it in a Spring StringRedisTemplate.opsForZSet() service.
  4. Set EXPIRE of two weeks so old boards disappear.
  5. Planned mistake: store the board as a JSON string and rewrite it on each sale; two concurrent sales overwrite each other. Fix: ZINCRBY, which is atomic.
  6. Show rank lookup with ZREVRANK.

اختبر فهمك

Why is ZINCRBY better than read-modify-write?

أظهر الإجابة

It is atomic; no lost updates.

التطبيق

طبّق هذا الدرس بمختبر الوحدة وتمارينها واختبارها.

المختبر والتمارين الاختبار

تعليم الدرس كمكتمل اختياري ويمكنك التراجع عنه في أي وقت. يبقى تقدمك محفوظًا في هذا المتصفح.

اكتب للبحث في المستويات والمراحل والوحدات والدروس.