Alternatives to Heroku logo

Alternatives to Heroku

DigitalOcean, Google App Engine, Firebase, Docker, and Microsoft Azure are the most popular alternatives and competitors to Heroku.
25.3K
20.2K
+ 1
3.2K

What is Heroku and what are its top alternatives?

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.
Heroku is a tool in the Platform as a Service category of a tech stack.

Top Alternatives to Heroku

  • DigitalOcean
    DigitalOcean

    We take the complexities out of cloud hosting by offering blazing fast, on-demand SSD cloud servers, straightforward pricing, a simple API, and an easy-to-use control panel. ...

  • Google App Engine
    Google App Engine

    Google has a reputation for highly reliable, high performance infrastructure. With App Engine you can take advantage of the 10 years of knowledge Google has in running massively scalable, performance driven systems. App Engine applications are easy to build, easy to maintain, and easy to scale as your traffic and data storage needs grow. ...

  • 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. ...

  • Docker
    Docker

    The Docker Platform is the industry-leading container platform for continuous, high-velocity innovation, enabling organizations to seamlessly build and share any application — from legacy to what comes next — and securely run them anywhere ...

  • Microsoft Azure
    Microsoft Azure

    Azure is an open and flexible cloud platform that enables you to quickly build, deploy and manage applications across a global network of Microsoft-managed datacenters. You can build applications using any language, tool or framework. And you can integrate your public cloud applications with your existing IT environment. ...

  • Red Hat OpenShift
    Red Hat OpenShift

    OpenShift is Red Hat's Cloud Computing Platform as a Service (PaaS) offering. OpenShift is an application platform in the cloud where application developers and teams can build, test, deploy, and run their applications. ...

  • Netlify
    Netlify

    Netlify is smart enough to process your site and make sure all assets gets optimized and served with perfect caching-headers from a cookie-less domain. We make sure your HTML is served straight from our CDN edge nodes without any round-trip to our backend servers and are the only ones to give you instant cache invalidation when you push a new deploy. Netlify is also the only static hosting service with integrated continuous deployment. ...

  • AWS Elastic Beanstalk
    AWS Elastic Beanstalk

    Once you upload your application, Elastic Beanstalk automatically handles the deployment details of capacity provisioning, load balancing, auto-scaling, and application health monitoring. ...

Heroku alternatives & related posts

DigitalOcean logo

DigitalOcean

17.8K
13K
2.6K
Deploy an SSD cloud server in less than 55 seconds with a dedicated IP and root access.
17.8K
13K
+ 1
2.6K
PROS OF DIGITALOCEAN
  • 560
    Great value for money
  • 364
    Simple dashboard
  • 362
    Good pricing
  • 300
    Ssds
  • 250
    Nice ui
  • 191
    Easy configuration
  • 156
    Great documentation
  • 138
    Ssh access
  • 135
    Great community
  • 24
    Ubuntu
  • 13
    Docker
  • 12
    IPv6 support
  • 10
    Private networking
  • 8
    99.99% uptime SLA
  • 7
    Simple API
  • 7
    Great tutorials
  • 6
    55 Second Provisioning
  • 5
    One Click Applications
  • 4
    Dokku
  • 4
    Node.js
  • 4
    LAMP
  • 4
    Debian
  • 4
    CoreOS
  • 3
    1Gb/sec Servers
  • 3
    Word Press
  • 3
    LEMP
  • 3
    Simple Control Panel
  • 3
    Mean
  • 3
    Ghost
  • 2
    Runs CoreOS
  • 2
    Quick and no nonsense service
  • 2
    Django
  • 2
    Good Tutorials
  • 2
    Speed
  • 2
    Ruby on Rails
  • 2
    GitLab
  • 2
    Hex Core machines with dedicated ECC Ram and RAID SSD s
  • 1
    CentOS
  • 1
    Spaces
  • 1
    KVM Virtualization
  • 1
    Amazing Hardware
  • 1
    Transfer Globally
  • 1
    Fedora
  • 1
    FreeBSD
  • 1
    Drupal
  • 1
    FreeBSD Amp
  • 1
    Magento
  • 1
    ownCloud
  • 1
    RedMine
  • 1
    My go to server provider
  • 1
    Ease and simplicity
  • 1
    Nice
  • 1
    Find it superfitting with my requirements (SSD, ssh.
  • 1
    Easy Setup
  • 1
    Cheap
  • 1
    Static IP
  • 1
    It's the easiest to get started for small projects
  • 1
    Automatic Backup
  • 1
    Great support
  • 1
    Quick and easy to set up
  • 1
    Servers on demand - literally
  • 1
    Reliability
  • 0
    Variety of services
  • 0
    Managed Kubernetes
CONS OF DIGITALOCEAN
  • 3
    No live support chat
  • 3
    Pricing

related DigitalOcean posts

David Watson
at Realtime App Solutions · | 15 upvotes · 98.1K views

Coming from a non-web development environment background, I was a bit lost a first and bewildered by all the varying tools and platforms, and spent much too long evaluating before eventualy deciding on Laravel as the main core of my development.

But as I started development with Laravel that lead me into discovering Vue.js for creating beautiful front-end components that were easy to configure and extend, so I decided to standardise on Vue.js for most of my front-end development.

During my search for additional Vue.js components, a chance comment in a @laravel forum , led me to discover Quasar Framework initially for it's wide range of in-built components ... but once, I realised that Quasar Framework allowed me to use the same codebase to create apps for SPA, PWA, iOS, Android, and Electron then I was hooked.

So, I'm now using mainly just Quasar Framework for all the front-end, with Laravel providing a backend API service to the Front-end apps.

I'm deploying this all to DigitalOcean droplets via service called Moss.sh which deploys my private GitHub repositories directly to DigitalOcean in realtime.

See more
Christopher Wray
Web Developer at Soltech LLC · | 14 upvotes · 171.9K views

This week, we finally released NurseryPeople.com. In the end, I chose to provision our server on DigitalOcean. So far, I am SO happy with that decision. Although setting everything up was a challenge, and I learned a lot, DigitalOceans blogs helped in so many ways. I was able to set up nginx and the Laravel web app pretty smoothly. I am also using Buddy for deploying changes made in git, which is super awesome. All I have to do in order to deploy is push my code to my private repo, and buddy transfers everything over to DigitalOcean. So far, we haven't had any downtime and DigitalOceans prices are quite fair for the power under the hood.

See more
Google App Engine logo

Google App Engine

10K
7.9K
610
Build web applications on the same scalable systems that power Google applications
10K
7.9K
+ 1
610
PROS OF GOOGLE APP ENGINE
  • 145
    Easy to deploy
  • 106
    Auto scaling
  • 80
    Good free plan
  • 62
    Easy management
  • 56
    Scalability
  • 35
    Low cost
  • 32
    Comprehensive set of features
  • 28
    All services in one place
  • 22
    Simple scaling
  • 19
    Quick and reliable cloud servers
  • 6
    Granular Billing
  • 5
    Easy to develop and unit test
  • 4
    Monitoring gives comprehensive set of key indicators
  • 3
    Really easy to quickly bring up a full stack
  • 3
    Create APIs quickly with cloud endpoints
  • 2
    Mostly up
  • 2
    No Ops
CONS OF GOOGLE APP ENGINE
    Be the first to leave a con

    related Google App Engine posts

    Dmitry Mukhin

    Uploadcare has built an infinitely scalable infrastructure by leveraging AWS. Building on top of AWS allows us to process 350M daily requests for file uploads, manipulations, and deliveries. When we started in 2011 the only cloud alternative to AWS was Google App Engine which was a no-go for a rather complex solution we wanted to build. We also didn’t want to buy any hardware or use co-locations.

    Our stack handles receiving files, communicating with external file sources, managing file storage, managing user and file data, processing files, file caching and delivery, and managing user interface dashboards.

    At its core, Uploadcare runs on Python. The Europython 2011 conference in Florence really inspired us, coupled with the fact that it was general enough to solve all of our challenges informed this decision. Additionally we had prior experience working in Python.

    We chose to build the main application with Django because of its feature completeness and large footprint within the Python ecosystem.

    All the communications within our ecosystem occur via several HTTP APIs, Redis, Amazon S3, and Amazon DynamoDB. We decided on this architecture so that our our system could be scalable in terms of storage and database throughput. This way we only need Django running on top of our database cluster. We use PostgreSQL as our database because it is considered an industry standard when it comes to clustering and scaling.

    See more
    Nick Rockwell
    SVP, Engineering at Fastly · | 12 upvotes · 424.9K views

    So, the shift from Amazon EC2 to Google App Engine and generally #AWS to #GCP was a long decision and in the end, it's one that we've taken with eyes open and that we reserve the right to modify at any time. And to be clear, we continue to do a lot of stuff with AWS. But, by default, the content of the decision was, for our consumer-facing products, we're going to use GCP first. And if there's some reason why we don't think that's going to work out great, then we'll happily use AWS. In practice, that hasn't really happened. We've been able to meet almost 100% of our needs in GCP.

    So it's basically mostly Google Kubernetes Engine , we're mostly running stuff on Kubernetes right now.

    #AWStoGCPmigration #cloudmigration #migration

    See more
    Firebase logo

    Firebase

    40.1K
    34.5K
    2K
    The Realtime App Platform
    40.1K
    34.5K
    + 1
    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
    • 18
      Rapid prototyping
    • 14
      Great security
    • 12
      Automatic scaling
    • 11
      Freakingly awesome
    • 8
      Chat
    • 8
      Angularfire is an amazing addition!
    • 8
      Super fast development
    • 6
      Built in user auth/oauth
    • 6
      Firebase hosting
    • 6
      Ios adaptor
    • 6
      Awesome next-gen backend
    • 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

    Johnny Bell

    I was building a personal project that I needed to store items in a real time database. I am more comfortable with my Frontend skills than my backend so I didn't want to spend time building out anything in Ruby or Go.

    I stumbled on Firebase by #Google, and it was really all I needed. It had realtime data, an area for storing file uploads and best of all for the amount of data I needed it was free!

    I built out my application using tools I was familiar with, React for the framework, Redux.js to manage my state across components, and styled-components for the styling.

    Now as this was a project I was just working on in my free time for fun I didn't really want to pay for hosting. I did some research and I found Netlify. I had actually seen them at #ReactRally the year before and deployed a Gatsby site to Netlify already.

    Netlify was very easy to setup and link to my GitHub account you select a repo and pretty much with very little configuration you have a live site that will deploy every time you push to master.

    With the selection of these tools I was able to build out my application, connect it to a realtime database, and deploy to a live environment all with $0 spent.

    If you're looking to build out a small app I suggest giving these tools a go as you can get your idea out into the real world for absolutely no cost.

    See more
    Collins Ogbuzuru
    Front-end dev at Evolve credit · | 15 upvotes · 8.4K views

    Your tech stack is solid for building a real-time messaging project.

    React and React Native are excellent choices for the frontend, especially if you want to have both web and mobile versions of your application share code.

    ExpressJS is an unopinionated framework that affords you the flexibility to use it's features at your term, which is a good start. However, I would recommend you explore Sails.js as well. Sails.js is built on top of Express.js and it provides additional features out of the box, especially the Websocket integration that your project requires.

    Don't forget to set up Graphql codegen, this would improve your dev experience (Add Typescript, if you can too).

    I don't know much about databases but you might want to consider using NO-SQL. I used Firebase real-time db and aws dynamo db on a few of my personal projects and I love they're easy to work with and offer more flexibility for a chat application.

    See more
    Docker logo

    Docker

    170.3K
    136.9K
    3.9K
    Enterprise Container Platform for High-Velocity Innovation.
    170.3K
    136.9K
    + 1
    3.9K
    PROS OF DOCKER
    • 823
      Rapid integration and build up
    • 691
      Isolation
    • 521
      Open source
    • 505
      Testa­bil­i­ty and re­pro­ducibil­i­ty
    • 460
      Lightweight
    • 218
      Standardization
    • 185
      Scalable
    • 106
      Upgrading / down­grad­ing / ap­pli­ca­tion versions
    • 88
      Security
    • 85
      Private paas environments
    • 34
      Portability
    • 26
      Limit resource usage
    • 17
      Game changer
    • 16
      I love the way docker has changed virtualization
    • 14
      Fast
    • 12
      Concurrency
    • 8
      Docker's Compose tools
    • 6
      Easy setup
    • 6
      Fast and Portable
    • 5
      Because its fun
    • 4
      Makes shipping to production very simple
    • 3
      Highly useful
    • 3
      It's dope
    • 2
      Very easy to setup integrate and build
    • 2
      HIgh Throughput
    • 2
      Package the environment with the application
    • 2
      Does a nice job hogging memory
    • 2
      Open source and highly configurable
    • 2
      Simplicity, isolation, resource effective
    • 2
      MacOS support FAKE
    • 2
      Its cool
    • 2
      Docker hub for the FTW
    • 2
      Super
    • 0
      Asdfd
    CONS OF DOCKER
    • 8
      New versions == broken features
    • 6
      Unreliable networking
    • 6
      Documentation not always in sync
    • 4
      Moves quickly
    • 3
      Not Secure

    related Docker posts

    Simon Reymann
    Senior Fullstack Developer at QUANTUSflow Software GmbH · | 30 upvotes · 9M 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
    Tymoteusz Paul
    Devops guy at X20X Development LTD · | 23 upvotes · 8M views

    Often enough I have to explain my way of going about setting up a CI/CD pipeline with multiple deployment platforms. Since I am a bit tired of yapping the same every single time, I've decided to write it up and share with the world this way, and send people to read it instead ;). I will explain it on "live-example" of how the Rome got built, basing that current methodology exists only of readme.md and wishes of good luck (as it usually is ;)).

    It always starts with an app, whatever it may be and reading the readmes available while Vagrant and VirtualBox is installing and updating. Following that is the first hurdle to go over - convert all the instruction/scripts into Ansible playbook(s), and only stopping when doing a clear vagrant up or vagrant reload we will have a fully working environment. As our Vagrant environment is now functional, it's time to break it! This is the moment to look for how things can be done better (too rigid/too lose versioning? Sloppy environment setup?) and replace them with the right way to do stuff, one that won't bite us in the backside. This is the point, and the best opportunity, to upcycle the existing way of doing dev environment to produce a proper, production-grade product.

    I should probably digress here for a moment and explain why. I firmly believe that the way you deploy production is the same way you should deploy develop, shy of few debugging-friendly setting. This way you avoid the discrepancy between how production work vs how development works, which almost always causes major pains in the back of the neck, and with use of proper tools should mean no more work for the developers. That's why we start with Vagrant as developer boxes should be as easy as vagrant up, but the meat of our product lies in Ansible which will do meat of the work and can be applied to almost anything: AWS, bare metal, docker, LXC, in open net, behind vpn - you name it.

    We must also give proper consideration to monitoring and logging hoovering at this point. My generic answer here is to grab Elasticsearch, Kibana, and Logstash. While for different use cases there may be better solutions, this one is well battle-tested, performs reasonably and is very easy to scale both vertically (within some limits) and horizontally. Logstash rules are easy to write and are well supported in maintenance through Ansible, which as I've mentioned earlier, are at the very core of things, and creating triggers/reports and alerts based on Elastic and Kibana is generally a breeze, including some quite complex aggregations.

    If we are happy with the state of the Ansible it's time to move on and put all those roles and playbooks to work. Namely, we need something to manage our CI/CD pipelines. For me, the choice is obvious: TeamCity. It's modern, robust and unlike most of the light-weight alternatives, it's transparent. What I mean by that is that it doesn't tell you how to do things, doesn't limit your ways to deploy, or test, or package for that matter. Instead, it provides a developer-friendly and rich playground for your pipelines. You can do most the same with Jenkins, but it has a quite dated look and feel to it, while also missing some key functionality that must be brought in via plugins (like quality REST API which comes built-in with TeamCity). It also comes with all the common-handy plugins like Slack or Apache Maven integration.

    The exact flow between CI and CD varies too greatly from one application to another to describe, so I will outline a few rules that guide me in it: 1. Make build steps as small as possible. This way when something breaks, we know exactly where, without needing to dig and root around. 2. All security credentials besides development environment must be sources from individual Vault instances. Keys to those containers should exist only on the CI/CD box and accessible by a few people (the less the better). This is pretty self-explanatory, as anything besides dev may contain sensitive data and, at times, be public-facing. Because of that appropriate security must be present. TeamCity shines in this department with excellent secrets-management. 3. Every part of the build chain shall consume and produce artifacts. If it creates nothing, it likely shouldn't be its own build. This way if any issue shows up with any environment or version, all developer has to do it is grab appropriate artifacts to reproduce the issue locally. 4. Deployment builds should be directly tied to specific Git branches/tags. This enables much easier tracking of what caused an issue, including automated identifying and tagging the author (nothing like automated regression testing!).

    Speaking of deployments, I generally try to keep it simple but also with a close eye on the wallet. Because of that, I am more than happy with AWS or another cloud provider, but also constantly peeking at the loads and do we get the value of what we are paying for. Often enough the pattern of use is not constantly erratic, but rather has a firm baseline which could be migrated away from the cloud and into bare metal boxes. That is another part where this approach strongly triumphs over the common Docker and CircleCI setup, where you are very much tied in to use cloud providers and getting out is expensive. Here to embrace bare-metal hosting all you need is a help of some container-based self-hosting software, my personal preference is with Proxmox and LXC. Following that all you must write are ansible scripts to manage hardware of Proxmox, similar way as you do for Amazon EC2 (ansible supports both greatly) and you are good to go. One does not exclude another, quite the opposite, as they can live in great synergy and cut your costs dramatically (the heavier your base load, the bigger the savings) while providing production-grade resiliency.

    See more
    Microsoft Azure logo

    Microsoft Azure

    24.3K
    17K
    768
    Integrated cloud services and infrastructure to support computing, database, analytics, mobile, and web scenarios.
    24.3K
    17K
    + 1
    768
    PROS OF MICROSOFT AZURE
    • 114
      Scales well and quite easy
    • 96
      Can use .Net or open source tools
    • 81
      Startup friendly
    • 73
      Startup plans via BizSpark
    • 62
      High performance
    • 38
      Wide choice of services
    • 32
      Low cost
    • 32
      Lots of integrations
    • 31
      Reliability
    • 19
      Twillio & Github are directly accessible
    • 13
      RESTful API
    • 10
      PaaS
    • 10
      Enterprise Grade
    • 10
      Startup support
    • 8
      DocumentDB
    • 7
      In person support
    • 6
      Free for students
    • 6
      Service Bus
    • 6
      Virtual Machines
    • 5
      Redis Cache
    • 5
      It rocks
    • 4
      Storage, Backup, and Recovery
    • 4
      Infrastructure Services
    • 4
      SQL Databases
    • 4
      CDN
    • 3
      Integration
    • 3
      Scheduler
    • 3
      Preview Portal
    • 3
      HDInsight
    • 3
      Built on Node.js
    • 3
      Big Data
    • 3
      BizSpark 60k Azure Benefit
    • 3
      IaaS
    • 2
      Backup
    • 2
      Open cloud
    • 2
      Web
    • 2
      SaaS
    • 2
      Big Compute
    • 2
      Mobile
    • 2
      Media
    • 2
      Dev-Test
    • 2
      Storage
    • 2
      StorSimple
    • 2
      Machine Learning
    • 2
      Stream Analytics
    • 2
      Data Factory
    • 2
      Event Hubs
    • 2
      Virtual Network
    • 2
      ExpressRoute
    • 2
      Traffic Manager
    • 2
      Media Services
    • 2
      BizTalk Services
    • 2
      Site Recovery
    • 2
      Active Directory
    • 2
      Multi-Factor Authentication
    • 2
      Visual Studio Online
    • 2
      Application Insights
    • 2
      Automation
    • 2
      Operational Insights
    • 2
      Key Vault
    • 2
      Infrastructure near your customers
    • 2
      Easy Deployment
    • 1
      Enterprise customer preferences
    • 1
      Documentation
    • 1
      Security
    • 1
      Best cloud platfrom
    • 1
      Easy and fast to start with
    • 1
      Remote Debugging
    CONS OF MICROSOFT AZURE
    • 7
      Confusing UI
    • 2
      Expensive plesk on Azure

    related Microsoft Azure posts

    Dale Ross
    Independent Contractor at Self Employed · | 22 upvotes · 1.5M views

    I've heard that I have the ability to write well, at times. When it flows, it flows. I decided to start blogging in 2013 on Blogger. I started a company and joined BizPark with the Microsoft Azure allotment. I created a WordPress blog and did a migration at some point. A lot happened in the time after that migration but I stopped coding and changed cities during tumultuous times that taught me many lessons concerning mental health and productivity. I eventually graduated from BizSpark and outgrew the credit allotment. That killed the WordPress blog.

    I blogged about writing again on the existing Blogger blog but it didn't feel right. I looked at a few options where I wouldn't have to worry about hosting cost indefinitely and Jekyll stood out with GitHub Pages. The Importer was fairly straightforward for the existing blog posts.

    Todo * Set up redirects for all posts on blogger. The URI format is different so a complete redirect wouldn't work. Although, there may be something in Jekyll that could manage the redirects. I did notice the old URLs were stored in the front matter. I'm working on a command-line Ruby gem for the current plan. * I did find some of the lost WordPress posts on archive.org that I downloaded with the waybackmachinedownloader. I think I might write an importer for that. * I still have a few Disqus comment threads to map

    See more
    Ganesa Vijayakumar
    Full Stack Coder | Technical Lead · | 19 upvotes · 4.5M views

    I'm planning to create a web application and also a mobile application to provide a very good shopping experience to the end customers. Shortly, my application will be aggregate the product details from difference sources and giving a clear picture to the user that when and where to buy that product with best in Quality and cost.

    I have planned to develop this in many milestones for adding N number of features and I have picked my first part to complete the core part (aggregate the product details from different sources).

    As per my work experience and knowledge, I have chosen the followings stacks to this mission.

    UI: I would like to develop this application using React, React Router and React Native since I'm a little bit familiar on this and also most importantly these will help on developing both web and mobile apps. In addition, I'm gonna use the stacks JavaScript, jQuery, jQuery UI, jQuery Mobile, Bootstrap wherever required.

    Service: I have planned to use Java as the main business layer language as I have 7+ years of experience on this I believe I can do better work using Java than other languages. In addition, I'm thinking to use the stacks Node.js.

    Database and ORM: I'm gonna pick MySQL as DB and Hibernate as ORM since I have a piece of good knowledge and also work experience on this combination.

    Search Engine: I need to deal with a large amount of product data and it's in-detailed info to provide enough details to end user at the same time I need to focus on the performance area too. so I have decided to use Solr as a search engine for product search and suggestions. In addition, I'm thinking to replace Solr by Elasticsearch once explored/reviewed enough about Elasticsearch.

    Host: As of now, my plan to complete the application with decent features first and deploy it in a free hosting environment like Docker and Heroku and then once it is stable then I have planned to use the AWS products Amazon S3, EC2, Amazon RDS and Amazon Route 53. I'm not sure about Microsoft Azure that what is the specialty in it than Heroku and Amazon EC2 Container Service. Anyhow, I will do explore these once again and pick the best suite one for my requirement once I reached this level.

    Build and Repositories: I have decided to choose Apache Maven and Git as these are my favorites and also so popular on respectively build and repositories.

    Additional Utilities :) - I would like to choose Codacy for code review as their Startup plan will be very helpful to this application. I'm already experienced with Google CheckStyle and SonarQube even I'm looking something on Codacy.

    Happy Coding! Suggestions are welcome! :)

    Thanks, Ganesa

    See more
    Red Hat OpenShift logo

    Red Hat OpenShift

    1.5K
    1.4K
    517
    Red Hat's free Platform as a Service (PaaS) for hosting Java, PHP, Ruby, Python, Node.js, and Perl apps
    1.5K
    1.4K
    + 1
    517
    PROS OF RED HAT OPENSHIFT
    • 99
      Good free plan
    • 63
      Open Source
    • 47
      Easy setup
    • 43
      Nodejs support
    • 42
      Well documented
    • 32
      Custom domains
    • 28
      Mongodb support
    • 27
      Clean and simple architecture
    • 25
      PHP support
    • 21
      Customizable environments
    • 11
      Ability to run CRON jobs
    • 9
      Easier than Heroku for a WordPress blog
    • 8
      Easy deployment
    • 7
      PostgreSQL support
    • 7
      Autoscaling
    • 7
      Good balance between Heroku and AWS for flexibility
    • 5
      Free, Easy Setup, Lot of Gear or D.I.Y Gear
    • 4
      Shell access to gears
    • 3
      Great Support
    • 3
      High Security
    • 3
      Logging & Metrics
    • 2
      Cloud Agnostic
    • 2
      Runs Anywhere - AWS, GCP, Azure
    • 2
      No credit card needed
    • 2
      Because it is easy to manage
    • 2
      Secure
    • 2
      Meteor support
    • 2
      Overly complicated and over engineered in majority of e
    • 2
      Golang support
    • 2
      Its free and offer custom domain usage
    • 1
      Autoscaling at a good price point
    • 1
      Easy setup and great customer support
    • 1
      MultiCloud
    • 1
      Great free plan with excellent support
    • 1
      This is the only free one among the three as of today
    CONS OF RED HAT OPENSHIFT
    • 2
      Decisions are made for you, limiting your options
    • 2
      License cost
    • 1
      Behind, sometimes severely, the upstreams

    related Red Hat OpenShift posts

    Conor Myhrvold
    Tech Brand Mgr, Office of CTO at Uber · | 44 upvotes · 9.6M views

    How Uber developed the open source, end-to-end distributed tracing Jaeger , now a CNCF project:

    Distributed tracing is quickly becoming a must-have component in the tools that organizations use to monitor their complex, microservice-based architectures. At Uber, our open source distributed tracing system Jaeger saw large-scale internal adoption throughout 2016, integrated into hundreds of microservices and now recording thousands of traces every second.

    Here is the story of how we got here, from investigating off-the-shelf solutions like Zipkin, to why we switched from pull to push architecture, and how distributed tracing will continue to evolve:

    https://eng.uber.com/distributed-tracing/

    (GitHub Pages : https://www.jaegertracing.io/, GitHub: https://github.com/jaegertracing/jaeger)

    Bindings/Operator: Python Java Node.js Go C++ Kubernetes JavaScript OpenShift C# Apache Spark

    See more
    Michael Ionita

    We use Kubernetes because we decided to migrate to a hosted cluster (not AWS) and still be able to scale our clusters up and down depending on load. By wrapping it with OpenShift we are now able to easily adapt to demand but also able to separate concerns into separate Pods depending on use-cases we have.

    See more
    Netlify logo

    Netlify

    3.3K
    2K
    205
    Build, deploy and host your static site or app with a drag and drop interface and automatic delpoys...
    3.3K
    2K
    + 1
    205
    PROS OF NETLIFY
    • 45
      Easy deploy
    • 43
      Fastest static hosting and continuous deployments
    • 22
      Free SSL support
    • 22
      Super simple deploys
    • 15
      Easy Setup and Continous deployments
    • 10
      Faster than any other option in the market
    • 10
      Free plan for personal websites
    • 8
      Deploy previews
    • 6
      Free Open Source (Pro) plan
    • 4
      Great loop-in material on a blog
    • 4
      Analytics
    • 4
      Easy to use and great support
    • 3
      Fastest static hosting and continuous deployments
    • 3
      Great drag and drop functionality
    • 3
      Custom domains support
    • 1
      Canary Releases (Split Tests)
    • 1
      Supports static site generators
    • 1
      Tech oriented support
    • 0
      Django
    CONS OF NETLIFY
    • 7
      It's expensive
    • 1
      Bandwidth limitation

    related Netlify posts

    Johnny Bell

    I was building a personal project that I needed to store items in a real time database. I am more comfortable with my Frontend skills than my backend so I didn't want to spend time building out anything in Ruby or Go.

    I stumbled on Firebase by #Google, and it was really all I needed. It had realtime data, an area for storing file uploads and best of all for the amount of data I needed it was free!

    I built out my application using tools I was familiar with, React for the framework, Redux.js to manage my state across components, and styled-components for the styling.

    Now as this was a project I was just working on in my free time for fun I didn't really want to pay for hosting. I did some research and I found Netlify. I had actually seen them at #ReactRally the year before and deployed a Gatsby site to Netlify already.

    Netlify was very easy to setup and link to my GitHub account you select a repo and pretty much with very little configuration you have a live site that will deploy every time you push to master.

    With the selection of these tools I was able to build out my application, connect it to a realtime database, and deploy to a live environment all with $0 spent.

    If you're looking to build out a small app I suggest giving these tools a go as you can get your idea out into the real world for absolutely no cost.

    See more
    Jeyabalaji Subramanian

    At FundsCorner, we are on a mission to enable fast accessible credit to India’s Kirana Stores. We are an early stage startup with an ultra small Engineering team. All the tech decisions we have made until now are based on our core philosophy: "Build usable products fast".

    Based on the above fundamentals, we chose Python as our base language for all our APIs and micro-services. It is ultra easy to start with, yet provides great libraries even for the most complex of use cases. Our entire backend stack runs on Python and we cannot be more happy with it! If you are looking to deploy your API as server-less, Python provides one of the least cold start times.

    We build our APIs with Flask. For backend database, our natural choice was MongoDB. It frees up our time from complex database specifications - we instead use our time in doing sensible data modelling & once we finalize the data model, we integrate it into Flask using Swagger UI. Mongo supports complex queries to cull out difficult data through aggregation framework & we have even built an internal framework called "Poetry", for aggregation queries.

    Our web apps are built on Vue.js , Vuetify and vuex. Initially we debated a lot around choosing Vue.js or React , but finally settled with Vue.js, mainly because of the ease of use, fast development cycles & awesome set of libraries and utilities backing Vue.

    You simply cannot go wrong with Vue.js . Great documentation, the library is ultra compact & is blazing fast. Choosing Vue.js was one of the critical decisions made, which enabled us to launch our web app in under a month (which otherwise would have taken 3 months easily). For those folks who are looking for big names, Adobe, and Alibaba and Gitlab are using Vue.

    By choosing Vuetify, we saved thousands of person hours in designing the CSS files. Vuetify contains all key material components for designing a smooth User experience & it just works! It's an awesome framework. All of us at FundsCorner are now lifelong fanboys of Vue.js and Vuetify.

    On the infrastructure side, all our API services and backend services are deployed as server less micro-services through Zappa. Zappa makes your life super easy by packaging everything that is required to deploy your code as AWS Lambda. We are now addicted to the single - click deploys / updates through Zappa. Try it out & you will convert!

    Also, if you are using Zappa, you can greatly simplify your CI / CD pipelines. Do try it! It's just awesome! and... you will be astonished by the savings you have made on AWS bills at end of the month.

    Our CI / CD pipelines are built using GitLab CI. The documentation is very good & it enables you to go from from concept to production in minimal time frame.

    We use Sentry for all crash reporting and resolution. Pro tip, they do have handlers for AWS Lambda , which made our integration super easy.

    All our micro-services including APIs are event-driven. Our background micro-services are message oriented & we use Amazon SQS as our message pipe. We have our own in-house workflow manager to orchestrate across micro - services.

    We host our static websites on Netlify. One of the cool things about Netlify is the automated CI / CD on git push. You just do a git push to deploy! Again, it is super simple to use and it just works. We were dogmatic about going server less even on static web sites & you can go server less on Netlify in a few minutes. It's just a few clicks away.

    We use Google Compute Engine, especially Google Vision for our AI experiments.

    For Ops automation, we use Slack. Slack provides a super-rich API (through Slack App) through which you can weave magical automation on boring ops tasks.

    See more
    AWS Elastic Beanstalk logo

    AWS Elastic Beanstalk

    2.1K
    1.8K
    241
    Quickly deploy and manage applications in the AWS cloud.
    2.1K
    1.8K
    + 1
    241
    PROS OF AWS ELASTIC BEANSTALK
    • 77
      Integrates with other aws services
    • 65
      Simple deployment
    • 44
      Fast
    • 28
      Painless
    • 16
      Free
    • 4
      Well-documented
    • 3
      Independend app container
    • 2
      Postgres hosting
    • 2
      Ability to be customized
    CONS OF AWS ELASTIC BEANSTALK
    • 2
      Charges appear automatically after exceeding free quota
    • 1
      Lots of moving parts and config
    • 0
      Slow deployments

    related AWS Elastic Beanstalk posts

    Julien DeFrance
    Principal Software Engineer at Tophatter · | 16 upvotes · 3.1M views

    Back in 2014, I was given an opportunity to re-architect SmartZip Analytics platform, and flagship product: SmartTargeting. This is a SaaS software helping real estate professionals keeping up with their prospects and leads in a given neighborhood/territory, finding out (thanks to predictive analytics) who's the most likely to list/sell their home, and running cross-channel marketing automation against them: direct mail, online ads, email... The company also does provide Data APIs to Enterprise customers.

    I had inherited years and years of technical debt and I knew things had to change radically. The first enabler to this was to make use of the cloud and go with AWS, so we would stop re-inventing the wheel, and build around managed/scalable services.

    For the SaaS product, we kept on working with Rails as this was what my team had the most knowledge in. We've however broken up the monolith and decoupled the front-end application from the backend thanks to the use of Rails API so we'd get independently scalable micro-services from now on.

    Our various applications could now be deployed using AWS Elastic Beanstalk so we wouldn't waste any more efforts writing time-consuming Capistrano deployment scripts for instance. Combined with Docker so our application would run within its own container, independently from the underlying host configuration.

    Storage-wise, we went with Amazon S3 and ditched any pre-existing local or network storage people used to deal with in our legacy systems. On the database side: Amazon RDS / MySQL initially. Ultimately migrated to Amazon RDS for Aurora / MySQL when it got released. Once again, here you need a managed service your cloud provider handles for you.

    Future improvements / technology decisions included:

    Caching: Amazon ElastiCache / Memcached CDN: Amazon CloudFront Systems Integration: Segment / Zapier Data-warehousing: Amazon Redshift BI: Amazon Quicksight / Superset Search: Elasticsearch / Amazon Elasticsearch Service / Algolia Monitoring: New Relic

    As our usage grows, patterns changed, and/or our business needs evolved, my role as Engineering Manager then Director of Engineering was also to ensure my team kept on learning and innovating, while delivering on business value.

    One of these innovations was to get ourselves into Serverless : Adopting AWS Lambda was a big step forward. At the time, only available for Node.js (Not Ruby ) but a great way to handle cost efficiency, unpredictable traffic, sudden bursts of traffic... Ultimately you want the whole chain of services involved in a call to be serverless, and that's when we've started leveraging Amazon DynamoDB on these projects so they'd be fully scalable.

    See more

    We initially started out with Heroku as our PaaS provider due to a desire to use it by our original developer for our Ruby on Rails application/website at the time. We were finding response times slow, it was painfully slow, sometimes taking 10 seconds to start loading the main page. Moving up to the next "compute" level was going to be very expensive.

    We moved our site over to AWS Elastic Beanstalk , not only did response times on the site practically become instant, our cloud bill for the application was cut in half.

    In database world we are currently using Amazon RDS for PostgreSQL also, we have both MariaDB and Microsoft SQL Server both hosted on Amazon RDS. The plan is to migrate to AWS Aurora Serverless for all 3 of those database systems.

    Additional services we use for our public applications: AWS Lambda, Python, Redis, Memcached, AWS Elastic Load Balancing (ELB), Amazon Elasticsearch Service, Amazon ElastiCache

    See more