2015-06-18 3 views
0

Я делаю примерное веб-приложение в node.js с помощью express.js. Я немного запутался при использовании apache-tomcat в качестве своего веб-сервера. У меня есть два сомнения:Сервер Express.js с Apache Tomcat

  1. Когда я запустить Apache-Tomcat в качестве веб-сервера и мой express.js сервер предоставляет мне услуги на номер порта 4000, как он знает на какой порт для прослушивания веб-сервера Tomcat , и что, если у меня есть несколько экземпляров tomcat, работающих на localhost, как он узнает, к какому экземпляру сервера подключиться.

    app.listen(port, "127.0.0.1"); 
    
  2. И как следующая строка кода работает:

    var server = app.listen(4000, function() { 
    
        var host = server.address().address; 
        var port = server.address().port; 
    
        console.log('server listeninig at http://%s:%s', host, port); 
    }); 
    
  3. Почему мы должны принять помощь Apache Tomcat или других веб-серверов, если мы можем предоставить веб-службы с использованием только express.js ,

ответ

3

Я не верю, что объединение express.js (простого веб-сервера для платформы Node.JS) и Apache Tomcat (контейнер Servlet из мира JVM) имеет смысл вообще.

Держу пари, что вы вводите в заблуждение Apache Web Server с Apache Tomcat. Это два совершенно разных проекта. Если это так, то обратите внимание, что Apache Web Server или Nginx HTTP-серверы часто используются с express.js как reverse proxies. Эта комбинация часто используется для соответствия требованиям безопасности и производительности (например, кэшированию), необходимым для приложения класса PROD.

Чтобы ответить на ваш вопрос, не следует комбинировать express.js с Apache Tomcat. Если вы только начинаете играть с express.js, используйте его автономно. Если это приложение, которое должно запускаться в процессе производства, вам необходимо его реализовать, что, вероятно, будет включать соображения вокруг объединения его с некоторым HTTP-сервером.

+0

Привет, я все еще смущен о том, как вы знаете, на каком порту слушать tomcat? – Dheeraj

+0

Уничтожьте tomcat из уравнения. Standalone Express.JS будет служить вам хорошо для обучения. – luboskrnac

+0

Ваше приложение прослушивает порт 4000, поэтому загорается HTTP-запросы против localhost: 4000 при запуске вашего экспресс-сервера – luboskrnac

Смежные вопросы