محرك تطبيقات جوجلمحرك تطبيقات جوجل (بالإنجليزية: Google App Engine) هي عبارة عن برنامج لتطوير واستضافة تطبيقات الويب في مراكز بيانات إدارة قوقل. أطلقت لأول مرة في إصدار بيتا في نيسان / أبريل 2008. محرك تطبيقات جوجل هو سحابة الحوسبة والتكنولوجيا. انها تفعّل التطبيقات عبرالخوادم ومراكز البيانات.[3] سحابة أخرى للمنصات المرتكزة تشمل العروض مثل الأمازون خدمات الإنترنت وخدمات مايكروسوفت أزور. محرك تطبيقات جوجل مجانية تصل إلى مستوى معين من الموارد المستخدمة. تفرض رسوم إضافية للتخزين وعرض النطاق الترددي، أودوائر وحدة المعالجة المركزية المطلوبة من قبل التطبيق. لغات وأنظمة البرمجة الداعمةحاليا، لغات البرمجة الداعمة هي جافا (Java) وبايثون (Python)، وبالتبعية، جي في ام (JVM)و لغات أخرى مثل جروفي (Groovy)وجي روبي (JRuby)و سكالا (Scala) وسلوجوري (Clojure). بنية شبكة بايثون (Python) التي تعمل على محرك التطبيقات تشمل Django, CherryPy, Pylons, web2py، بالإضافة إلى نظام الشبكة المكتوب لقوقل ومختلف التصاميم الأخرى الخاصة للبرنامج الذي برز منذ الانطلاق. وقالت جوجل انها تخطط لدعم المزيد من اللغات في المستقبل، وأن محرك التطبيقات قد كتب ليكون لغة مستقلة. يمكن لأي نظام بايثون (Python)التي تدعم WSGI باستخدام CGI (Common Gateway Interface) يمكن استخدامها لإنشاء تطبيق، والنظام يمكن تحميله بالتطبيق المتطور. المكتبات الخارجية مكتوبة في بايتثون (Python) نقية كما يمكن تحميلها.[4][5] الاختلافات عن التطبيقات الأخرى المضافةبالمقارنة مع الخدمات الأخرى التي تستضيف خدمات مثل أمازون إي سي 2، محرك تطبيقات توفر المزيد من البنية التحتية لتجعل من السهل كتابة تطبيقات متدرجة، ولكن يمكن فقط تشغيل عدد محدود من التطبيقات المصممة لتلك البنية التحتية. محرك تطبيقات البنية التحتية يزيل الكثير من نظام الإدارة وتحديات التنمية في بناء التطبيقات للقياس على نطاق المئات من الطلبات في الثانية وما بعدها [6] جوجل يمسك بالشفرات المنتشرة، ويرصدها، ويبدأ تطبيق الحالات حسب الضرورة. في حين أن الخدمات الأخرى التي تسمح للمستخدمين تثبيت وتكوين تقريباً أي برامج متوافقة، محرك التطبيقات يتطلب مطورين يستخدمون Python أو أي لغة JVM (مثل جافا، Groovy، JRuby، سكالا) كلغات برمجة، ومجموعة محدودة من واجهات برمجة التطبيقات. واجهات برمجة التطبيقات الحالية تسمح تخزين واسترجاع البيانات BigTable من قاعدة البيانات الغير مرتبطة؛ وعمل طلبات بروتوكول انتقال النّصّ المتشعّب (HTTP)؛ وإرسال بريد إلكتروني؛ ومعالجة الصور، والتخزين المؤقت. معظم تطبيقات الويب الحالية لا يمكن أن تعمل على محرك تطبيقات دون تعديل، لأنها تتطلب قاعدة بيانات مرتبطة. كل يوم، وكل دقيقة نظام الحصص يحصر عرض النطاق الترددي واستخدام وحدة المعالجة المركزية، وعدد طلبات الخدمة، وعدد الطلبات المتزامنة، وتدعو إلى واجهات برمجة التطبيقات المتعددة، ويتم إنهاء طلبات فردية إذا كانت تستغرق أكثر من 30 ثانية أو تعود أكثر من 10 ميغابايت للبيانات. الاختلافات بين SQL وGQLمخزن محرك تطبيقات جوجل له SQL يدعى "GQL". يختار جمل في GQL يمكن أن يؤديها على طاولة واحدة فقط. GQL عمدا لاتدعم التعابير المرتبطة، لأنها تبدو غير فعالة عندما تمتد الأسئلة على أكثر من آلة واحدة.[7] بدلا من ذلك، واحدة إلى العديد والعديد إلى العديد من العلاقات يمكن انجازها باستخدام. () ReferenceProperty.[8] هذا النهج المشترك لا يتدخل في الطريقة التي تجعل القرص يفشل دون أن يفشل النظام. عبارة اختيار التعابير يمكن ان تؤدي العمليات>، =، <، <= على عمود واحد فقط. لذلك، نختار فقط جمل بسيطة حيث يمكن بناؤها. التحول من قاعدة بيانات مرتبطة لمخزن البيانات يتطلب تحولا نموذجيا للمطورين عند تمثيل البيانات الخاصة بهم. محرك التطبيقات يجعل الحد الأعلى من الصفوف يعود من كونها 1000 صف في كل طلب مخزن بيانات. هذا العائق لا يؤثر على تطبيقات الويب المكتوبة لتكون مقروءة من قبل البشر، طالما ترتيب فرز النتائج التي يمكن ان يسبق إحصاءها بشكل مناسب، كتلك التي لا تحصر عادة كعدد من آلاف الأوامر على صفحة واحدة (قد يكون لديهم الترحيل وآليات التخزين المؤقت في مكان واحد). إذا كان تطبيق يحتاج إلى أكثر من 1000 أمر لكل عملية، فإنه يمكن استخدام جانبه الصامت من البرامج الإلكترونية أو صفحة أجاكس (Ajax) لتنفيذ عملية على عدد غير محدود من الصفوف من خلال إصدار الاستعلامات بالتتابع، على الأقل بطريقة محدودة، لأن طباعة النتائج لمجموعة من الأسئلة تكلف وقتاً بطول الوقت لمجموعة النتائج التي يمكن ان تستغرق نفس الأسئلة في الوقت الضائع. بخلاف قاعدة البيانات المرتبطة فإن مخزن البيانات API (واجهة برمجة التطبيقات) (Application Programming Interface) ليس مرتبطاً ب (لغة الاستعلام) SQL. القيود
التطابقمطوري التطبيقات يقلقون من التطبيقات التي لن تنقل من محرك التطبيقات مع التعديلات. هيكل Django الويب والتطبيقات الجارية فيها يمكن أن تستخدم في محرك التطبيقات مع التعديل. التطبيقات المتقدمة لإطارتطبيقات شبكة Grail يمكن تعديلها ونشرها لمحرك التطبيقات بمجهود قليل جداً باستخدام محرك تطبيقات المساعد. تحميل البياناتالإصدار SDK 1.2.2 يضيف دعما لتحميل الجزء الأكبر من البيانات.[10] مشاريع مفتوحة المصدر gaebar، [11] approcket، [12] وgawsh [13] كما تسمح للمستخدمين لتحميل البيانات والنسخ الاحتياطي في محرك التطبيقات. معدلات الحصصمحرك التطبيقات يحدد حصص لاستخدام تطبيقات مجانية. الإتساع لهذه الحصص يمكن أن يطلب، ومؤلفي التطبيقات يمكن أن يدفعون من أجل مصادر إضافية. حدود صعبة
حصص مجانيةمؤلفي التطبيقات الذين يجعلون فواتير الدفع من أجل وحدة المعالجة المركزية فقط، عرض النطاق الترددي، والتخزين، ورسائل البريد الإلكتروني المستخدمة في الزائد عن الحصص المجانية. الحدود التي بجانبها * هي زيادة الطلب على مؤلفي التطبيقات الذين يأخذون الفواتير، حتى لو كانت تطبيقاتهم لا تستخدم أبدا ما يكفي من المصادر لاستهداف الشحن. الحصص المجانية تناقصت يوم 25 مايو 2009 [14]، وتناقصت من جديد يوم 22 يونيو، 2009.[15]
المنافسةتنافس الخدمة مع خدمات شبكةالأمازون، وهي مجموعة من خدمات التطبيقات التيتجعل المواقع على شبكة الإنترنت تستضيف الملفات وتنفيذ التعليمات البرمجية على خوادم الأمازون. كثير من فنيي المحللين قد تنبأو بانظمام قوقل في هذا المجال لعدة سنوات. «غوغل يدرك أخيرا أنها بحاجة إلى منصة على شبكة الإنترنت،» Techdirt publisher Mike Masnick wrote. «فمن الأسهل لتطوير ونشر التطبيقات شبكة يمكن التعامل معها، وحلول أكثر ابتكارا وإبداعا هو ما سنبدأ برؤيته.» [16] منافسين آخرين يحتوون برامج خدمات مايكروسوفت أزور وهيروكو. مراجع
وصلات خارجية |