2011-02-04 5 views
0

У меня есть требование внедрить систему пакетной обработки, которая будет работать за пределами Google App Engine (GAE) для пакетной обработки данных из СУБД и вставки ее в GAE.Программный удаленный доступ к хранилищу данных

appcfg.py делает это из различных входных файлов, но я хотел бы сделать это «вручную» с использованием некоторого API, чтобы я мог полностью контролировать жизненный цикл процесса. Существует ли общедоступный API, который используется внутри appcfg.py?

Я бы написал демона в Python, который запускается на моем внутреннем сервере и контролирует некоторые таблицы MySQL. При правильных условиях он будет захватывать данные из MySQL, обрабатывать их и публиковать с помощью GAE RemoteAPI в приложении GAE.

ответ

2

звучит, как вы уже знаете, что делать. своими словами: «захватить данные из MySQL, обработать их и опубликовать с помощью GAE RemoteAPI». у remote api docs есть примеры, которые пишут в хранилище данных.

+0

Простите, что меня так долго, я отвлекся. –

+0

перейдите к этой [link] (https://developers.google.com/appengine/docs/go/tools/remoteapi) для документа для удаленного доступа api из приложения go. – Misterhex

0

Что вы, вероятно, могли бы сделать (если я правильно понимаю, в чем ваша проблема), используется Task Queue. С этим вы можете определить задачу, которая делает то, что вы ожидаете от нее;

Допустим, вы хотите вставить что-то в хранилище GAE. подготовьте файл вставки на каком-либо сервере. Затем перейдите в свое приложение и подготовьте «Start Insert Task». Нажав на то, что начнется фоновое задание, прочитайте этот файл и вставьте его в хранилище данных.

Кроме того, если эта задача выполняется ежедневно, вы можете вызвать создание задачи с помощью задания cron.

Однако, если вы могли бы сказать больше о работе, которую необходимо выполнить, было бы легче :-P

+0

Это не совсем то, о чем я думаю. Я отредактирую свой вопрос. –

+0

Вы все еще можете делать это с помощью cron-заданий, потому что я не думаю, что для этого существует «активный» API. Однако то, что по-прежнему возможно, это отправить это как форму submit. Так как обычные HTTPRequests, но это становится сложным в отношении безопасности – Hons

Смежные вопросы