فصل MSSQL: بيانات عملاء الفايبر من PHP

هذا هو الجزء الخامس من سلسلة مساند. تناول الجزء الرابع تكامل Oracle.

إذا كانت Oracle أول دولة أجنبية زارها كود PHP في مساند، فإن Microsoft SQL Server كانت الثانية — مشاكل جواز سفر مشابهة، ونقاط تفتيش مختلفة. البيانات المعنية هذه المرة: معلومات عملاء الفايبر، التي احتاجت فرق الأعمال رؤيتها إلى جانب كل ما يقدمه مساند أصلاً.

نكهة مختلفة من معاناة الاعتمادات

طريق PHP إلى MSSQL هو ثنائي الامتداد sqlsrv وpdo_sqlsrv، ومثل oci8 تمامًا يرفض أن يوجد وحده. السلسلة هذه المرة: الامتدادات تتطلب مُعرّف ODBC من Microsoft لـ SQL Server، الذي يتطلب unixODBC، الذي يتطلب قبول مستودعات حزم Microsoft في مصادر خادم لينكس لديك — إضافة إلى الرقصة المعتادة لمطابقة إصدار الامتداد مع إصدار PHP بالضبط. مورّد مختلف، والدرس نفسه: إعداد المُعرّف مشروع قائم بذاته، ويجب أن يُكتب سكربتًا لا أن يُحفظ.

وإنصافًا لـ Microsoft، بعد ضبط المستودع يصبح التثبيت أكثر ودًا لمدير الحزم من أركيولوجيا ملفات Oracle المضغوطة. لكن أنماط الفشل أكثر مكرًا. فمُعرّف ODBC المفقود ينتج أخطاء اتصال تبدو كمشاكل شبكة. وتفاوض TLS بين OpenSSL حديث وSQL Server أقدم قد يفشل برسائل تشير إلى كل مكان إلا السبب الحقيقي. وعندما — لا إذا — تصطدم بهذه، فترتيب التصحيح الذي يوفر الساعات: تحقق من طبقة ODBC وحدها أولاً (isql صديقك)، ثم امتداد PHP، ثم إعدادات اتصال Laravel. طبقة طبقة، وليس الكل دفعة واحدة.

قراءة قاعدة بيانات الآخرين بأدب

الاتصال التقني كان نصف العمل. النصف الآخر قاعدة وضعتها مبكرًا ولم أندم عليها: مساند ضيف في تلك القاعدة. فمخزن عملاء الفايبر يخص نظامًا آخر له دورة حياته وفريقه وميزانية أدائه. وأن تكون ضيفًا مهذبًا يعني:

  • وصول للقراءة فقط، مفروض على مستوى بيانات الاعتماد. ليس «نعد بألا نكتب» — بل الحساب لا يستطيع فعليًا.

  • الاستعلامات تبقى ضيقة. نطلب بالضبط الأعمدة والصفوف التي تحتاجها الميزة، وليس «اجلب كل شيء ودبّرها في PHP».

  • التخزين المؤقت يمتص الطلبات المتكررة. Redis (المزيد في المقال التالي) يقف أمام عمليات البحث المتكررة، فلا يتحول تحديث شاشة في مساند إلى حمل على نظام إنتاجي لا نملكه.

  • مخططهم ليس عقدنا. كل ما يُقرأ من MSSQL يمر عبر طبقة تحويل إلى أشكال مساند الخاصة، فإذا غيّر النظام المصدر عمودًا، فنطاق الأثر صنف خدمة واحد — لا كل شاشة تلمس بيانات الفايبر.

النمط الذي كان يتشكل

مع ثاني قاعدة بيانات خارجية، أصبح شكل كل تكامل مستقبلي واضحًا: إعداد مُعرّف مؤلم تؤتمته مرة واحدة؛ وصنف خدمة مخصص يملك الاتصال والاستعلامات والتحويل؛ وتخزين مؤقت حيث يكثر التكرار؛ واحترام صارم لحدود النظام المصدر. في المقال التالي سأصوغ ذلك في دليل العمل الذي حمل مساند عبر كل التكاملات اللاحقة — وكيف منع تصميم الطوابير المهام الثقيلة من مزاحمة العمليات اليومية.

التالي في السلسلة: صنف خدمة واحد لكل نظام خارجي — دليل التكامل العملي.

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني.