Многие студенты, возможно, слышали о Nodejs и знают, что он может запустить JavaScript на сервере, но они могут не очень ясно о его сценарии использования. Недавно они также изучали Nodejs, поэтому я сделал резюме;
Преимущества Nodejs:
Есть много языков на стороне сервера (PHP, Java, ASP.NET). Каковы проблемы? Текущий язык на стороне сервера создает поток для каждой ссылки пользователя, когда пользователи получают доступ к серверу, но каждый поток потребляет около 2M памяти. Если сервер с памятью 8G может ссылаться на 4000 пользователей. Если количество пользователей имеет большое количество ссылок, количество серверов должно быть увеличено. Более того, у пользователей есть много способов ссылаться одновременно (например, приложения, веб -страницы одновременно), которые включают проблему обмена серверами, поэтому то, как сервер поддерживает максимальное количество пользователей одновременно, становится проблемой;
Nodejs изменил метод ссылки на клиент-сервер, чтобы решить эту проблему. Он не создает новый поток для каждого клиента, но запускает событие, обработанное внутри каждой ссылки клиента. Следовательно, Nodejs имеет возможность обрабатывать клиентские ссылки в возрасте до десятков тысяч пользователей одновременно;
Nodejs подходит для приложений для разработки:
Когда приложению необходимо обработать большое количество одновременного ввода/вывода, и не требует очень сложной обработки в приложении перед отправкой ответа на клиента, мы должны рассмотреть вопрос о использовании Nodejs для разработки приложений, например:
1. Сервер чата: если много людей чат, одновременная связь между пользователем и сервером большая, но обработка данных на сервере не является сложной;
2. Серверы комплексных веб-сайтов обслуживания и веб-сайтов электронной коммерции: на стороне сервера этого типа веб-сайта часто можно получать до тысяч данных данных в секунду и необходимо записать эти данные в базу данных. Nodejs могут быстро записать эти данные в кэш с помощью механизма очереди, а затем извлекать данные из области кэша и записать их в базу данных с помощью каждой отдельной обработки. If it is another server (such as the Apache server or Tomcat server), since these servers use blocking I/O mechanisms, each piece of data needs to be written in the database for a while (and wait until the previous one is finished before the next one is written), but NodeJs uses a non-blocking I/O mechanism, so it can implement the write of these data into the database without having to wait for a period of time for each piece of data to be written;
Суммировать:
Немного большая система не может быть обработана языком развития. Он часто смешивается с несколькими типами, такими как C и C ++ для разработки на стороне сервера, Java для бизнес-логики, PHP для фронтального дисплея, а также требует промежуточного программного обеспечения и т. Д.
Nodejs могут быстро прототип на стороне сервера (оказывается, что C-System и Java можно сделать только вещи, а производительность все еще очень высока), а количество кода будет относительно небольшим; Другим пунктом являются его синтаксические преимущества, закрытия JS и т. Д., Но он не подходит для процессовой обработки и может быть решена только путем развертывания. Говорят, что на этот раз кто -то поделится результатами исследования в QCON, поэтому вы можете обратить на это внимание.
У каждого языка есть свое подходящее поле. Нет необходимости заставить язык решить все. Он имеет характеристики других языков. Только постоянно компромисс - цель.
Это все резюме, которые можно увидеть в сериале, я надеюсь исправить их