Подтвердить что ты не робот

Весь сайт с node.js и mongodb?

Я создал несколько сайтов, использующих PHP и mySQL в качестве бэкэнд, и считаю, что я хорошо знаком с обоими. Однако во время исследований для моего нового веб-сайта я встретил node.js и mongodb (и socket.io, так как сайт будет содержать чат).

Я решил использовать node.js и mongodb для запуска чата - но не знаю, должен ли я просто делать весь сайт с этими двумя вещами? Так как я буду запускать сервер node в любом случае, должен ли я запускать еще один (отдельный) хостинг сайта? Или это плохая идея? - Это стабильно? Я мог бы делать программирование на PHP и все еще использовать mongodb - но не быстрее ли node?

И еще вопрос: Я планировал использовать ajax для обработки всех сообщений на странице, но так как я уже использую socket.io в чате - должен ли я делать все мои запросы по почте, используя это? Для ajax я планировал использовать jQuery (также для всех эффектов frontend).

4b9b3361

Ответ 1

не знаю, должен ли я просто весь сайт с этими двумя вещами?

Если вы хотите узнать node.js, тогда нет ничего лучше, чем его кодирование.

Так как я запускаю сервер nodeв любом случае я должен просто запустить другой (отдельный) один хостинг веб-сайта?

Вы можете использовать существующий сервер и запустить приложение node.js на другом свободном порту (o). Я думаю, что для обучения node вам не нужно иметь выделенную машину.

устойчиво?

Даже версии node.js являются стабильными версиями, однако до тех пор, пока не будет 1.0 с фиксацией функции, в его API могут быть внесены изменения.

Я мог бы программировать на PHP и все еще использовать мангодб, но не node будет быстрее?

Скорее всего (и определенно).

Я планировал использовать ajax для обработки всех сообщения на страницу - но так как я allready используя socket.io в чате - должен ли я выполнять все мои запросы, используя что?

Я бы порекомендовал придерживаться модели MVC и использовать экспресс, так как вы можете получить много времени на проблемы, если будете использовать socket.io для классических вещей. Socket.io - это функция реального времени и связанные с этим вещи.

Ответ 2

Для node.js уже существуют сплошные веб-фреймворки, в частности, проверьте Express. Здесь действительно хорошая статья, в которой излагаются некоторые уроки и опыт создания веб-сайта node.js:

Как это похоже на создание реального веб-сайта в node.js

Что касается вашего второго вопроса, вероятно, лучше всего использовать обработчики AJAX и HTTP с помощью jQuery. Я не уверен, что jQuery поддерживает обратные вызовы через сырые TCP-сокеты.

Ответ 3

node.js + express + jade + stylus + jQuery является моей предпочтительной средой.

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

Что касается socket.io + jQuery, они отлично ладят, но это не так естественно, как express + jQuery. Я придерживаюсь того, чтобы делать ajax-вызовы для большинства вещей.

Ответ 4

Node.JS все еще может быть немного диким Западом, но его улучшение. Это совсем другая модель от кодирования в php, но она очень хорошо подходит для многих сайтов. Вероятно, вы захотите сделать тонкий сервер (выставить REST API и конечные точки вашего веб-сайта) более толстым клиентом, используя что-то вроде BackBone.js, чтобы поддерживать взаимодействие в чистоте.

Большая победа от всего, что происходит в node, заключается в том, что у вас не будет дублирования кода между php и js для работы с БД или любыми другими службами, требуемыми обоими. Node.JS также фантастичен при обработке тонн и тонны одновременных запросов.

Удача