По договоренности
Для игрового хостинга необходимо написать новый backend обработчик на удаленные сервера.
Язык программирования — любой, приоритетные — java, C/C++, python, ruby, erlang.
1. Программа должна слушать определенный порт, принимать запросы и обрабатывать их (сейчас например используется xml-rpc, есть что-то лучше — предложите)
2. Язык разработки значения особого не имеет, главное, чтобы все работало быстро (сейчас используем обработчик на java)
3. По возможности, если это стоит того, программа должна обрабатывать каждый запрос в отдельном потоке (но это не принципиально)
4. Программа должна осуществлять проверку подлинности отправителя
5. Список основных команд ниже. Подробности по запросу.
Список команд:
- запуск и остановка игрового сервера (сейчас просто вызывается внешний shell скрипт)
- установка игрового сервера (несколько этапов)
* создание unix юзера
* создание папки в /home для него
* копирование в эту папку файлов шаблона игры (шаблон — директория с файлами, путь получаем от отправителя)
* создание файла конфигурации (смотрите ниже)
* установка chown на папку юзера (сейчас идет простой вызов chown -R)
- создание и редактирование файла конфигурации:
* берем шаблон файла, в котором необходимо заменить переменные вида %port% (или любой другой шаблон) на параметры из запроса от отправителя
* записать/сохранить файл в определенное место (параметры в запросе — путь и название файла)
* при редактирование просто перезаписываем файл (хотя лучше сделать то, что быдет быстрее)
- обновление игрового сервера:
* просто копируем файлы из папки в папку с игровым сервером (путь передается в запросе)
- удаление игрового сервера:
* удаляем юзера
* удаляем все его файлы
- переустановка игрового сервера:
* удаляем сервера
* устанавливаем сервер
- получение статуса сервера (сейчас идет простой вызов внешнего shell скрипта)
- получение лога сервера:
* берем последние 100 строк из файла лога (путь до файла — в запросе)
- листинг определенного каталога, поиск всех файлов с определенным расширением и возвращение отправителю списка этих файлов без расширения (например поиск в каталоге /home/s1 файлов *.so)
Вроде это все, если не забыл что-то…
Есть вопросы — задавайте.
Просьба указывать сразу примерные сроки, когда можете начать и примерную стоимость разработки.