Узел JS Управляемый хостинг против VPS

Добавление чека также является расходами. Вы всегда этого хотите? Скомпилированный язык может сделать проверку для постоянного экспонента, чтобы узнать, является ли это относительно небольшим целым числом, потому что нет затрат времени исполнения, а просто затраты времени компиляции.

Это зависит от конкретной реализации, если этот тип не задан языком.

Python не знает, какое распределение экспонентов вам он собирается его кормить. Если это будет 99% нецелых значений, вы хотите, чтобы код каждый раз проверял целое число, делая выполнение еще медленнее?

23
задан Yousef Salimpour 29 September 2012 в 12:59
поделиться

2 ответа

Использование одного из сервисов по большей части требует много времени - вы пишете свой код и позволяете им беспокоиться об управлении модулем, поддержании вашего процесса, создании канала публикации, исправлении ОС и т. Д.

Напротив, наличие собственной виртуальной машины дает вам больший контроль, но при этом требует больше предварительных затрат и постоянных временных затрат.

Еще одним соображением является то, что некоторые хостеры и провайдеры облачных услуг предлагают собственные или отличные варианты технологий. У них есть свои причины, и они предлагают ценность, но это означает, что если вы хотите переключить облачных провайдеров, это может означать, что вам придется переписать код, сценарии развертывания и т. Д. С другой стороны, использование виртуальных машин со стандартной ОС в качестве базового показателя довольно общий. Если вы автоматизируете / скрипте / документируете конфигурацию своих виртуальных машин и ваш код остается общим, тогда ваши параметры остаются открытыми. Если вы берете зависимость от проприетарной облачной технологии, то было бы хорошо абстрагировать ее за интерфейс, чтобы она была отделена от компонентов и не распространялась по всему коду.

1123 Я сделал и то и другое. Я недавно прошел путь к ВМ, главным образом потому, что хотел получить опыт обучения. Мне пришлось:

  • получить виртуальную машину у провайдера облачных услуг
  • Мне пришлось обновить и исправить ОС
  • Мне нужно было установить и настроить git в качестве публикации channel
  • Мне пришлось написать несколько сценариев и использовать такие вещи, как forever, чтобы он работал
  • Мне пришлось настроить обратный http-прокси, чтобы он запускал несколько сайтов.
  • Мне пришлось настроить DNS с провайдером облака, открыть порты для git и т. Д ...

Список можно продолжить. В конце концов, это стоило мне больше времени без программирования, но я узнал о многих других вещах. Если они важны для вас, попробуйте. Если вы хотите сосредоточиться на написании своего кода, тогда вам может помочь хостинг-провайдер.

В конце у меня также было больше вариантов - я хотел добавить второй сайт. Я добавил en entry в свой обратный прокси-сервер и добавил свой скрипт, чтобы запустить другое приложение с другим, вуаля, другим сайтом. Больше контроля. После этого я хотел попробовать mongodb - просто - установил его.

По стоимости они примерно одинаковы, но если вы начнете размещать несколько сайтов со многими другими пакетами, такими как базы данных и т. Д ..., то виртуальная машина может начать дешеветь.

Nodejitsu с открытым исходным кодом свои инструменты, что также облегчает, если вы делаете свои собственные.

Если вы делаете это самостоятельно, вот несколько ссылок, которые могут вам помочь:

Поддержание работоспособности сервера:

https://github.com/nodejitsu/forever/

http://blog.nodejitsu.com/keep-a-nodejs-server-up-with-forever

https: // github.com/bryanmacfarlane/svchost

Универсальный автоматический запуск и перезапуск Upstart и Monit с помощью мониторинга

http://howtonode.org/deploying-node-upstart-monit

Узел кластера Запуск одного процесса на ядро ​​

http://nodejs.org/docs/latest/api/cluster.html

[1137 Обратный прокси-сервер

https://github.com/nodejitsu/node-http-proxy

https://github.com/nodejitsu/node -http-proxy / Issues / 232

http://blog.nodejitsu.com/http-proxy-middlewares

https: / /github.com/nodejitsu/node-http-proxy/issues/168#issuecomment-3289492

http://blog.argteam.com/coding/hardening-node-js- для-прод ction-part-2-using-nginx-to-избежать-node-js-load /

Сценарий установки

https://github.com/bryanmacfarlane / svcinstall

Сценарий выхода из оболочки на основе кода выхода процесса

Сайт публикации

Использование git для публикации на веб-сайте

34
ответ дан Community 29 September 2012 в 12:59
поделиться

ИМХО самый большой недостаток настройки вашего собственного стека заключается в том, что вам нужно управлять такими вещами, как запуск Node.js forever, запускать его как демон, переносить его за обратный прокси-сервер, такой как Nginx, и т. Д. ... Самое замечательное в Node.js - сделать запуск веб-сервера однострочным - это один из его самых больших недостатков, когда речь идет о готовых к работе системах.

Кроме того, у вас есть все вопросы управления, обновления и защиты вашего сервера самостоятельно.

С хостерами все намного проще: обычно это git push и все. Масштабирование? Легко. Репликация? Легко. ...? Легко. Все в несколько кликов.

Недостаток хостеров в том, что вы не можете настроить среду. Хорошо, вы, вероятно, можете выбрать, какую версию Node.js и / или npm запускать, но это все. Вы не можете контролировать, какое стороннее программное обеспечение установлено. У вас нет контроля над ОС. Вы не можете контролировать расположение серверов. И так далее ...

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

Таким образом, в основном вопрос относительно Node.js такой же, как и с технологиями друг друга: это преимущество против индивидуализма, ценообразования, масштабируемости, надежности, знаний, ...

Лично я решил пойти с хостером: время и усилия, которые я экономлю, легко превосходят недостатки. Имейте в виду: лично для меня.

На этот вопрос нужно ответить индивидуально.

14
ответ дан Golo Roden 29 September 2012 в 12:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: