3

В настоящее время я использую несколько сценариев Perl и Python на компьютере с Windows и хотел бы перенести на серверы Amazon EC2, работающие под управлением 64-разрядной версии LINUX. Сценарии представляют собой базовые веб-скребки, которые идут на различные веб-сайты, получают данные и затем ежедневно сохраняются в виде CSV-файлов.

Я хотел бы установить их в облаке и запустить их в автоматическом режиме, чтобы они работали без моего вмешательства. Также, учитывая, что я не хочу потерять все данные в случае сбоя экземпляра, я также должен загрузить файлы csv в Amazon S3.

Есть идеи, как я могу это сделать? Я не очень разбираюсь в Linux и не очень хорошо знаю Perl/Python. Какой лучший способ для меня решить эту проблему?

5 ответов5

2

Если все, что вы делаете, это просматриваете сайты, я бы предложил альтернативное решение:

Не используйте Amazon EC2. EC2 требует уровня навыков помимо способности администрировать операционную систему в стиле Unix. EC2 также предполагает, что вы можете справиться с ситуацией самостоятельно, вас никто не сможет выручить. Я понимаю, что в настоящее время EC2 свободен для новых регистраций для частных лиц, но вы наносите удар по гвоздю с помощью пневматического отбойного молотка.

Вместо этого используйте общий веб-хостинг, поддерживающий Perl, и те, которые описаны на полезном сайте http://perlsharedhosting.com/ , будут полезны. Перечисленные там провайдеры виртуального хостинга стоят относительно дешево (<10 долларов в месяц) и дают вам возможность использовать CPAN. Таким образом, кто-то еще беспокоится об операционной системе сервера, и вы беспокоитесь только о своих сценариях. Затем узнайте, как использовать unix crontab для запуска вашего скрипта по расписанию, или узнайте что-то вроде POE или AnyEvent, чтобы сделать ваш скребок сервисом (поищите CPAN за последние два).

Что касается хранилища, вы можете купить пакет резервного копирования для вашего общего хостинга, и у вас должно быть достаточно свободного места для хранения вашего пакета (обычно не менее 10 ГБ). Если вам необходимо выполнить резервное копирование на S3 по какой-то конкретной причине, вы можете сделать это также, на CPAN есть даже модули perl, чтобы помочь с этим. Для получения бонусных баллов, я предлагаю вам изучить Dancer или Catalyst, чтобы сделать ваши вырезки доступными в веб-браузере и изучить perl webdev в процессе. Имейте в виду, что эти пакеты общего хостинга часто включают в себя неограниченную передачу и почти неограниченное хранилище, EC2 не включает эти вещи.

Если виртуальный хостинг не работает и вы хотите потратить больше денег, я предлагаю linode.com в качестве промежуточного шага. Вы несете ответственность за установку Linux, но у вас есть больше резервных копий поддержки, чем с EC2.

Суть в том, что EC2/S3 являются ОЧЕНЬ полезными инструментами, но на самом деле они предназначены только для производственных развертываний или для очень серьезных людей, имеющих опыт работы с производственными развертываниями. Поскольку у вас нет такого опыта, я очень рекомендую вам пойти другим путем.

Удачи.

1
  1. Найдите кого-то, кто знает Linux, Perl и Python.
  2. Дай им деньги.
1

Я не знаю, является ли EC2 подходящим инструментом для работы. Может быть, посмотрите на http://www.picloud.com/ это в основном позволяет вам запускать отдельные методы в облаке.

0

Вы можете использовать одно из приложений управления облаком, чтобы сделать это для вас через пользовательский интерфейс или отправить запрос в службу поддержки, чтобы системный администратор сделал это за вас - если вы хотите использовать AWS, то есть. Посетите cloudkick.com и http://digitalmines.com (отказ от ответственности: я работаю в Digital Mines).

0

Если вы действительно хотите получить данные в S3, загрузка на S3 имеет смысл. Если ваша цель - просто сохранить существующие данные, альтернативой является использование Amazon Elastic Block Storage, чтобы иметь доступный постоянный подключенный диск.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .