Что именно Heroku?


135

Я только начал изучать Ruby на рельсах, и мне было интересно, что такое Heroku? Я знаю, что это облако, которое помогает нам избежать использования серверов? Когда мы на самом деле используем это?


7
Проще говоря: Heroku позволяет развертывать веб-приложения, помещая ваш код в репозиторий. Heroku обрабатывает все для вас.
Бобби

Могу ли я использовать его для бэкэнда мобильного приложения? это поддерживает mongoDb?
vikramvi

Ответы:


198

Heroku - это облачная платформа как услуга. Это означает, что вам не нужно беспокоиться об инфраструктуре; Вы просто сосредоточены на своем приложении.

В дополнение к тому, что сказал Джонни , есть несколько особенностей Heroku:

  • Мгновенное развертывание с помощью Git push - сборка вашего приложения выполняется Heroku с использованием ваших сценариев сборки
  • Множество дополнительных ресурсов (приложений, баз данных и т. Д.)
  • Масштабирование процессов - независимое масштабирование для каждого компонента вашего приложения без ущерба для функциональности и производительности.
  • Изоляция - каждый процесс (он же dyno) полностью изолирован друг от друга
  • Полная регистрация и видимость - легкий доступ ко всем выводам регистрации из каждого компонента вашего приложения и каждого процесса (dyno)

Heroku предоставляет очень хорошо написанный учебник, который позволяет начать в считанные минуты. Также они предоставляют первые 750 часов вычислений бесплатно, что означает, что вы можете иметь один процесс (он же Dyno) бесплатно. Также производительность очень хорошая, например, простое веб-приложение, написанное в node.js, может обрабатывать около 60 - 70 запросов в секунду.

Конкуренты Heroku:


69
+1 за упоминание о том, что есть и другие сервисы в качестве альтернативы.
Карл-Йохан Шегрен

6
Я просто хочу знать, в чем разница между запуском приложения rails на веб-сервере localhost / apache и запуском приложения на heroku?
neo1691

23
Для меня просто чтение списка участников дало мне понимание того, что может быть Heroku.
поэт

35
Список участников немного вводит в заблуждение. Большинство «конкурентов» в списке предлагают облачную инфраструктуру как услугу, тогда как Heroku продает управление облачной инфраструктурой как услугу. Heroku сама является клиентом AWS; когда вы нажимаете на Heroku, ваше приложение работает на экземплярах AWS. Сказать, что они конкуренты, все равно что сказать, что организатор свадеб конкурирует с банкетными залами.
Адельмар


24

Это облачное масштабируемое серверное решение, которое позволяет вам легко управлять развертыванием ваших Rails (или других) приложений, если вы подписаны на ряд соглашений (например, Postgres в качестве базы данных, без записи в файловую систему).

Таким образом, вы можете легко масштабировать по мере роста вашего приложения, улучшая вашу базу данных и увеличивая количество dyno (экземпляров Rails) и рабочих.

Это не поможет вам избежать использования серверов, вам понадобится некоторое понимание управления сервером, чтобы эффективно отлаживать проблемы с комбинацией вашей платформы / приложения. Однако, несмотря на то, что это сравнительно дорого (то есть в отдельности по сравнению с арендой слайса на Slicehost или чем-то еще), существует бесплатный аккаунт, и это грубый компромисс между тем, насколько выгоднее заплатить кому-то, чтобы построить собственное решение, или взять дополнительные расходы.


8

Heroku в основном предоставляет веб-пространство для загрузки вашего приложения

Если вы загружаете приложение Rails, вы можете следовать этому руководству https://github.com/mrkushjain/herokuapp


4
беззастенчиво рекламируя ваш Github сейчас мы?

3

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

Это не полезно для обычного веб-приложения на PHP, потому что есть множество веб-хостингов с ftp для простого веба без масштабируемости, но если вам нужно что-то большее, Heroku или что-то подобное, то вам нужно.

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

Это его задача - упростить администрирование и сэкономить ваше время. Но я не уверен, так как я только начинаю с этого!

Хорошее представление о том, как это работает в официальной документации:

https://devcenter.heroku.com/articles/how-heroku-works


0

По DZone: https://dzone.com/articles/heroku-or-amazon-web-services-which-is-best-for-your-startup

Heroku - это продукт «Платформа как услуга» (PaaS), основанный на AWS, который сильно отличается от Elastic Compute Cloud. Очень важно различать решения «инфраструктура как услуга» и «платформа как услуга», поскольку мы рассматриваем возможность развертывания и поддержки нашего приложения с использованием этих двух решений.

Heroku намного проще в использовании, чем AWS Elastic Compute Cloud. Возможно, это даже слишком просто. Но есть веская причина для этой простоты. Платформа Heroku предоставляет нам готовую среду выполнения и серверы приложений. Кроме того, мы выигрываем от полной интеграции с различными инструментами разработки, предустановленной операционной системой и резервными серверами.

Поэтому в Heroku нам не нужно думать об управлении инфраструктурой, в отличие от AWS EC2. Нам нужно только выбрать план подписки и изменить наш план, когда это необходимо.

Эта статья хорошо объясняет различия между Heroku и AWS, но похоже, что вы можете выбрать других провайдеров Iaas (инфраструктуры), кроме AWS. Таким образом, в конечном итоге Heroku, похоже, просто упростит процесс использования облачного провайдера, но за определенную плату.

введите описание изображения здесь

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.