Сентябрь 4th, 2008
На форумах часто появляются сообщения разработчиков, которые создали проект, опубликовали его на App Engine, а потом вдруг потеряли его исходники (всякое бывает). Несмотря на то, что платформа имеет очень продвинутую панель управления приложениями и их версиями, к сожалению, возможности скачать уже опубликованный код стандартными средствами нет.
Конечно же, существует отдельный вариант загрузить вместе с проектом специальный AJAX shell, который позволит просматривать код опубликованного приложения. Скачать подобное решение можно отсюда.
Давайте рассмотрим пример просмотра кода самой AJAX-shell, которая расположена по адресу http://shell.appspot.com.
- Сначала узнаем, где мы находимся:
>>> os.getcwd()
'base/data/home/apps/shell/1.29/'
- Выведем содержимое каталога:
>>> os.listdir(".")
['shell.py', 'templates']
- Далее откроем интересующий нас файл с помощью вывода его содержимого на экран:
>>> file = open("shell.py")
>>> for line in file:
print line
#!/usr/bin/python
[далее содержимое файла]
Возможно в будущем появятся какие-то комплексные удобные решения, которые позволят интерактивно взаимодействовать с кодом приложения. Чем не идея для нового приложения?
No Comments » |
Google App Engine |
Permalink
Posted by techworkru
Август 15th, 2008
В этой статье мы рассмотрим дополнительные сервисы, которые реализованы сторонними разработчиками, но очень пригодятся для воплощения некоторых проектов.
Сервис Cron
Иногда требуется через регулярные интервалы времени выполнять какие-то действия, к примеру удаление временных данных или обновление значений счетчиков. Этот сервис является простой надстройкой над утилитой wget, которая обращается по заданному URL в определенное время.
Сервис Comet
А это, как говорится, мой любимый. Представьте, что необходимо создать приложение-чат на Google App Engine. Самый простейший способ, который вспомнят ветераны веб-строения – использование долгоиграющих HTTP запросов и потоковая выдача данных от сервера, который будет сообщать об новых событиях. Однако на платформе App Engine такой вариант неприменим по ряду архитектурных ограничений. Имеются другие варианты оперативного взаимодействия с сервером, один из которых можно взять на вооружение – использование на клиентской части
XMLHttpRequest запросов. В английском языке существует даже неологизм, связанный с набором таких технологий – Comet.
Теперь давайте подсчитаем: Google выделяет квоту 650 тысяч HTTP запросов в день. Допустим, что мы будем опрашивать сервер каждую секунду.
650k запросов в день / 86k секунд в день = 7 пользователей могут быть в чате целый день
Согласитесь, что 7 пользователей для масштабируемого приложения не являются достойным показателем. Описываемый сервис Comet позволяет преодолеть эти ограничения и не иметь проблем с дополнительным сервером.
Главным ограничением его использования является то, что вы должны иметь собственный домен для работы приложения. К сожалению, сервис не поддерживает работу сайтов в зоне *.appspot.com.
Итог
Ну и конечно все примеры можно загрузить в исходных кодах.
No Comments » |
Google App Engine |
Permalink
Posted by techworkru