Ruby, Python или NodeJS для сервиса?

Последней месяц мучает вопрос на чем лучше написать сервис: Ruby, Python или NodeJS. Суть сервиса в выдаче динамики (стандартный http сервер), а в свободное время (ночью) анализ полученной статистики и данных. Проще говоря, когда никого нет, демон начинает в фоновом режиме ворочать данные, а как только появилась активность, он замедлил ход и отдал пару ядер обратно. И из этого следует вопрос: какой язык позволит это сделать? (я понимаю, что все они. Какой более предпочтителен.).

Язык выбираю не на один проект и хотелось бы выбрать такое, который позволил бы писать не только блоги и лендинги (но и их тоже), но и серьезные сервисы, с большим объемом данных.

На данный момент оперирую:
JS - 2 года
PHP - 2 года
PERL - 0,5 года.
C++ - 1 год

Нодой балуюсь уже вторую неделю, все круто (После PHP так вообще сказка), но есть ощущение, что чего-то недодают.

P.S. в силу возраста и малого опыта работы могу тупить в понимании распределенности системы.
  • Вопрос задан
  • 5204 просмотра
Пригласить эксперта
Ответы на вопрос 7
k12th
@k12th
console.log(`You're pulling my leg, right?`);
Смысла нет делать это одним сервисом. Это разные задачи, пишите два отдельных приложения, им даже не надо общаться друг с другом, достаточно просто читать и писать в одну и ту же БД. Сервис аналитики можно вообще рзаместить на отдельном серваке и даже у другого хостера.
Ответ написан
@Elizavetta
Matroid: gamedev/js-разработка
Задача перераспределения ресурсов параллельна веб-морде. Вы можете разные инструменты для разных задач использовать. Python для данных подойдет хорошо.
Ответ написан
OnYourLips
@OnYourLips
Node.JS не подходит из-за своей асинхронной природы.
Поэтому с учетом твоего опыта рекомендую PHP, и смотреть в сторону очередей.

Ruby или Python не рекомендую как раз из-за отсутсвия опыта.
Ответ написан
@tex0
Нодой балуюсь уже вторую неделю, все круто

Чтобы пользоваться данным инструментом, нужно хорошо понимать принцип его работы, а так же уметь анализировать его пригодность к реализации требований вашего будущего продукта.

ИМХО - если предполагается что базовый режим работы сервиса оперирует малыми размерами данных за "сеанс", то нода в целом подойдёт. Для сложных же вычислений (режим "ночь" - анализ банка полученных данных и т.п) - ПХП, ЦПП или что-то с поддержкой многопоточной модели для аналитики (ибо нодовский eventloop, без "хитрых приготовлений" не имеет смысла в данном случае).
Ответ написан
@korotkin
Начните с Django. Когда начнете понимать python, переедете на что-нибудь еще.
Django-Rest-Framework / Django-Pie днем
Django + celery ночью
Ответ написан
@sergekosykh
Поддерживаю насчет Golang.

С-обрАзный синтаксис, статическая типизация, многопоточность (легковесные потоки), асинхронность, очень быстрый сборщик мусора, богатая стандартная библиотека, большое количество сторонних пакетов на самые разные темы и много всяких других "плюшек", включая наличие далеко не единственной полноценной бесплатной IDE (если кто-то использует).

Подходит и для web, и для аналитики.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы