Задать вопрос

Какой выбрать язык для серверной части highload проекта?

Доброго времени суток.
Есть большой проект и мне выпала честь переписать его логику.
Цель такова:
Сделать все вычисления, записи и прочее касаемо логики проекта отдельно от всего. Что бы веб и мобильные версии просто отправляли запросы на логическую часть и она выполняла все основные операции.
Сразу скажу основные претенденты Python и NodeJs.
Я смотрел различные статистики и где-то python, где-то nodejs лучше.
От проекта требуется хорошая производительность с малым потреблением ресурсов (сервер мощный, не подумайте). Определённо будет большой кол-во обращений к PostgreSql базе.
Не знаю какой язык и фреймворк выбрать под такие нужды.
Товарищ подталкивает написать всё на C++ и идея впринципе не плохая, но переживаю за скорость разработки и стабильность проекта.
  • Вопрос задан
  • 8196 просмотров
Подписаться 7 Оценить 3 комментария
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Stepik
    PHP (pro)
    2 недели
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 7
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
php - все будет в лучшем виде, если руки "прямые".
Ответ написан
KorsaR-ZN
@KorsaR-ZN
Если стоит выбор между Python и NodeJS, берите однозначно Python, в NodeJS намучаетесь с его асинхронностью.
С++ конечно хорошо, но на мой взгляд будет сильно тормозить скорость разработки, да и можно нарваться на подтекании памяти.
Так, что берите Python, хотя можете присмотреться к PHP и фреймворку Phalcon

А вообще сложно что-то советовать не зная примерной нагрузки.
Ответ написан
index0h
@index0h
PHP, Golang. https://github.com/index0h
С нодой очень вероятно - хлебнете горя на утечках памяти. Нода - конечно не плохая штука, но вы должны понимать, что ограничены N потоков запросов к БД, где N - количество CPU(в случае, если модуль кластер использовать не будете N = 1). То, что касается IO - нода очень даже синхронная.
На счет C++ - будьте осторожны, скорость разработки и поддержка вероятно будут больным вопросом.
На счет питона ничего не скажу.
Можете посмотреть в сторону Golang или Java.

Вообще говоря - нельзя подбирать технологию по паре абстракций типа "работа с postgre", "логика проекта", "highload")) Это как подбирать пароль зная, что но был написан на желтой бумажке. Слишком мало информации.

На счет HL: возможно скажу спорную штуку, но если вы ориентируетесь на HL - даже не предполагайте того, что сервер будет один.
Ответ написан
viktorvsk
@viktorvsk
10к в день - это не нагрузки. Симфони - явно не хуже джанги или экспресса. Если "тормозит", проставьте индексы в базе и потюнингуйте настройки (в вашем случае, мне кажется, начать хотя бы с pg_tune)

Если и дальше тормозит, то никаких телодвижений, особенно переписывания на неизвестные языки, без профилировщика - узнайте узкие места и задавайте(сь) конкретные вопросы.

Ну и, конечно, уточните понятие "тормозит". Мало ли, может у вас скрипты и стили не слиты и не сжаты и все запущено в дев окружении
Ответ написан
miraage
@miraage
Старый прогер
Я вас умоляю. Люди на симфони обрабатывают миллиард запросов в неделю.
Грамотно спроектируйте логику, базу данных, кэширование, балансировку - всё будет летать.
И технология не сильно влияет. Главное, это Ваши навыки.
Ответ написан
Комментировать
@bromzh
Drugs-driven development
Выбирай Java
Ответ написан
FedLapshin06
@FedLapshin06
C/C++, Go, Python developer
Лучше Go!
1. Многопоточен ( использует ядра и потоки, как в NodeJS )
2. Асинхронен
3. Множество либ ( и для инета тоже )
4. Из коробки кучу примочек
5. Кроссплатформенный
6. Компилируемый
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы