Search overlay panel for performing site-wide searches
Salesforce (Heroku) Named a Leader. Learn More!

Heroku Blog

Your app is slow. It does not spark joy. This post will use memory allocation profiling tools to discover performance hotspots, even when they're coming from inside a library. We will use this technique with a real-world application to identify a piece of optimizable code in Active Record that ultimately leads to a patch with a substantial impact on page speed.

In addition to the talk, I've gone back and written a full technical recap of each section to revisit it any time you want without going through the video.

I make heavy use of theatrics here,…

Moving shipping containers is heavy work. Moving a traditional industry into the digital age is a different kind of heavy job. Software development agency GNAR took on the challenge and built an ops management platform for RMS Intermodal , one of the largest rail yard operators in the U.S. Their IoT solution gave RMS a data-driven view of their operations for the first time, resulting in a whole new definition of “efficiency” for the company.

Serendipity manifests a new idea

It all started at a wedding. GNAR Founder Brandon Stewart found himself chatting…

There are always challenges when it comes to debugging applications. Node.js' asynchronous workflows add an extra layer of complexity to this arduous process. Although there have been some updates made to the V8 engine in order to easily access asynchronous stack traces, most of the time, we just get errors on the main thread of our applications, which makes debugging a little bit difficult. As well, when our Node.js applications crash, we usually need to rely on some complicated CLI tooling to analyze the core dumps.

In this article, we'll take a look at some easier ways to…

YAML files dominate configuration in the cloud native ecosystem. They’re used by Kuberentes, Helm, Tekton, and many other projects to define custom configuration and workflows. But YAML has its oddities, which is why the Cloud Native Buildpacks project chose TOML as its primary configuration format.

TOML is a minimal configuration file format that's easy to read because of its simple semantics. You can learn more about TOML from the official documentation , but a simple buildpack TOML file looks like this:

api = "0.2"

[buildpack]
id = "heroku/maven"
version = "1.0"
name = "Maven"

Unlike YAML, TOML doesn’t rely on significant whitespace…

In today's global economy, English proficiency unlocks opportunity. People all over the world are motivated to improve their English skills in order to make a better life for themselves and their families. Cambly is a language education platform that helps millions of learners advance their careers by connecting them with English-speaking tutors from a similar professional background.

For many language learners, speaking is often the hardest skill to improve in a classroom setting. Conversation time is limited, and students tend to practice with each other rather than with a teacher. Some students may not have a…

I work on Heroku’s Runtime Infrastructure team, which focuses on most of the underlying compute and containerization here at Heroku. Over the years, we’ve tuned our infrastructure in a number of ways to improve performance of customer dynos and harden security.

We recently received a support ticket from a customer inquiring about poor performance in two system calls (more commonly referred to as syscalls) their application was making frequently: clock_gettime(3) and gettimeofday(2) .

In this customer’s case, they were using a tool to do transaction tracing to monitor the performance of their application. This tool made many…

Subscribe to the full-text feed.