Роман Захаров
Роман ЗахаровНа сайте 15 лет и 3 месяца (заходил 12 лет 6 месяцев 26 дней назад)
0
84
|
Рейтинг
84
|
Редактирование бюджета
21 Июня 2012
По договоренности
Для игрового хостинга необходимо написать новый 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) Вроде это все, если не забыл что-то… Есть вопросы — задавайте. Просьба указывать сразу примерные сроки, когда можете начать и примерную стоимость разработки. |