Ответ 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/datap >
-
внешняя структура какого-либо типа (необязательно)
-
внешний шаблонный шаблон (также необязательно)
База данных требуется, если вы строите сайт "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...)