Показать сообщение отдельно
  #20 (permalink)  
Старый 29.01.2011, 23:58
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от x-yuri
есть какие-то преимущества?
Давай так: отличия. А уж преимущества это или нет, каждый решает сам. Буду сравнивать с PHP, он самый популярный и я его знаю.

1. NodeJS сам себе сервер. Точнее в скрипте на NodeJS можно создать сервер, который и будет отвечать на запросы. А можно сервер не создавать, если скрипт будет не сайтом, а чем-то другим. Т.е. если для PHP нужен Apache, то NodeJS самодостаточен, хотя я предпочитаю ставить перед ним nginx.

2. Скрипт на NodeJS запускается единожды и выполняется всё время работы сайта. В отличие от PHP, который запускается в момент запроса, после чего убивается. Поэтому весь код со всеми библиотеками парсится единожды при запуске, что не может не добавлять скорости.

3. В NodeJS на все запросы отвечает один процесс, соответственно легко шардить данные между запросами. Поэтому серверная часть чата на NodeJS пишется лёгким движением левой руки, в то время как на PHP нужно искать пути шардинга данных между процессами (обычно используется база).

4. NodeJS сам себе сервер, поэтому он сам решает сколько ему держать запрос. NodeJS может держать тысячи ждущих соединений, это ему ничего не стоит. В отличие от PHP в котором на каждый запрос создаётся процесс. Поэтому Comet сервер на NodeJS делается лёгким движением левой руки, в то время как на PHP нужно искать специальные библиотеки.

Это то, что я считаю плюсами.

Особо хочется отметить распространённое заблуждение, что NodeJS это круто, потому что один и тот же язык на сервере и на клиенте.

Язык хоть и один и тот же, но окружения разные. Поэтому и все библиотеки разные и стиль кодирования разный. И точно также, как с PHP, есть серверные скрипты, а есть клиентские, и они никак не пересекаются.

Последний раз редактировалось Kolyaj, 30.01.2011 в 00:01.
Ответить с цитированием