What exactly is Heroku?

后端 未结 5 1220
粉色の甜心
粉色の甜心 2021-01-29 19:02

I just started learning Ruby on rails and I was wondering what Heroku really is? I know that its a cloud that helps us to avoid using servers? When do we actually use it?

相关标签:
5条回答
  • 2021-01-29 19:14

    Heroku Basically provides with webspace to upload your app

    If you are uploading a Rails app then you can follow this tutorial https://github.com/mrkushjain/herokuapp

    0 讨论(0)
  • 2021-01-29 19:21

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

    Heroku is a Platform as a Service (PaaS) product based on AWS, and is vastly different from Elastic Compute Cloud. It’s very important to differentiate ‘Infrastructure as a Service’ and ‘Platform as a Service’ solutions as we consider deploying and supporting our application using these two solutions.

    Heroku is way simpler to use than AWS Elastic Compute Cloud. Perhaps it’s even too simple. But there’s a good reason for this simplicity. The Heroku platform equips us with a ready runtime environment and application servers. Plus, we benefit from seamless integration with various development instruments, a pre-installed operating system, and redundant servers.

    Therefore, with Heroku, we don’t need to think about infrastructure management, unlike with AWS EC2. We only need to choose a subscription plan and change our plan when necessary.

    That article does a good job explaining the differences between Heroku and AWS but it looks like you can choose other iaas (infrastructure) providers other than AWS. So ultimately Heroku seems to just simplify the process of using a cloud provider but at a cost.

    0 讨论(0)
  • 2021-01-29 19:23

    It's a cloud-based, scalable server solution that allows you to easily manage the deployment of your Rails (or other) applications provided you subscribe to a number of conventions (e.g. Postgres as the database, no writing to the filesystem).

    Thus you can easily scale as your application grows by bettering your database and increasing the number of dynos (Rails instances) and workers.

    It doesn't help you avoid using servers, you will need some understanding of server management to effectively debug problems with your platform/app combination. However, while it is comparatively expensive (i.e. per instance when compared to renting a slice on Slicehost or something), there is a free account and it's a rough trade off between whether it's more cost effective to pay someone to build your own solution or take the extra expense.

    0 讨论(0)
  • 2021-01-29 19:24

    Heroku is a cloud platform as a service. That means you do not have to worry about infrastructure; you just focus on your application.

    In addition to what Jonny said, there are a few features of Heroku:

    • Instant Deployment with Git push - build of your application is performed by Heroku using your build scripts
    • Plenty of Add-on resources (applications, databases etc.)
    • Processes scaling - independent scaling for each component of your app without affecting functionality and performance
    • Isolation - each process (aka dyno) is completely isolated from each other
    • Full Logging and Visibility - easy access to all logging output from every component of your app and each process (dyno)

    Heroku provides very well written tutorial which allows you to start in minutes. Also they provide first 750 computation hours free of charge which means you can have one processes (aka Dyno) at no cost. Also performance is very good e.g. simple web application written in node.js can handle around 60 - 70 requests per second.

    Heroku competitors are:

    • OpenShift by Red Hat
    • Windows Azure
    • Amazon Web Services
    • Google App Engine
    • VMware
    • HP Cloud Services
    • Force.com
    0 讨论(0)
  • 2021-01-29 19:30

    As I see it, it is a scalable administrated web hosting service, ready to grow in any sense so you don't have to worry about it.

    It's not useful for a normal PHP web application, because there are plenty of web hosting services with ftp over there for a simple web without scalability needs, but if you need something bigger Heroku or something similar is what you need.

    It is exposed as a service via a command line tool so you can write scripts to automate your deployments. Anyway it is pretty similar to other web hosting services with Git enabled, but Heroku makes it simpler.

    That's its thing, to make the administration stuff simpler to you, so it saves you time. But I'm not sure, as I'm just starting with it!

    A nice introduction of how it works in the official documentation is:

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

    0 讨论(0)
提交回复
热议问题