Alternatives to Cloud Functions for Firebase logo

Alternatives to Cloud Functions for Firebase

Firebase, Google Cloud Functions, NGINX, Apache HTTP Server, and Amazon EC2 are the most popular alternatives and competitors to Cloud Functions for Firebase.
476
397
+ 1
6

What is Cloud Functions for Firebase and what are its top alternatives?

Cloud Functions for Firebase lets you create functions that are triggered by Firebase products, such as changes to data in the Realtime Database, uploads to Cloud Storage, new user sign ups via Authentication, and conversion events in Analytics.
Cloud Functions for Firebase is a tool in the Serverless / Task Processing category of a tech stack.

Top Alternatives to Cloud Functions for Firebase

  • Firebase
    Firebase

    Firebase is a cloud service designed to power real-time, collaborative applications. Simply add the Firebase library to your application to gain access to a shared data structure; any changes you make to that data are automatically synchronized with the Firebase cloud and with other clients within milliseconds. ...

  • Google Cloud Functions
    Google Cloud Functions

    Construct applications from bite-sized business logic billed to the nearest 100 milliseconds, only while your code is running ...

  • NGINX
    NGINX

    nginx [engine x] is an HTTP and reverse proxy server, as well as a mail proxy server, written by Igor Sysoev. According to Netcraft nginx served or proxied 30.46% of the top million busiest sites in Jan 2018. ...

  • Apache HTTP Server
    Apache HTTP Server

    The Apache HTTP Server is a powerful and flexible HTTP/1.1 compliant web server. Originally designed as a replacement for the NCSA HTTP Server, it has grown to be the most popular web server on the Internet. ...

  • Amazon EC2
    Amazon EC2

    It is a web service that provides resizable compute capacity in the cloud. It is designed to make web-scale computing easier for developers. ...

  • Amazon Web Services (AWS)
    Amazon Web Services (AWS)

    It is a comprehensive and broadly adopted cloud platform, offering over 200 fully featured services from data centers globally. ...

  • Google Cloud Platform
    Google Cloud Platform

    It helps you build what's next with secure infrastructure, developer tools, APIs, data analytics and machine learning. It is a suite of cloud computing services that runs on the same infrastructure that Google uses internally for its end-user products, such as Google Search and YouTube. ...

  • Heroku
    Heroku

    Heroku is a cloud application platform – a new way of building and deploying web apps. Heroku lets app developers spend 100% of their time on their application code, not managing servers, deployment, ongoing operations, or scaling. ...

Cloud Functions for Firebase alternatives & related posts

Firebase logo

Firebase

41.8K
2K
The Realtime App Platform
41.8K
2K
PROS OF FIREBASE
  • 371
    Realtime backend made easy
  • 270
    Fast and responsive
  • 242
    Easy setup
  • 215
    Real-time
  • 191
    JSON
  • 134
    Free
  • 128
    Backed by google
  • 83
    Angular adaptor
  • 68
    Reliable
  • 36
    Great customer support
  • 32
    Great documentation
  • 25
    Real-time synchronization
  • 21
    Mobile friendly
  • 19
    Rapid prototyping
  • 14
    Great security
  • 12
    Automatic scaling
  • 11
    Freakingly awesome
  • 8
    Super fast development
  • 8
    Angularfire is an amazing addition!
  • 8
    Chat
  • 6
    Firebase hosting
  • 6
    Built in user auth/oauth
  • 6
    Awesome next-gen backend
  • 6
    Ios adaptor
  • 4
    Speed of light
  • 4
    Very easy to use
  • 3
    Great
  • 3
    It's made development super fast
  • 3
    Brilliant for startups
  • 2
    Free hosting
  • 2
    Cloud functions
  • 2
    JS Offline and Sync suport
  • 2
    Low battery consumption
  • 2
    .net
  • 2
    The concurrent updates create a great experience
  • 2
    Push notification
  • 2
    I can quickly create static web apps with no backend
  • 2
    Great all-round functionality
  • 2
    Free authentication solution
  • 1
    Easy Reactjs integration
  • 1
    Google's support
  • 1
    Free SSL
  • 1
    CDN & cache out of the box
  • 1
    Easy to use
  • 1
    Large
  • 1
    Faster workflow
  • 1
    Serverless
  • 1
    Good Free Limits
  • 1
    Simple and easy
CONS OF FIREBASE
  • 31
    Can become expensive
  • 16
    No open source, you depend on external company
  • 15
    Scalability is not infinite
  • 9
    Not Flexible Enough
  • 7
    Cant filter queries
  • 3
    Very unstable server
  • 3
    No Relational Data
  • 2
    Too many errors
  • 2
    No offline sync

related Firebase posts

Stephen Gheysens
Lead Solutions Engineer at Inscribe · | 14 upvotes · 1.9M views

Hi Otensia! I'd definitely recommend using the skills you've already got and building with JavaScript is a smart way to go these days. Most platform services have JavaScript/Node SDKs or NPM packages, many serverless platforms support Node in case you need to write any backend logic, and JavaScript is incredibly popular - meaning it will be easy to hire for, should you ever need to.

My advice would be "don't reinvent the wheel". If you already have a skill set that will work well to solve the problem at hand, and you don't need it for any other projects, don't spend the time jumping into a new language. If you're looking for an excuse to learn something new, it would be better to invest that time in learning a new platform/tool that compliments your knowledge of JavaScript. For this project, I might recommend using Netlify, Vercel, or Google Firebase to quickly and easily deploy your web app. If you need to add user authentication, there are great examples out there for Firebase Authentication, Auth0, or even Magic (a newcomer on the Auth scene, but very user friendly). All of these services work very well with a JavaScript-based application.

See more
Eugene Cheah

For inboxkitten.com, an opensource disposable email service;

We migrated our serverless workload from Cloud Functions for Firebase to CloudFlare workers, taking advantage of the lower cost and faster-performing edge computing of Cloudflare network. Made possible due to our extremely low CPU and RAM overhead of our serverless functions.

If I were to summarize the limitation of Cloudflare (as oppose to firebase/gcp functions), it would be ...

  1. <5ms CPU time limit
  2. Incompatible with express.js
  3. one script limitation per domain

Limitations our workload is able to conform with (YMMV)

For hosting of static files, we migrated from Firebase to CommonsHost

More details on the trade-off in between both serverless providers is in the article

See more
Google Cloud Functions logo

Google Cloud Functions

481
25
A serverless environment to build and connect cloud services
481
25
PROS OF GOOGLE CLOUD FUNCTIONS
  • 7
    Serverless Applications
  • 5
    Its not AWS
  • 4
    Simplicity
  • 3
    Free Tiers and Trainging
  • 2
    Simple config with GitLab CI/CD
  • 1
    Built-in Webhook trigger
  • 1
    Typescript Support
  • 1
    Blaze, pay as you go
  • 1
    Customer Support
CONS OF GOOGLE CLOUD FUNCTIONS
  • 1
    Node.js only
  • 0
    Typescript Support
  • 0
    Blaze, pay as you go

related Google Cloud Functions posts

Kestas Barzdaitis
Entrepreneur & Engineer · | 16 upvotes · 786.1K views

CodeFactor being a #SAAS product, our goal was to run on a cloud-native infrastructure since day one. We wanted to stay product focused, rather than having to work on the infrastructure that supports the application. We needed a cloud-hosting provider that would be reliable, economical and most efficient for our product.

CodeFactor.io aims to provide an automated and frictionless code review service for software developers. That requires agility, instant provisioning, autoscaling, security, availability and compliance management features. We looked at the top three #IAAS providers that take up the majority of market share: Amazon's Amazon EC2 , Microsoft's Microsoft Azure, and Google Compute Engine.

AWS has been available since 2006 and has developed the most extensive services ant tools variety at a massive scale. Azure and GCP are about half the AWS age, but also satisfied our technical requirements.

It is worth noting that even though all three providers support Docker containerization services, GCP has the most robust offering due to their investments in Kubernetes. Also, if you are a Microsoft shop, and develop in .NET - Visual Studio Azure shines at integration there and all your existing .NET code works seamlessly on Azure. All three providers have serverless computing offerings (AWS Lambda, Azure Functions, and Google Cloud Functions). Additionally, all three providers have machine learning tools, but GCP appears to be the most developer-friendly, intuitive and complete when it comes to #Machinelearning and #AI.

The prices between providers are competitive across the board. For our requirements, AWS would have been the most expensive, GCP the least expensive and Azure was in the middle. Plus, if you #Autoscale frequently with large deltas, note that Azure and GCP have per minute billing, where AWS bills you per hour. We also applied for the #Startup programs with all three providers, and this is where Azure shined. While AWS and GCP for startups would have covered us for about one year of infrastructure costs, Azure Sponsorship would cover about two years of CodeFactor's hosting costs. Moreover, Azure Team was terrific - I felt that they wanted to work with us where for AWS and GCP we were just another startup.

In summary, we were leaning towards GCP. GCP's advantages in containerization, automation toolset, #Devops mindset, and pricing were the driving factors there. Nevertheless, we could not say no to Azure's financial incentives and a strong sense of partnership and support throughout the process.

Bottom line is, IAAS offerings with AWS, Azure, and GCP are evolving fast. At CodeFactor, we aim to be platform agnostic where it is practical and retain the flexibility to cherry-pick the best products across providers.

See more
Tim Nolet

AWS Lambda Serverless Amazon CloudWatch Azure Functions Google Cloud Functions Node.js

In the last year or so, I moved all Checkly monitoring workloads to AWS Lambda. Here are some stats:

  • We run three core functions in all AWS regions. They handle API checks, browser checks and setup / teardown scripts. Check our docs to find out what that means.
  • All functions are hooked up to SNS topics but can also be triggered directly through AWS SDK calls.
  • The busiest function is a plumbing function that forwards data to our database. It is invoked anywhere between 7000 and 10.000 times per hour with an average duration of about 179 ms.
  • We run separate dev and test versions of each function in each region.

Moving all this to AWS Lambda took some work and considerations. The blog post linked below goes into the following topics:

  • Why Lambda is an almost perfect match for SaaS. Especially when you're small.
  • Why I don't use a "big" framework around it.
  • Why distributed background jobs triggered by queues are Lambda's raison d'être.
  • Why monitoring & logging is still an issue.

https://blog.checklyhq.com/how-i-made-aws-lambda-work-for-my-saas/

See more
NGINX logo

NGINX

114.3K
5.5K
A high performance free open source web server powering busiest sites on the Internet.
114.3K
5.5K
PROS OF NGINX
  • 1.5K
    High-performance http server
  • 894
    Performance
  • 730
    Easy to configure
  • 607
    Open source
  • 530
    Load balancer
  • 289
    Free
  • 288
    Scalability
  • 226
    Web server
  • 175
    Simplicity
  • 136
    Easy setup
  • 30
    Content caching
  • 21
    Web Accelerator
  • 15
    Capability
  • 14
    Fast
  • 12
    High-latency
  • 12
    Predictability
  • 8
    Reverse Proxy
  • 7
    Supports http/2
  • 7
    The best of them
  • 5
    Great Community
  • 5
    Lots of Modules
  • 5
    Enterprise version
  • 4
    High perfomance proxy server
  • 3
    Embedded Lua scripting
  • 3
    Streaming media delivery
  • 3
    Streaming media
  • 3
    Reversy Proxy
  • 2
    Blash
  • 2
    GRPC-Web
  • 2
    Lightweight
  • 2
    Fast and easy to set up
  • 2
    Slim
  • 2
    saltstack
  • 1
    Virtual hosting
  • 1
    Narrow focus. Easy to configure. Fast
  • 1
    Along with Redis Cache its the Most superior
  • 1
    Ingress controller
CONS OF NGINX
  • 10
    Advanced features require subscription

related NGINX posts

Simon Reymann
Senior Fullstack Developer at QUANTUSflow Software GmbH · | 30 upvotes · 12.4M views

Our whole DevOps stack consists of the following tools:

  • GitHub (incl. GitHub Pages/Markdown for Documentation, GettingStarted and HowTo's) for collaborative review and code management tool
  • Respectively Git as revision control system
  • SourceTree as Git GUI
  • Visual Studio Code as IDE
  • CircleCI for continuous integration (automatize development process)
  • Prettier / TSLint / ESLint as code linter
  • SonarQube as quality gate
  • Docker as container management (incl. Docker Compose for multi-container application management)
  • VirtualBox for operating system simulation tests
  • Kubernetes as cluster management for docker containers
  • Heroku for deploying in test environments
  • nginx as web server (preferably used as facade server in production environment)
  • SSLMate (using OpenSSL) for certificate management
  • Amazon EC2 (incl. Amazon S3) for deploying in stage (production-like) and production environments
  • PostgreSQL as preferred database system
  • Redis as preferred in-memory database/store (great for caching)

The main reason we have chosen Kubernetes over Docker Swarm is related to the following artifacts:

  • Key features: Easy and flexible installation, Clear dashboard, Great scaling operations, Monitoring is an integral part, Great load balancing concepts, Monitors the condition and ensures compensation in the event of failure.
  • Applications: An application can be deployed using a combination of pods, deployments, and services (or micro-services).
  • Functionality: Kubernetes as a complex installation and setup process, but it not as limited as Docker Swarm.
  • Monitoring: It supports multiple versions of logging and monitoring when the services are deployed within the cluster (Elasticsearch/Kibana (ELK), Heapster/Grafana, Sysdig cloud integration).
  • Scalability: All-in-one framework for distributed systems.
  • Other Benefits: Kubernetes is backed by the Cloud Native Computing Foundation (CNCF), huge community among container orchestration tools, it is an open source and modular tool that works with any OS.
See more
John-Daniel Trask
Co-founder & CEO at Raygun · | 19 upvotes · 517.8K views

We chose AWS because, at the time, it was really the only cloud provider to choose from.

We tend to use their basic building blocks (EC2, ELB, Amazon S3, Amazon RDS) rather than vendor specific components like databases and queuing. We deliberately decided to do this to ensure we could provide multi-cloud support or potentially move to another cloud provider if the offering was better for our customers.

We’ve utilized c3.large nodes for both the Node.js deployment and then for the .NET Core deployment. Both sit as backends behind an nginx instance and are managed using scaling groups in Amazon EC2 sitting behind a standard AWS Elastic Load Balancing (ELB).

While we’re satisfied with AWS, we do review our decision each year and have looked at Azure and Google Cloud offerings.

#CloudHosting #WebServers #CloudStorage #LoadBalancerReverseProxy

See more
Apache HTTP Server logo

Apache HTTP Server

64.8K
1.4K
Open-source HTTP server for modern operating systems including UNIX and Windows
64.8K
1.4K
PROS OF APACHE HTTP SERVER
  • 479
    Web server
  • 305
    Most widely-used web server
  • 217
    Virtual hosting
  • 148
    Fast
  • 138
    Ssl support
  • 44
    Since 1996
  • 28
    Asynchronous
  • 5
    Robust
  • 4
    Proven over many years
  • 2
    Mature
  • 2
    Perfomance
  • 1
    Perfect Support
  • 0
    Many available modules
  • 0
    Many available modules
CONS OF APACHE HTTP SERVER
  • 4
    Hard to set up

related Apache HTTP Server posts

Nick Rockwell
SVP, Engineering at Fastly · | 46 upvotes · 4.4M views

When I joined NYT there was already broad dissatisfaction with the LAMP (Linux Apache HTTP Server MySQL PHP) Stack and the front end framework, in particular. So, I wasn't passing judgment on it. I mean, LAMP's fine, you can do good work in LAMP. It's a little dated at this point, but it's not ... I didn't want to rip it out for its own sake, but everyone else was like, "We don't like this, it's really inflexible." And I remember from being outside the company when that was called MIT FIVE when it had launched. And been observing it from the outside, and I was like, you guys took so long to do that and you did it so carefully, and yet you're not happy with your decisions. Why is that? That was more the impetus. If we're going to do this again, how are we going to do it in a way that we're gonna get a better result?

So we're moving quickly away from LAMP, I would say. So, right now, the new front end is React based and using Apollo. And we've been in a long, protracted, gradual rollout of the core experiences.

React is now talking to GraphQL as a primary API. There's a Node.js back end, to the front end, which is mainly for server-side rendering, as well.

Behind there, the main repository for the GraphQL server is a big table repository, that we call Bodega because it's a convenience store. And that reads off of a Kafka pipeline.

See more
Tim Abbott
Shared insights
on
NGINXNGINXApache HTTP ServerApache HTTP Server
at

We've been happy with nginx as part of our stack. As an open source web application that folks install on-premise, the configuration system for the webserver is pretty important to us. I have a few complaints (e.g. the configuration syntax for conditionals is a pain), but overall we've found it pretty easy to build a configurable set of options (see link) for how to run Zulip on nginx, both directly and with a remote reverse proxy in front of it, with a minimum of code duplication.

Certainly I've been a lot happier with it than I was working with Apache HTTP Server in past projects.

See more
Amazon EC2 logo

Amazon EC2

48.7K
2.5K
Scalable, pay-as-you-go compute capacity in the cloud
48.7K
2.5K
PROS OF AMAZON EC2
  • 647
    Quick and reliable cloud servers
  • 515
    Scalability
  • 393
    Easy management
  • 277
    Low cost
  • 271
    Auto-scaling
  • 89
    Market leader
  • 80
    Backed by amazon
  • 79
    Reliable
  • 67
    Free tier
  • 58
    Easy management, scalability
  • 13
    Flexible
  • 10
    Easy to Start
  • 9
    Widely used
  • 9
    Web-scale
  • 9
    Elastic
  • 7
    Node.js API
  • 5
    Industry Standard
  • 4
    Lots of configuration options
  • 2
    GPU instances
  • 1
    Simpler to understand and learn
  • 1
    Extremely simple to use
  • 1
    Amazing for individuals
  • 1
    All the Open Source CLI tools you could want.
CONS OF AMAZON EC2
  • 14
    Ui could use a lot of work
  • 6
    High learning curve when compared to PaaS
  • 3
    Extremely poor CPU performance

related Amazon EC2 posts

Ashish Singh
Tech Lead, Big Data Platform at Pinterest · | 38 upvotes · 3.7M views

To provide employees with the critical need of interactive querying, we’ve worked with Presto, an open-source distributed SQL query engine, over the years. Operating Presto at Pinterest’s scale has involved resolving quite a few challenges like, supporting deeply nested and huge thrift schemas, slow/ bad worker detection and remediation, auto-scaling cluster, graceful cluster shutdown and impersonation support for ldap authenticator.

Our infrastructure is built on top of Amazon EC2 and we leverage Amazon S3 for storing our data. This separates compute and storage layers, and allows multiple compute clusters to share the S3 data.

We have hundreds of petabytes of data and tens of thousands of Apache Hive tables. Our Presto clusters are comprised of a fleet of 450 r4.8xl EC2 instances. Presto clusters together have over 100 TBs of memory and 14K vcpu cores. Within Pinterest, we have close to more than 1,000 monthly active users (out of total 1,600+ Pinterest employees) using Presto, who run about 400K queries on these clusters per month.

Each query submitted to Presto cluster is logged to a Kafka topic via Singer. Singer is a logging agent built at Pinterest and we talked about it in a previous post. Each query is logged when it is submitted and when it finishes. When a Presto cluster crashes, we will have query submitted events without corresponding query finished events. These events enable us to capture the effect of cluster crashes over time.

Each Presto cluster at Pinterest has workers on a mix of dedicated AWS EC2 instances and Kubernetes pods. Kubernetes platform provides us with the capability to add and remove workers from a Presto cluster very quickly. The best-case latency on bringing up a new worker on Kubernetes is less than a minute. However, when the Kubernetes cluster itself is out of resources and needs to scale up, it can take up to ten minutes. Some other advantages of deploying on Kubernetes platform is that our Presto deployment becomes agnostic of cloud vendor, instance types, OS, etc.

#BigData #AWS #DataScience #DataEngineering

See more
Simon Reymann
Senior Fullstack Developer at QUANTUSflow Software GmbH · | 30 upvotes · 12.4M views

Our whole DevOps stack consists of the following tools:

  • GitHub (incl. GitHub Pages/Markdown for Documentation, GettingStarted and HowTo's) for collaborative review and code management tool
  • Respectively Git as revision control system
  • SourceTree as Git GUI
  • Visual Studio Code as IDE
  • CircleCI for continuous integration (automatize development process)
  • Prettier / TSLint / ESLint as code linter
  • SonarQube as quality gate
  • Docker as container management (incl. Docker Compose for multi-container application management)
  • VirtualBox for operating system simulation tests
  • Kubernetes as cluster management for docker containers
  • Heroku for deploying in test environments
  • nginx as web server (preferably used as facade server in production environment)
  • SSLMate (using OpenSSL) for certificate management
  • Amazon EC2 (incl. Amazon S3) for deploying in stage (production-like) and production environments
  • PostgreSQL as preferred database system
  • Redis as preferred in-memory database/store (great for caching)

The main reason we have chosen Kubernetes over Docker Swarm is related to the following artifacts:

  • Key features: Easy and flexible installation, Clear dashboard, Great scaling operations, Monitoring is an integral part, Great load balancing concepts, Monitors the condition and ensures compensation in the event of failure.
  • Applications: An application can be deployed using a combination of pods, deployments, and services (or micro-services).
  • Functionality: Kubernetes as a complex installation and setup process, but it not as limited as Docker Swarm.
  • Monitoring: It supports multiple versions of logging and monitoring when the services are deployed within the cluster (Elasticsearch/Kibana (ELK), Heapster/Grafana, Sysdig cloud integration).
  • Scalability: All-in-one framework for distributed systems.
  • Other Benefits: Kubernetes is backed by the Cloud Native Computing Foundation (CNCF), huge community among container orchestration tools, it is an open source and modular tool that works with any OS.
See more
Amazon Web Services (AWS) logo

Amazon Web Services (AWS)

30.6K
0
A comprehensive and broadly adopted cloud platform
30.6K
0
PROS OF AMAZON WEB SERVICES (AWS)
    Be the first to leave a pro
    CONS OF AMAZON WEB SERVICES (AWS)
      Be the first to leave a con

      related Amazon Web Services (AWS) posts

      waheed khan
      Associate Java Developer at txtsol · | 13 upvotes · 114.3K views

      I want to make application like Zomato, #Foodpanda.

      Which stack is best for this? As I have expertise in Java and Angular. What is the best stack you will recommend?

      Web Micro-service / Mono? Angular / React? Amazon Web Services (AWS) / Google Cloud Platform? DB : SQL or No SQL

      Mob Cross-platform: React Native / Flutter

      Note: We are a team of 5. what languages do you recommend if I go with microservices?

      Thanks

      See more
      Santiago Velasco
      Java Software Developer at ViewNext · | 8 upvotes · 46.1K views

      Hello everyone, I would like to start using a cloud service to host my projects, which are web applications. If anyone has enough experience with Microsoft Azure, Amazon Web Services (AWS) or Google Cloud Platform, I would like to know which of these is most recommended to use, depending on the features they have or how used they are. Thank you so much.

      See more
      Google Cloud Platform logo

      Google Cloud Platform

      26K
      18
      A suite of cloud computing services
      26K
      18
      PROS OF GOOGLE CLOUD PLATFORM
      • 5
        Good app Marketplace for Beginner and Advanced User
      • 4
        1 year free trial credit USD300
      • 3
        Premium tier IP address
      • 3
        Live chat support
      • 3
        Cheap
      CONS OF GOOGLE CLOUD PLATFORM
        Be the first to leave a con

        related Google Cloud Platform posts

        waheed khan
        Associate Java Developer at txtsol · | 13 upvotes · 114.3K views

        I want to make application like Zomato, #Foodpanda.

        Which stack is best for this? As I have expertise in Java and Angular. What is the best stack you will recommend?

        Web Micro-service / Mono? Angular / React? Amazon Web Services (AWS) / Google Cloud Platform? DB : SQL or No SQL

        Mob Cross-platform: React Native / Flutter

        Note: We are a team of 5. what languages do you recommend if I go with microservices?

        Thanks

        See more

        My days of using Firebase are over! I want to move to something scalable and possibly less cheap. In the past seven days I have done my research on what type of DB best fits my needs, and have chosen to go with the nonrelational DB; MongoDB. Although I understand it, I need help understanding how to set up the architecture. I have the client app (Flutter/ Dart) that would make HTTP requests to the web server (node/express), and from there the webserver would query data from MongoDB.

        How should I go about hosting the web server and MongoDb; do they have to be hosted together (this is where a lot of my confusion is)? Based on the research I've done, it seems like the standard practice would be to host on a VM provided by services such as Amazon Web Services, Google Cloud Platform, Microsoft Azure, etc. If there are better ways, such as possibly self-hosting (more responsibility), should I? Anyways, I just want to confirm with a community (you guys) to make sure I do this right, all input is highly appreciated.

        See more
        Heroku logo

        Heroku

        25.7K
        3.2K
        Build, deliver, monitor and scale web apps and APIs with a trail blazing developer experience.
        25.7K
        3.2K
        PROS OF HEROKU
        • 703
          Easy deployment
        • 459
          Free for side projects
        • 374
          Huge time-saver
        • 348
          Simple scaling
        • 261
          Low devops skills required
        • 190
          Easy setup
        • 174
          Add-ons for almost everything
        • 153
          Beginner friendly
        • 150
          Better for startups
        • 133
          Low learning curve
        • 48
          Postgres hosting
        • 41
          Easy to add collaborators
        • 30
          Faster development
        • 24
          Awesome documentation
        • 19
          Simple rollback
        • 19
          Focus on product, not deployment
        • 15
          Natural companion for rails development
        • 15
          Easy integration
        • 12
          Great customer support
        • 8
          GitHub integration
        • 6
          Painless & well documented
        • 6
          No-ops
        • 4
          I love that they make it free to launch a side project
        • 4
          Free
        • 3
          Great UI
        • 3
          Just works
        • 2
          PostgreSQL forking and following
        • 2
          MySQL extension
        • 1
          Security
        • 1
          Able to host stuff good like Discord Bot
        • 0
          Sec
        CONS OF HEROKU
        • 27
          Super expensive
        • 9
          Not a whole lot of flexibility
        • 7
          No usable MySQL option
        • 7
          Storage
        • 5
          Low performance on free tier
        • 2
          24/7 support is $1,000 per month

        related Heroku posts

        Russel Werner
        Lead Engineer at StackShare · | 32 upvotes · 3M views

        StackShare Feed is built entirely with React, Glamorous, and Apollo. One of our objectives with the public launch of the Feed was to enable a Server-side rendered (SSR) experience for our organic search traffic. When you visit the StackShare Feed, and you aren't logged in, you are delivered the Trending feed experience. We use an in-house Node.js rendering microservice to generate this HTML. This microservice needs to run and serve requests independent of our Rails web app. Up until recently, we had a mono-repo with our Rails and React code living happily together and all served from the same web process. In order to deploy our SSR app into a Heroku environment, we needed to split out our front-end application into a separate repo in GitHub. The driving factor in this decision was mostly due to limitations imposed by Heroku specifically with how processes can't communicate with each other. A new SSR app was created in Heroku and linked directly to the frontend repo so it stays in-sync with changes.

        Related to this, we need a way to "deploy" our frontend changes to various server environments without building & releasing the entire Ruby application. We built a hybrid Amazon S3 Amazon CloudFront solution to host our Webpack bundles. A new CircleCI script builds the bundles and uploads them to S3. The final step in our rollout is to update some keys in Redis so our Rails app knows which bundles to serve. The result of these efforts were significant. Our frontend team now moves independently of our backend team, our build & release process takes only a few minutes, we are now using an edge CDN to serve JS assets, and we have pre-rendered React pages!

        #StackDecisionsLaunch #SSR #Microservices #FrontEndRepoSplit

        See more
        Simon Reymann
        Senior Fullstack Developer at QUANTUSflow Software GmbH · | 30 upvotes · 12.4M views

        Our whole DevOps stack consists of the following tools:

        • GitHub (incl. GitHub Pages/Markdown for Documentation, GettingStarted and HowTo's) for collaborative review and code management tool
        • Respectively Git as revision control system
        • SourceTree as Git GUI
        • Visual Studio Code as IDE
        • CircleCI for continuous integration (automatize development process)
        • Prettier / TSLint / ESLint as code linter
        • SonarQube as quality gate
        • Docker as container management (incl. Docker Compose for multi-container application management)
        • VirtualBox for operating system simulation tests
        • Kubernetes as cluster management for docker containers
        • Heroku for deploying in test environments
        • nginx as web server (preferably used as facade server in production environment)
        • SSLMate (using OpenSSL) for certificate management
        • Amazon EC2 (incl. Amazon S3) for deploying in stage (production-like) and production environments
        • PostgreSQL as preferred database system
        • Redis as preferred in-memory database/store (great for caching)

        The main reason we have chosen Kubernetes over Docker Swarm is related to the following artifacts:

        • Key features: Easy and flexible installation, Clear dashboard, Great scaling operations, Monitoring is an integral part, Great load balancing concepts, Monitors the condition and ensures compensation in the event of failure.
        • Applications: An application can be deployed using a combination of pods, deployments, and services (or micro-services).
        • Functionality: Kubernetes as a complex installation and setup process, but it not as limited as Docker Swarm.
        • Monitoring: It supports multiple versions of logging and monitoring when the services are deployed within the cluster (Elasticsearch/Kibana (ELK), Heapster/Grafana, Sysdig cloud integration).
        • Scalability: All-in-one framework for distributed systems.
        • Other Benefits: Kubernetes is backed by the Cloud Native Computing Foundation (CNCF), huge community among container orchestration tools, it is an open source and modular tool that works with any OS.
        See more