Стоит ли использовать Node.js на сервере оплаты?

Здравствуйте!

Стоит задача написать бэк-сервер для электронной оплаты в общественном транспорте. Знаю php, node.js, java (чистый, Spring не изучал и вообще с ним не работал).
На каком языке посоветовали бы написать?
На PHP писать душа не лежит, хоть убейте))
Node.js - хотел бы, но останавливает то, что при неотловленном исключении, сервер падает целиком. Хотя есть инструменты, которые перезапускают, но параллельно обрабатываемые запросы тоже обрываются и последствия пока не до конца известны. Ведь на кону реальные деньги, поэтому падение сервера не желательны. Не проверял, но в случае падения, postgres + транзакции должны либо откатить все запросы в БД либо совершить оплату.
Java - на этом языке писал некоторые скрипты, мелкие автоматизации, работал с файловой системой, но не более. Spring не изучал. Но если ситуация придет к тому, что будет необходимо написать только на java, то придется доучивать.
  • Вопрос задан
  • 359 просмотров
Пригласить эксперта
Ответы на вопрос 3
dkrylov
@dkrylov
Node.js - хотел бы, но останавливает то, что при неотловленном исключении, сервер падает целиком.


1) Так сделайте так, чтобы исключение отловилось
2) Так сделайте очередь в бд с транзакциями, и чтобы нода их постепенно оттуда обрабатывала, и записывала статус обработки.
3) Так повесте логгирование на какое нибудь событие (транзакция не обработана, сервер перезапущен), чтобы в случае проблем, быть вовремя уведомленным

P.S. Что PHP, что NodeJS, что Java, успешно справиться с Вашим заданием, если всё корректно задизайнить.
Ответ написан
Комментировать
samodum
@samodum
Какой вопрос - такой и ответ
Node.js - хотел бы, но останавливает то, что при неотловленном исключении, сервер падает целиком

Это в любом нормальном языке так, это суть исключений.
Или ты хотел бы, чтобы при делении на ноль сервер у тебя и дальше продолжал работать?
Я сочувствую твоему заказчику, что они подрядили на задачу тебя. Чувствую, что ты напишешь дырявое решето. Не забудь дать ссылку на свой проект
Ответ написан
Комментировать
index0h
@index0h
PHP, Golang. https://github.com/index0h
На каком языке посоветовали бы написать?

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

Node.js - хотел бы, но останавливает то, что при неотловленном исключении, сервер падает целиком.

Если это проблема - вы не знаете nodejs, не используйте его.

Java - на этом языке писал некоторые скрипты, мелкие автоматизации, работал с файловой системой, но не более.

Экосистему языка получается тоже не знаете...

На PHP писать душа не лежит, хоть убейте))

Ноду вы не особо знаете, java тоже не очень, а php не хотите... Похоже, на данный момент у вас не получится.
Рекомендую отказаться от этого проекта.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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