تابتوك — توسيع منصة SaaS متعددة المستأجرين إلى أكثر من 100K معاملة شهرية على AWS
كانت منصة بطاقات الأعمال الرقمية لتابتوك تقترب من حدود بنية قاعدة بيانات واحدة. كانت الاستعلامات التحليلية تتنافس مع الاستعلامات التعاملية، وكلاهما يتباطأ. بنينا تجزئة قاعدة البيانات القائمة على المستأجرين، وفصلنا التحليلات كليًا، وحافظنا على TDD طوال العملية — مما يجعل النظام المُعاد بناؤه آمنًا للتطوير المستمر.
عن هذا المشروع
توفر تابتوك بنية تحتية لبطاقات الأعمال الرقمية وإدارة جهات الاتصال للشركات الخليجية. كل حساب أعمال معزول تمامًا — جهات اتصاله الخاصة وأحداث المشاركة والتحليلات وبيانات الملف الشخصي. مع أكثر من 100K معاملة شهرية عبر آلاف المستأجرين، كانت بنية قاعدة البيانات الواحدة التي عملت عند الإطلاق تصبح الاختناق.\n\nالمشكلة المحددة كانت التنافس بين أنواع الاستعلامات. الاستعلامات التعاملية — إنشاء سجلات جهات الاتصال وتسجيل مشاركة بطاقة وتحديث بيانات الملف الشخصي — تحتاج إلى أن تكون سريعة ومتسقة. الاستعلامات التحليلية — تصدير التقارير والمجاميع والملخصات — ثقيلة ومقبول أن تكون متأخرة قليلًا. على قاعدة بيانات مشتركة، يمكن لاستعلام تحليلي طويل الأمد أن يحجب صفوفًا أو يستهلك I/O مما يبطئ العمليات التعاملية للمستخدمين النشطين.\n\nصممنا مخطط تجزئة قائم على المستأجرين. يتوزع المستأجرون عبر الشظايا استنادًا إلى استراتيجية تجزئة متسقة. التوجيه على مستوى التطبيق يوجه الاستعلامات إلى الشظية الصحيحة بشفافية — كود التطبيق لا يعرف أي شظية يتحدث إليها. إضافة سعة تعني إضافة شظية لا التوسع الرأسي لخادم واحد.\n\nفُصلت التحليلات تمامًا. تتدفق الأحداث إلى Redis، وتُجمِّعها وظائف الدُفعات بجدول، وتهبط النتائج في مخزن تقارير مخصص لا يكون أبدًا على مسار الاستعلام التعاملي. يرى المستخدمون النشطون استجابات تعاملية أقل من ثانية بغض النظر عن حمل التقارير.\n\nطُبِّق TDD طوال عملية إعادة البناء. كل فئة خدمة لديها تغطية اختبار قبل الشحن — يستطيع الفريق تغيير الأشياء بثقة.
ما المشكلة التي واجهوها؟
كانت بنية قاعدة البيانات الواحدة تقترب من الطاقة الاستيعابية. الاستعلامات التحليلية الطويلة تنافست مع الاستعلامات التعاملية على I/O والأقفال — عاش المستخدمون النشطون تباطؤًا أثناء إنشاء التقارير. بدون تغطية اختبار، كان تعديل منطق المعاملات الجوهري محفوفًا بالمخاطر. التوسع الرأسي كان يصبح مكلفًا ومحدودًا.
Multi-tenant SaaS — 100K+ monthly transactions on AWS
Redis analytics pipeline — decoupled from transactional DB
ما الذي بنيناه ولماذا
تجزئة قائمة على المستأجرين مع توجيه تجزئة متسق — قابل للتوسع أفقيًا وشفاف على مستوى التطبيق. التحليلات مفصولة إلى أنبوب أحداث Redis ← تجميع خلفي ← مخزن تقارير. صفر تحميل استعلامات تحليلية على قاعدة البيانات التعاملية. TDD مُطبَّق طوال إعادة البناء — تغطية اختبار شاملة على جميع مسارات المعاملات الجوهرية.
المخرجات والنتائج
- ✓ تجزئة أفقية — توسع بإضافة شظايا لا خوادم
- ✓ التحليلات مفصولة تمامًا عن قاعدة البيانات التعاملية
- ✓ بنية تحتية إنتاجية AWS (EC2, RDS, Docker)
- ✓ TDD طوال العملية — آمن للتغيير وآمن للشحن
منهجيتنا في هذا المشروع
Discovery & Strategy
We audited the client's current position, competitors, and conversion goals before any design began.
Design & Copy
Full visual design and all copy written by Quality X — approved by the client before development.
Development
Custom-built — no page builders. Fast, SEO-ready, and fully manageable post-launch.
Launch & Support
Live with training, documentation, and a 30-day support window included.
Ready to build a website
يحقق تحويلات فعلية؟
ابدأ بمكالمة مجانية لمدة 30 دقيقة. سنرسم بالضبط ما يحتاجه مشروعك — الاستراتيجية أولاً.
لا التزامات. لا ضغط مبيعات. مجرد محادثة صادقة.