Я только начал изучать Ruby на рельсах, и мне было интересно, что такое Heroku? Я знаю, что это облако, которое помогает нам избежать использования серверов? Когда мы на самом деле используем это?
Проще говоря: Heroku позволяет развертывать веб-приложения, помещая ваш код в репозиторий. Heroku обрабатывает все для вас.
Бобби
Могу ли я использовать его для бэкэнда мобильного приложения? это поддерживает mongoDb?
vikramvi
Ответы:
198
Heroku - это облачная платформа как услуга. Это означает, что вам не нужно беспокоиться об инфраструктуре; Вы просто сосредоточены на своем приложении.
В дополнение к тому, что сказал Джонни , есть несколько особенностей Heroku:
Мгновенное развертывание с помощью Git push - сборка вашего приложения выполняется Heroku с использованием ваших сценариев сборки
Множество дополнительных ресурсов (приложений, баз данных и т. Д.)
Масштабирование процессов - независимое масштабирование для каждого компонента вашего приложения без ущерба для функциональности и производительности.
Изоляция - каждый процесс (он же dyno) полностью изолирован друг от друга
Полная регистрация и видимость - легкий доступ ко всем выводам регистрации из каждого компонента вашего приложения и каждого процесса (dyno)
Heroku предоставляет очень хорошо написанный учебник, который позволяет начать в считанные минуты. Также они предоставляют первые 750 часов вычислений бесплатно, что означает, что вы можете иметь один процесс (он же Dyno) бесплатно. Также производительность очень хорошая, например, простое веб-приложение, написанное в node.js, может обрабатывать около 60 - 70 запросов в секунду.
+1 за упоминание о том, что есть и другие сервисы в качестве альтернативы.
Карл-Йохан Шегрен
6
Я просто хочу знать, в чем разница между запуском приложения rails на веб-сервере localhost / apache и запуском приложения на heroku?
neo1691
23
Для меня просто чтение списка участников дало мне понимание того, что может быть Heroku.
поэт
35
Список участников немного вводит в заблуждение. Большинство «конкурентов» в списке предлагают облачную инфраструктуру как услугу, тогда как Heroku продает управление облачной инфраструктурой как услугу. Heroku сама является клиентом AWS; когда вы нажимаете на Heroku, ваше приложение работает на экземплярах AWS. Сказать, что они конкуренты, все равно что сказать, что организатор свадеб конкурирует с банкетными залами.
Это облачное масштабируемое серверное решение, которое позволяет вам легко управлять развертыванием ваших Rails (или других) приложений, если вы подписаны на ряд соглашений (например, Postgres в качестве базы данных, без записи в файловую систему).
Таким образом, вы можете легко масштабировать по мере роста вашего приложения, улучшая вашу базу данных и увеличивая количество dyno (экземпляров Rails) и рабочих.
Это не поможет вам избежать использования серверов, вам понадобится некоторое понимание управления сервером, чтобы эффективно отлаживать проблемы с комбинацией вашей платформы / приложения. Однако, несмотря на то, что это сравнительно дорого (то есть в отдельности по сравнению с арендой слайса на Slicehost или чем-то еще), существует бесплатный аккаунт, и это грубый компромисс между тем, насколько выгоднее заплатить кому-то, чтобы построить собственное решение, или взять дополнительные расходы.
На мой взгляд, это масштабируемый администрируемый веб-хостинг, готовый к росту в любом смысле, поэтому вам не нужно об этом беспокоиться.
Это не полезно для обычного веб-приложения на PHP, потому что есть множество веб-хостингов с ftp для простого веба без масштабируемости, но если вам нужно что-то большее, Heroku или что-то подобное, то вам нужно.
Он предоставляется как сервис через инструмент командной строки, поэтому вы можете писать скрипты для автоматизации ваших развертываний. В любом случае, он очень похож на другие веб-хостинги с включенным Git, но Heroku делает это проще.
Это его задача - упростить администрирование и сэкономить ваше время. Но я не уверен, так как я только начинаю с этого!
Хорошее представление о том, как это работает в официальной документации:
Heroku - это продукт «Платформа как услуга» (PaaS), основанный на AWS, который сильно отличается от Elastic Compute Cloud. Очень важно различать решения «инфраструктура как услуга» и «платформа как услуга», поскольку мы рассматриваем возможность развертывания и поддержки нашего приложения с использованием этих двух решений.
Heroku намного проще в использовании, чем AWS Elastic Compute Cloud. Возможно, это даже слишком просто. Но есть веская причина для этой простоты. Платформа Heroku предоставляет нам готовую среду выполнения и серверы приложений. Кроме того, мы выигрываем от полной интеграции с различными инструментами разработки, предустановленной операционной системой и резервными серверами.
Поэтому в Heroku нам не нужно думать об управлении инфраструктурой, в отличие от AWS EC2. Нам нужно только выбрать план подписки и изменить наш план, когда это необходимо.
Эта статья хорошо объясняет различия между Heroku и AWS, но похоже, что вы можете выбрать других провайдеров Iaas (инфраструктуры), кроме AWS. Таким образом, в конечном итоге Heroku, похоже, просто упростит процесс использования облачного провайдера, но за определенную плату.
Ответы:
Heroku - это облачная платформа как услуга. Это означает, что вам не нужно беспокоиться об инфраструктуре; Вы просто сосредоточены на своем приложении.
В дополнение к тому, что сказал Джонни , есть несколько особенностей Heroku:
Heroku предоставляет очень хорошо написанный учебник, который позволяет начать в считанные минуты. Также они предоставляют первые 750 часов вычислений бесплатно, что означает, что вы можете иметь один процесс (он же Dyno) бесплатно. Также производительность очень хорошая, например, простое веб-приложение, написанное в node.js, может обрабатывать около 60 - 70 запросов в секунду.
Конкуренты Heroku:
источник
Это облачное масштабируемое серверное решение, которое позволяет вам легко управлять развертыванием ваших Rails (или других) приложений, если вы подписаны на ряд соглашений (например, Postgres в качестве базы данных, без записи в файловую систему).
Таким образом, вы можете легко масштабировать по мере роста вашего приложения, улучшая вашу базу данных и увеличивая количество dyno (экземпляров Rails) и рабочих.
Это не поможет вам избежать использования серверов, вам понадобится некоторое понимание управления сервером, чтобы эффективно отлаживать проблемы с комбинацией вашей платформы / приложения. Однако, несмотря на то, что это сравнительно дорого (то есть в отдельности по сравнению с арендой слайса на Slicehost или чем-то еще), существует бесплатный аккаунт, и это грубый компромисс между тем, насколько выгоднее заплатить кому-то, чтобы построить собственное решение, или взять дополнительные расходы.
источник
Heroku в основном предоставляет веб-пространство для загрузки вашего приложения
Если вы загружаете приложение Rails, вы можете следовать этому руководству https://github.com/mrkushjain/herokuapp
источник
На мой взгляд, это масштабируемый администрируемый веб-хостинг, готовый к росту в любом смысле, поэтому вам не нужно об этом беспокоиться.
Это не полезно для обычного веб-приложения на PHP, потому что есть множество веб-хостингов с ftp для простого веба без масштабируемости, но если вам нужно что-то большее, Heroku или что-то подобное, то вам нужно.
Он предоставляется как сервис через инструмент командной строки, поэтому вы можете писать скрипты для автоматизации ваших развертываний. В любом случае, он очень похож на другие веб-хостинги с включенным Git, но Heroku делает это проще.
Это его задача - упростить администрирование и сэкономить ваше время. Но я не уверен, так как я только начинаю с этого!
Хорошее представление о том, как это работает в официальной документации:
https://devcenter.heroku.com/articles/how-heroku-works
источник
По DZone: https://dzone.com/articles/heroku-or-amazon-web-services-which-is-best-for-your-startup
Эта статья хорошо объясняет различия между Heroku и AWS, но похоже, что вы можете выбрать других провайдеров Iaas (инфраструктуры), кроме AWS. Таким образом, в конечном итоге Heroku, похоже, просто упростит процесс использования облачного провайдера, но за определенную плату.
источник