Google App Engine

Google App Engine
Google App Engine
Appengine.gif
Gaeru.png
Тип

среда разработки
веб-фреймворк

Разработчик

Google

Операционная система

GNU/Linux

Последняя версия

1.6.5 (24 апреля 2012)

Лицензия

GPLv2

Сайт

appspot.com

Google App Engine — сервис хостинга сайтов и web-приложений на серверах Google с бесплатным именем <имя_сайта>.appspot.com, либо с собственным именем, задействованным[1] с помощью служб Google.

App Engine представлена в апреле 2008, находится в режиме тестирования, доступны как бесплатные аккаунты:[2] «…до 1 Гб дискового пространства, 10 Гб входящего трафика в день, 10 Гб исходящего трафика в день, 200 миллионов гигациклов CPU в день и 2000 операций отправления электронной почты в день»,[3] так и возможность приобретения дополнительных ресурсов[4].

Приложения, разворачиваемые на базе App Engine, должны быть написаны на Python, Java либо Go. Среда исполнения Python[5] включает в себя полную реализацию возможностей самого Python, большинство функций стандартной библиотеки языка, ограниченную версию Django, и т. д.

Предлагается набор API для сервисов хранилища, datastore API (BigTable),[6] аккаунтов Google,[7] загрузки данных по URL,[8] электронной почты[9] и т. д.

Предоставлена возможность использовать планировщик задач cron как для приложений реализованных на Python, так и на Java. Разрешено планирование не более 20-ти заданий.[10][11]

Использование службы аккаунтов Google позволяет быстро начать работу с приложением, нет необходимости проводить отдельную регистрацию учётных данных на каждом сайте. Это также позволяет разработчику не заботиться о реализации ещё одной системы регистрации пользователей специально для своего приложения.

Платформа Google конкурирует с аналогичными сервисами от Amazon, которые предоставляют возможности размещать файлы и веб-приложения, используя свою инфраструктуру.

Содержание

Отличия от традиционной модели хостинга приложений

В отличие от многих обычных размещений приложений на виртуальных машинах, таких как Amazon EC2, платформа App Engine тесно интегрирована с приложениями и накладывает на разработчиков некоторые ограничения. Конкурирующие среды позволяют оперировать множеством программного обеспечения, созданного под *NIX системами, в то время как App Engine требует от разработчика обязательного использования языков программирования Python, Java или Go (последний — с мая 2011) и сохранения информации в собственном хранилище (Datastore) — подмножестве проприетарной базы данных BigTable (en), являющейся ноу-хау компании Google.

Хотя большинство из разработанных на языке Python приложений возможно запустить без изменений под App Engine (исключая те, которые требуют доступа к низкоуровневым функциям системы или доступа к сети), использование хранилища потребует значительных сил от разработчиков на адаптацию приложений. В отличие от популярных СУБД MySQL и PostgreSQL, хранилище не является реляционной базой данных, в частности не поддерживает схему и не требует нормализации данных. Архитектура платформы поддерживает масштабирование без изменения кода. Реализация поддержки реляционной логики привела бы к значительному замедлению работы. Нереляционный характер хранилища требует от разработчиков использования нетрадиционной архитектуры хранения и обработки данных. Например, вместо нормализованного хранения данных в двух или нескольких таблицах с последующим объединением в запросе (join), логически связанные данные рекомендуется хранить в одной таблице.

В то же самое время все эти ограничения могут привести к тому, что многим разработчикам придётся прилагать дополнительные усилия для адаптации к новой среде, и они предпочтут выбор альтернативных платформ.

Ограничения

Среда выполнения платформы Google App Engine позволяет разработчику контролировать лишь часть параметров операционной системы, что может представлять проблему для разработки приложений.

Нет доступа на запись в файловую систему сервера. Единственный способ сохранять данные — внутреннее хранилище, нереляционная, высокомасштабируемая база данных. Хранилище отличается от реляционных СУБД MySQL и PostgreSQL, которые используются на большинстве сайтов.

Системы управления сессиями, использующие файловую систему, не будут работать. Google предоставляет альтернативный вариант — Memcache API. Есть возможность организовать авторизацию пользователей через аккаунты Google.

Google широко использует в своих приложениях технологию MapReduce, парадигма параллельных вычислений, проводимых на множестве узлов кластера, её поддержка, вероятно, будет добавлена к возможностям платформы.[12]

Теперь App Engine имеет поддержку SQL с Google Cloud SQL [13]

Пример самого маленького приложения

Сайт helloworld.appspot.com из одной страницы «index.html» требует[14] загрузки[15] на серверы Google App Engine двух файлов:[16]

  • …/helloworld/app.yaml — конфигурационный файл приложения helloworld в его корневом каталоге
application: helloworld
version: 1
runtime: python
api_version: 1
 
handlers:
- url: /
  static_files: static/index.html
  upload: static/index.html
  • …/helloworld/static/index.html
 <html><h1>Hello World !</h1></html>

См. также

Примечания

Ссылки


Wikimedia Foundation. 2010.

Игры ⚽ Поможем решить контрольную работу

Полезное


Смотреть что такое "Google App Engine" в других словарях:

  • Google App Engine — Développeur Google Dernière version 1.5.0 (10 mai 2 …   Wikipédia en Français

  • Google App Engine — appengine.google.com Kommerziell ja Beschreibung Platform as a Service …   Deutsch Wikipedia

  • Google App Engine — Infobox Software name = Google App Engine Google App Engine Logo caption = developer = Google released = April 7, 2008 latest release version = latest release date = operating system = Any (web based application) genre = Web development Version …   Wikipedia

  • App Engine — Google App Engine Entwickler: Google Inc. Aktuelle Version: Beta (Mai 2008) …   Deutsch Wikipedia

  • App Engine — Saltar a navegación, búsqueda Googe App Engine Información general URL http://code.google.com/appengine/ Propietario Google Inc. Estado actual …   Wikipedia Español

  • Google Mail — Entwickler: Google Inc. Aktuelle Version: Öffentliche Beta …   Deutsch Wikipedia

  • Google-Hacking — Google URL http://www.google.de (Deutsche Version) http://www.google.ch (Schweizer Version) http://www.google.at (Österreichische Version) …   Deutsch Wikipedia

  • Google.com — Google URL http://www.google.de (Deutsche Version) http://www.google.ch (Schweizer Version) http://www.google.at (Österreichische Version) …   Deutsch Wikipedia

  • Google.de — Google URL http://www.google.de (Deutsche Version) http://www.google.ch (Schweizer Version) http://www.google.at (Österreichische Version) …   Deutsch Wikipedia

  • Google Finance — Google URL http://www.google.de (Deutsche Version) http://www.google.ch (Schweizer Version) http://www.google.at (Österreichische Version) …   Deutsch Wikipedia


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»