برمجة

إضافة أجير على ال SQL Azure Elastic Scale للتطبيقات التي لا تعمل على بيئة ال .NET

By حسام الكرد

August 02, 2015

قمنا بنقاشة كيفية العمل على نظام متعدد الأجراء وكيفية إختيار الأجير المناسب على النظام الجديد  الخاص بميكروسوفت SQL Azure Elastic Scale عبر تدوينة تشغيل التطبيقات متعددة الآجراء على نظام SQL Azure Elastic Scale للتطبيقات التي لا تعمل على بيئة .NET.ما نريد اليوم مناقشته هو كيفية إنشاء أجير على التطبيق بشكل مؤتمت, بحيث يمكن إضافة آجراء جديد على تطبيقنا.

في الوقت الحالي, لا يوجد مكاتب جاهزة يمكن إستعملاها مع التطبيقات التي لا تعمل على بيئة ال .NET بخصوص إضافة الآجراء على ال SQL Azure Elastic Scale, ولكن هناك حلول بديلة حيث نستعرض هنا طريقة يمكن من خلالها إضافة آجراء.

قمنا بتطوير نموذج متوفر كمثال على msdn , يمكنك تحميله من المرفقات, حيث يمكن أن يستخدم لإنشاء آجراء جدد, ما نحتاجه هو معرفة كيفية تنفيذ الأوامر من خلال ال command line.

الإختصارات الآتية تمثل الأوامر لتنفيذ المهام المختلفة

-OP تحدد نوع العملية إضافة حذف أو تعديل ADD, DELETE, UPDATE

-S  رابط الخادم

-d  إسم قاعدة البيانات الخاصة بإدارة الآجراء

-App إسم التطبيق الخاص بإدارة الآجراء

-U إسم المستخدم للخادم

-P كلمة المرور للخادم

-db إسم قاعدة البيانات (للآجير بحيث يمكن أن تحوي عدد من الآجراء)

-scf ملف ال sql في حال ما اردنا إضافة قاعدة بيانات وتنفيذ أوامر أس كيو آل

-tid رقم الأجير

-drop لإزالة قاعدة البيانات في حال true

وبعد تعريفك للأوامر التي تحتاجها كل ماعليك هو وضعها كنص في تطبيق وتمرير القيم على شكل متغيرات يتم تعريفها حسب كل حاله.

سنقوم بضرب مثال على ال PHP:

نفترض أن لديك تطبيق PHP و تريد تنفيذ أوامر ال CMD

[box type=”shadow” ]

$shellCommmandPath = ‘”C:/www/shardControlCmd.exe”‘;

$server = “https://yourserver.azure.com”;

$userName = “youruser”;

$password = “yourpassword”;

$shardManagerDatabaseName = “shardManagerDB”;

$applicationName = “app”;

$shardDatabaseName = “shardDB”;

$shardManagerDatabase = “shardManagerDB”;

$sqlPathToExecute = ‘”InitializeShard.sql”‘;

$tId = 1;

$oP =”ADD”;

$command = $shellCommmandPath . ‘ -S ‘ . $server . ‘ -d ‘ . $shardManagerDatabaseName . ‘ -App ‘ . $applicationName . ‘ -U ‘ . $userName . ‘ -P ‘ . $password . ‘ -db ‘ . $shardDatabaseName . ‘ -scf ‘ . $sqlPathToExecute . ‘ -tid ‘ . $tId.’ -OP ‘.$oP;

$shellStatus = shell_exec($command);

[/box]

ملاحظات:

– ليس مطلوب إضافة ملف sql, وإنما إختياري في حال ما أردنا إضافة قاعدة بيانات جديدة وإضافة ملف ينفذ بعد الإضافة مثل إضافة الجداول ونحو ذلك.

– عندما تقوم بتمرير نفس إسم قاعدة بيانات آجير موجود مسبقا سيتم إضافة الآجير الجديد كرقم إلى قاعدة بيانات الآجراء الموجودة.

نتمنى أن يساعد ذلك المطورين الذين يعملون على بيئة عمل مختلفة عن ال .Net بحيث يمكنهم إضافة آجراء والتحكم فيهم من خلال نفس التطبيق.

لتحميل ملف ال CMD الذي قمنا بعمل من هنا

دمتم بود إلى تدوينة أخرى