Я пишу научное программное обеспечение в Numpy/Scipy/Matplotlib. Разработав приложения на моем домашнем компьютере, я теперь заинтересован в написании простых веб-приложений. Пример: пользователь загружает изображение или аудиофайл, моя программа обрабатывает его с помощью Numpy/Scipy, а вывод выводится в браузере с помощью Matplotlib, или, возможно, пользователь может загрузить обработанный файл.
Я уже платил за хостинг, у которого установлен Python 2.4.3, но нет Numpy/Scipy. У меня также нет доступа к оболочке через командную строку. Просто перетащите FTP. Довольно ограниченный, но я могу получить простые скрипты Python/CGI.
Удивительно, но веб-поиск показал несколько подходящих вариантов для веб-хостинга с такими уже встроенными возможностями. (Пожалуйста, направляйте меня, если я ошибаюсь.) Я узнаю о Google App Engine, но у меня все еще нет полного понимание его инструментов и ограничений. То, что сеть скажет мне, это то, что другие имеют схожие проблемы.
Надеясь на решения, я подумал, что задаю эти простые вопросы удивительному сообществу SO:
-
Есть ли простой способ установки numpy (или любого стороннего пакета/библиотеки) на мое уже размещенное пространство? Я знаю путь Python на моем размещенном пространстве, и я знаю соответствующие каталоги Python/Numpy на своем домашнем компьютере. Могу ли я просто скопировать файлы и заставить их работать? Как локальные, так и удаленные системы запускают Ubuntu.
-
Какие хостинг-сайты существуют (бесплатно или оплачиваются), у которых установлен Numpy/Matplotlib или, если не установлен, возможность его установки? Существуют ли какие-либо документированные сайты, которые вы можете ссылаться на рабочие приложения, независимо от того, насколько они просты?
-
Может ли Google App Engine мне помочь? Или это полностью для чего-то еще? Используете ли вы его или других для написания научных приложений в Python/Numpy? Если да, можете ли вы ссылаться на них?
Благодарим вас за помощь.
EDIT: после полезных ответов ниже, я купил план на 20 долларов на Slicehost, и мне это очень нравится! (Я сначала попробовал Amazon EC2. Должен быть глупым, но я просто не мог заставить его работать.) Настройка сервера Ubuntu с Apache заняла всего несколько часов (и я новичок в Apache). Это позволяет мне делать именно то, что я хотел с Python и многое другое. У меня теперь есть собственный удаленный репозиторий для контроля версий. Еще раз спасибо!
EDIT 2: Почти два года спустя я попробовал Linode и EC2 (снова). Линоид отличный. На этот раз EC2 казался проще - возможно, это просто добавленный опыт, или, может быть, улучшения, которые Amazon внесла в консоль управления AWS. Для тех, кто интересуется Numpy/Scipy/Matplotlib/Audiolab, вот мой чит-лист Ubuntu всякий раз, когда я запускаю экземпляр EC2:
ec2:~$ sudo aptitude install build-essential python-scipy ipython
python-matplotlib python-dev python-setuptools libsndfile-dev
libasound2-dev mysql-server python-mysqldb
Upload scikits.audiolab-0.11.0
ec2:~/scikits.audiolab-0.11.0$ sudo python setup.py install
ec2:~$ sudo rm -rf scikits.audiolab-0.11.0
ec2:~$ nano .ipython/ipy_user_conf.py
ip.ex('import matplotlib; matplotlib.use("Agg"); import scipy, pylab,
scipy.signal as sig, scipy.linalg as lin, scipy.sparse as spar,
os, sys, MySQLdb, boto; from scikits import audiolab')
import ipy_greedycompleter
import ipy_autoreload