Elijah Asaolu I am a programmer, I have a life.

Deta vs. Heroku: Finding the better cloud provider

4 min read 1160

Deta Vs. Heroku Finding Better Cloud Provider

Speed, scalability, cost, and security should all be considered when choosing a cloud service provider, as these variables have a huge impact on the success of your application. As a result, it’s critical that you put in a lot of effort in determining which one is best for you.

In this post, we will be comparing one of the most popular cloud service providers, Heroku, with a relatively new and fully free alternative, Deta. We will be exploring the services and features that both platforms offer, their pricing model, as well as their developer experience — i.e., the experience of hosting an application on these platforms.

What is Heroku?

Heroku is a cloud platform as a service (PaaS) initially founded by James Lindenbaum, Adam Wiggins, and Orion Henry in 2017. The platform was at first developed to only support projects created with the Ruby programming language, but since its acquisition by Salesforce in 2010, the platform has added support for multiple programming languages, including ​Java, Node.js, Scala, Clojure, Python, PHP, and Go.

Heroku Cloud Platform

Heroku features

Heroku provides a range of tools and services for easily scaling and deploying your application. Some of these include:

Dynos

Almost every cloud service provider has a unique name for their cloud container; Heroku’s is Dyno.

Dynos are the fundamental components of any Heroku application. They are segregated virtual Linux containers that provide all of the CPU, memory, and operating system resources required to run your application.

Heroku also eliminates the stress of configuring hardware resources and virtual machines for your applications. Instead of having to worry about hardware management, you can simply publish your app to Heroku and the platform will package all of your app code and dependencies to dynos.

Add-ons

Heroku also allows you to extend your project with a variety of add-ons, which are extra cloud services provided by Heroku and third-party developers to add more functionalities to your application, such as caching, data-store (including support for Postgres, MongoDB, and MySQL, among others), event scheduling, logging, and many others.

Operational experience

Another intriguing feature offered by Heroku is the operational experience platform, which allows you to focus on maintaining the reliability of your application while offering an excellent user experience.

This platform helps with monitoring the health of your application, verifying its responsiveness, and generating proactive alerts on request failures, even before your users see them.

Heroku Operational Experience Platform

Pricing

Heroku offers a generous free dyno plan, which includes a custom domain and a free 512MB RAM provision. However, your application will sleep after 30 minutes of inactivity. This means that if a request is not sent to your application or its URL is not visited every 30 minutes, the application will sleep, and the next request will take up to 10 seconds to load.



Every other plan varies from $7 to over $500 per dyno per month, depending on the requirements of your project. For more information, check out their pricing page.

Developer experience

The process of hosting your application on Heroku is fairly simple. One option is to set up a CI/CD pipeline with Heroku and your project development platforms, such as GitHub or GitLab; another option is to use the Heroku CLI, which is an even faster way to create new projects as well as manage all of your previous projects directly from your command line.

With the Heroku CLI, you can also simply search and add any of the add-ons available on their marketplace to your project, and even test your project locally before deploying it for public access.

What is Deta?

Deta — “the cloud for doers and dreamers” as mentioned on its home page — is a relatively new and fully free cloud service provider. It offers a developer-friendly interface that allows you to deploy your program to the cloud in a matter of seconds. Although the platform currently only supports hosting Node.js and Python projects, support for additional programming languages in the future will not be surprising.

Deta Cloud Platform

Features

Deta Micros

Deta-hosted apps, like Heroku’s Dyno, are called micros; this is a sandboxed Linux virtual machine with over 128MB of RAM for each process execution, as well as a read-only file system with up to 512MB of storage space.

Unlike Heroku, which only allows you to run up to two free dynos, you can create an unlimited number of micros on Deta. However, the size of your application source code and its dependencies cannot exceed 250MB.

Micros currently only supports Node.js and Python. It’s also worth noting that older versions of both languages aren’t supported; this may change in the future, but the following versions are currently supported:

  • Nodejs: 12.x, 14.x
  • Python: 3.7, 3.8, 3.9

Deta Base

Deta isn’t set up to operate with relational databases like Postgres or MySQL, so the team developed their own secure NoSQL database designed specifically for applications hosted on their platform.

Deta Base is a fast and scalable NoSQL database that prioritizes end-user convenience. It has a user interface as well as an SDK that allows you to manage and query records in your database. The database is available as a Javascript, Python, and Go SDK, and the syntax is rather simple. Here’s an example of how to insert and delete records from the database:

const { Deta } = require('deta');

// Project key retrieved from deta dashboard
const deta = Deta('your-project-key'); 

// Connect to or create a new 'users' database.
const users = deta.Base('users'); 

// Add new user to the database.
users.put({name: "Elijah", state: 'Lagos'})

// delete user with key 'one'
const res = await db.delete("one")

Deta Drive

Deta Drive, which is a secure and scalable file storage solution, is another service offered by the platform. It’s quite similar to Deta Base, with the exception that Deta Drive focuses on file/asset management, such as images, videos, and other types of media, whereas Deta Base focuses on data management. All accounts are limited to 10GB of storage, which is a fairly generous offer considering that it is free, and all files stored on the drive can be managed directly from your dashboard or programmatically via their SDK.

Pricing

Unlike Heroku, Deta offers all of its services for free, and you don’t need to provide any credit card details or other sensitive payment information to get started.


More great articles from LogRocket:


Developer Experience

Deta, like Heroku, has its integrated CLI for managing all of your existing projects or creating new ones. Unlike Heroku, Deta currently does not support CI/CD, which means you can’t sync your GitHub or GitLab project to Deta to reflect new changes as they’re pushed.

Final thoughts

Throughout this article, we’ve compared Heroku, one of the most popular cloud service providers, to Deta, a new and completely free option. Both platforms provide excellent services.

However, for the time being, Deta is faster to get things up and running, while Heroku should be considered for enterprise apps. Also, because Deta is still relatively young, we should expect a lot of intriguing updates in the future.

: Full visibility into your web and mobile apps

LogRocket is a frontend application monitoring solution that lets you replay problems as if they happened in your own browser. Instead of guessing why errors happen, or asking users for screenshots and log dumps, LogRocket lets you replay the session to quickly understand what went wrong. It works perfectly with any app, regardless of framework, and has plugins to log additional context from Redux, Vuex, and @ngrx/store.

In addition to logging Redux actions and state, LogRocket records console logs, JavaScript errors, stacktraces, network requests/responses with headers + bodies, browser metadata, and custom logs. It also instruments the DOM to record the HTML and CSS on the page, recreating pixel-perfect videos of even the most complex single-page and mobile apps.

.
Elijah Asaolu I am a programmer, I have a life.

Leave a Reply