Я только начал изучать Ruby на рельсах, и мне было интересно, что такое Heroku? Я знаю, что это облако, которое помогает нам избежать использования серверов? Когда мы на самом деле используем это?
Я только начал изучать Ruby на рельсах, и мне было интересно, что такое 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 делает это проще.
Это его задача - упростить администрирование и сэкономить ваше время. Но я не уверен, так как я только начинаю с этого!
Хорошее представление о том, как это работает в официальной документации:
По 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, похоже, просто упростит процесс использования облачного провайдера, но за определенную плату.