stringtranslate.com

Движок приложений Google

Google App Engine (также называемый GAE или App Engine ) — это облачная вычислительная платформа, используемая в качестве сервиса для разработки и размещения веб-приложений . Приложения изолированы и работают на нескольких серверах, управляемых Google. [2] GAE поддерживает автоматическое масштабирование веб-приложений, выделяя больше ресурсов веб-приложению по мере увеличения количества запросов. [3] Он был выпущен в качестве предварительной версии в апреле 2008 года и официально запущен в сентябре 2011 года.

App Engine поддерживает приложения, написанные на Go , PHP , Java , Python , Node.js , .NET и Ruby , а поддержка других языков возможна за дополнительную плату. [4] Бесплатная версия сервиса предлагает стандартную среду с ограниченными ресурсами. Плата взимается за дополнительное хранилище, пропускную способность или часы экземпляра. [5]

Функции

Google App Engine в первую очередь поддерживает приложения Go , PHP , Java , Python , Node.js , .NET и Ruby , хотя он также может поддерживать другие языки через «пользовательские среды выполнения». [4]

Веб-фреймворки Python, работающие на Google App Engine, включают Django , CherryPy , Pyramid , Flask и web2py, а также написанный Google фреймворк веб-приложений и несколько других, разработанных специально для платформы, которая была создана после выпуска. [6] Любой фреймворк Python, поддерживающий WSGI с использованием адаптера CGI, может быть использован для создания приложения, и фреймворк может быть загружен вместе с разработанным приложением. Также могут быть загружены сторонние библиотеки, написанные на Python. [7] [8]

В SDK версии 1.2.2 добавлена ​​поддержка массовой загрузки данных с использованием Python. [9]

Интегрированная база данных Google Cloud Datastore App Engine имеет синтаксис, похожий на SQL , называемый « GQL » ( язык запросов Google ). GQL не поддерживает оператор join . [10] Вместо этого отношения «один ко многим» и «многие ко многим» могут быть реализованы с помощью ReferenceProperty(). [11]

Google Cloud Firestore является преемником Google Cloud Datastore и заменяет GQL на метод запроса на основе документов, который обрабатывает хранимые объекты как коллекции документов. Firestore был запущен в октябре 2017 года. [12]

Бэкэнды

На Google I/O 2011 компания Google анонсировала App Engine Backends , которые могли работать непрерывно и потреблять больше памяти. [13] [14] Backend API был упразднен 13 марта 2014 года в пользу Modules API. [15]

Google Облако SQL

В октябре 2011 года Google представила предварительную версию базы данных SQL с нулевым обслуживанием, которая поддерживает JDBC и DB-API. [16] Эта служба позволяет создавать, настраивать и использовать реляционные базы данных с приложениями App Engine. Google Cloud SQL поддерживает MySQL 8.0, 5.7 и 5.6. [17]

Ограничения

Хостинг приложений

В то время как другие сервисы позволяют пользователям устанавливать и настраивать практически любое совместимое с *NIX программное обеспечение, App Engine требует от разработчиков использовать только поддерживаемые им языки, API и фреймворки. Текущие API позволяют хранить и извлекать данные из ориентированной на документы базы данных Google Cloud Datastore , выполнять HTTP-запросы, отправлять электронную почту, манипулировать изображениями и кэшировать. Google Cloud SQL [19] можно использовать для приложений App Engine, требующих реляционного MySQL- совместимого бэкэнда базы данных. [20]

Дневные и минутные квоты накладывают ограничения на полосу пропускания и использование ЦП, количество обслуживаемых запросов, количество одновременных запросов и вызовов различных API. Отдельные запросы прекращаются, если они занимают более 60 секунд или возвращают более 32 МБ данных.

Проблемы переносимости

Разработчики беспокоятся, что приложения не будут переносимы из App Engine, и опасаются быть запертыми в технологии. [21] В ответ на это существует ряд проектов по созданию бэкэндов с открытым исходным кодом для различных проприетарных/закрытых API-интерфейсов App Engine, особенно хранилища данных.

AppScale автоматически развертывает и масштабирует немодифицированные приложения Google App Engine в популярных публичных и частных облачных системах и локальных кластерах. [22] Он может запускать приложения Python, Java, PHP и Go на EC2, Google Compute Engine, Azure и других поставщиках облачных услуг.

Веб -фреймворк Web2py предлагает миграцию между базами данных SQL и Google App Engine, однако он не поддерживает несколько специфичных для App Engine функций, таких как транзакции и пространства имен. [23]

Kubernetes — это система управления заданиями с открытым исходным кодом, созданная Google для абстрагирования инфраструктуры, чтобы контейнерные приложения с открытым исходным кодом (например, Docker) могли работать во многих типах инфраструктур, таких как Amazon Web Services , Microsoft Azure и другие.

Квоты использования

Для начала работы Google App Engine требуется учетная запись Google, а учетная запись может позволить разработчику зарегистрировать до 25 бесплатных приложений и неограниченное количество платных приложений. [24]

Google App Engine определяет квоты использования для бесплатных приложений. Расширения этих квот могут быть запрошены, и авторы приложений могут платить за дополнительные ресурсы. [25]

Смотрите также

Ссылки

  1. ^ «Представляем Google App Engine + наш новый блог». Блог Google App Engine . 7 апреля 2008 г. Получено 3 декабря 2019 г.
  2. ^ "Python Runtime Environment - Google App Engine - Google Code". 22 февраля 1999 г. Получено 14 февраля 2012 г.
  3. ^ Сандерсон, Дэн (2009). Программирование Google App Engine: создание и запуск масштабируемых веб-приложений на инфраструктуре Google. O'Reilly Media . ISBN 978-0-596-52272-8.
  4. ^ ab "Документация Google App Engine | Документация App Engine". Google Cloud . Получено 3 декабря 2019 г. .
  5. ^ "Квоты - Google App Engine - Google Code". 22 февраля 1999 г. Получено 14 февраля 2012 г.
  6. ^ "AppEngineFrameworks - tipfy - Всемогущий маленький фреймворк для Google App Engine - Google Project Hosting" . Получено 14 февраля 2012 г.
  7. ^ "Что такое Google App Engine? - Google App Engine - Google Code". 22 февраля 1999 г. Получено 14 февраля 2012 г.
  8. ^ "Обзор веб-приложений - Google App Engine - Google Code". 22 февраля 1999 г. Получено 14 февраля 2012 г.
  9. ^ "Загрузка и скачивание данных - Google App Engine - Google Code". 22 февраля 1999 г. Получено 14 февраля 2012 г.
  10. Google Developers (7 апреля 2008 г.). «Campfire One: Знакомство с Google App Engine (часть 3)» – через YouTube. {{cite web}}: |last=имеет общее название ( помощь )
  11. ^ "Моделирование отношений сущностей — Google App Engine — Google Developers". 26 июня 2012 г. Получено 17 июля 2012 г.
  12. ^ "Google запускает Cloud Firestore, новую базу данных документов для разработчиков приложений". TechCrunch . 3 октября 2017 г. Получено 16 июля 2018 г.
  13. ^ Google I/O 2011: Бэкэнды App Engine на YouTube
  14. ^ "Обзор API бэкэндов Python - Стандартная среда App Engine для Python - Google Cloud Platform". Google Cloud Platform .
  15. ^ "Обзор API бэкэндов Python - Стандартная среда App Engine для Python - Google Cloud Platform". Google Cloud Platform .
  16. ^ "Google Cloud SQL: ваша база данных в облаке - Официальный блог Google Code". 6 октября 2011 г.
  17. ^ "Возможности Cloud SQL - Документация Cloud SQL - Google Cloud Platform". Google Cloud Platform .
  18. ^ "The JRE Class White List - Google App Engine - Google Developers". 22 февраля 1999 г. Получено 14 июня 2013 г.
  19. ^ "Базы данных Google Cloud SQL - Cloud SQL - Google Cloud Platform". Google Cloud Platform .
  20. ^ "Использование стандартной среды Google Cloud SQL - App Engine для Java - Google Cloud Platform". Google Cloud Platform .
  21. ^ Галлахер, Шон (9 апреля 2008 г.). «Анализ: Google App Engine заманчив, от него будет трудно убежать». Ars Technica . Получено 17 июля 2012 г.
  22. ^ AppScale запускается как резервное копирование с открытым исходным кодом, эквивалентное Google App Engine. TechCrunch (24 июня 2013 г.). Получено 18 сентября 2013 г.
  23. ^ [1] Архивировано 20 февраля 2010 г. на Wayback Machine.
  24. ^ "Общие вопросы Google App Engine". Разработчики Google . Получено 18 июня 2015 г.
  25. ^ "Понимание квот приложений с помощью Google App Engine" . Получено 16 апреля 2010 г.

Библиография

Внешние ссылки