Express.js.. что такое обычный бэкэнд/хостинг?

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

http://yummly.com
http://new.myspace.com
http://klout.com

и т.д. Но я смущен тем, что что они "работают" .........

Я предположил, что могу просто найти облачную службу, которая обеспечивает весь стек для dotcom Express.js, оплатить с помощью моей кредитной карты и начать обучение кода Express.js.

Но это, похоже, не так, если только я чего-то не хватает.

i - для корпоративных, больших веб-сайтов (yummly, new.myspace и т.д.), что это за стек? Что-то вроде yummly "работает"? Я ценю Expressjs, но что такое конвейер?

ii ​​- что на самом деле является "наиболее распространенным" стеком для Express.js dotcom? Что вы, ребята, используете каждый день?

iii - Я удивлен, что нет знаменитого "cloud-express-stack.com" , где вы просто вводите свою кредитную карту, и вы можете сразу увеличить объем корпоративного использования, я что-то теряю или не понимаю?

Я искал googled и googled и читал каждый SO qa, но поле кажется настолько быстрым, что это трудно поддерживать.

(Например, я сразу узнал, что Экспресс полностью устарел, и я должен сейчас смотреть на "Метеор": O)

Как скромные мобильные разработчики, мы привыкли к с помощью parse.com или других плоских бэкэндов (bAAs, можно сказать), которые делают все.

На странице справки parse.com говорится, что.. https://parse.com/docs/hosting_guide#webapp.. вы можете использовать parse + Expressjs для построения целого доткомов. Но, может быть, вы знаете, что это дерьмо и ложь?

Какая реальная ситуация? Спасибо!

Ответ 1

Этот вопрос находится на грани "слишком широкого" или "основного мнения", но этот ответ будет сосредоточен на ответных частях вашего вопроса.

Что они "запускают"

Klout.com использует CloudFlare (как CDN и, возможно, смягчение DDoS) и AWS (Amazon Web Services). Yummly.com использует AWS. MySpace, насколько я могу судить, они используют свои собственные серверы для хостинга (которые, похоже, размещаются на хостах RedHat).

Как я узнал об этом. Вы можете использовать команду ping для ping любого домена, чтобы увидеть IP-адрес сервера:

ping yummly.com

С IP-адресом сервера вы можете использовать команду dig для обратного поиска DNS:

dig -x 54.243.91.244 

В качестве альтернативы вы можете использовать онлайн-службы whois для получения более подробной информации о серверах на определенном IP-адресе.

Зная это, вы теперь знаете, что они используют для размещения своих приложений (но не их "стека" ).

весь стек для "Express.js"

Что такое Express.js? Express - это всего лишь фреймворк для Node.js, который помогает вам создавать приложения.

Когда вы говорите о "стеке" для веб-приложений, что вам обычно необходимо создать веб-приложение:

  • сервер базы данных (например, MongoDB, MySQL и т.д.)

  • сервер, который будет подключаться к вашей базе данных и обслуживать клиентов с помощью HTML/data​​p >

  • внешняя структура какого-либо типа (необязательно)

  • внешний шаблонный шаблон (также необязательно)

База данных требуется, если вы строите сайт "enterprise" (выбор одного из них является полностью отдельной проблемой).

Внутренний сервер - это широкий термин. Если вы используете серверные языки, такие как PHP, Python или ASP.NET, вам нужно будет использовать веб-сервер (например, Apache/nginx/IIS) для обработки входящих запросов и обслуживания страниц для клиентов.

Node.js - среда выполнения, основанная на JavaScript для разработки веб-приложений на стороне сервера (подробнее см. этот вопрос Что такое Node.js)

Написание HTML в JavaScript не очень удобно. Вот почему используются шаблонные двигатели (например, усы, рули и т.д.).

В настоящее время очень популярно использовать какую-то внешнюю инфраструктуру, такую ​​как Angular или нокаут, но вы можете создать сайт даже без него.

Недавно популярный "полный стек" для Node.js MEAN (который обозначает MongoDB, Express, AngularJS и Node.js).

Чтобы закончить... Если вы хотите изучить Экспресс, вам не нужно ничего покупать. Установите его локально на свой компьютер и начните играть с ним.

Чтобы разместить ваше приложение Node.js/Express, вы можете использовать разные службы в зависимости от ваших требований и т.д. (примеры: AWS, Heroku...)

Ответ 2

Express.js является основой для Node.js. Это действительно полезно для маршрутизации и создания API, если вы используете Node.js на стороне сервера.

Таким образом, простой стек для запуска приложения с помощью экспресс может быть Node.js, db по вашему выбору и некоторым интерфейсом шаблона front-end, например ручками.

mean.io также представляет собой полный "стек", который вы можете запускать и получать экспресс и т.д.