~/devreads

#performance optimization

49 posts

9 Dec 2025

Guna Chandra Durgapu 24 min read

Context Ambitious goal and the scope of the problem We were chasing a critical, futuristic business requirement for our big data pipelines achieving “1-day planning,” defined as a total execution window of 24 hours or less . The entire process is extensive, processing a 7TB data volume each cycle across 19 distinct plans (16 Spark pipelines and 3 Data Science…

big-dataapache-sparkperformance-optimization

5 Nov 2025

4 Nov 2025

Richard Schneeman 5 min read

The Performance Penalty of Repeated Connections Before the latest improvements to the Heroku Router, every connection between the router and your application dyno risked incurring the latency penalty of a TCP slow start. To understand why this is a performance bottleneck for modern web applications, we must look at the fundamentals of the Transmission Control […] The post Learn How…

engineeringperformance optimization

8 Sept 2025

Su Glasgo 5 min read

When Production Goes Sideways Imagine this: It’s 2 AM, your phone buzzes with an alert, and your dashboards are screaming. Production is down. Sound familiar? An automated health check has failed, and your internal dashboards are showing a spike in errors. You’ve just pushed a new release that included a critical database schema change, and […] The post Triage and…

engineeringcloud infrastructurefiropentelemetryperformance optimization

29 May 2025

Jonathan Brown 4 min read

We’re excited to announce the general availability of Heroku Postgres version 17, packed with new features and enhancements to your database performance. And that’s not all – we’re also introducing a game-changing feature that streamlines your upgrade experience. This new method of version upgrade is now the default, so you can try it to upgrade […] The post Heroku Postgres…

newsdatabaseheroku postgresperformance optimizationplatform updates

21 May 2025

Andrew Fawcett 10 min read

SignalR makes it easy to add real-time functionality to .NET web applications—things like live chat, instant notifications, or interactive dashboards. But what happens when your app starts to grow? A single server can only take you so far. At some point, you’ll need to take advantage of SignalR scaling features to scale out your app. […] The post SignalR Scalability:…

engineering.netdeveloper toolsguideperformance optimization

13 May 2025

Julián Duque 6 min read

Logging is the unsung hero of enterprise operations—quietly saving the day, one log line at a time. Imagine trying to maintain successful applications without knowing what’s happening inside them. This would be like flying a plane blindfolded at night, in a storm, with no instruments. Spoiler alert: Neither scenario would end well! Today’s distributed systems […] The post Optimizing Enterprise…

ecosystemcloud infrastructureperformance optimizationprivate spacessecurity compliance

4 Mar 2025

Kim Harrison 2 min read

Managing event-driven architecture can be challenging. For many organizations, this includes a diverse set of eventing services and buses, often across multiple organizations. Developers must manage authentication and pub/sub services across teams and applications. We’re thrilled to introduce Heroku Eventing, a powerful tool designed to help teams manage events more efficiently and securely. This new […] The post Heroku Eventing:…

newsapp architectureeventsperformance optimizationproduct features

9 Oct 2024

Julián Duque 5 min read

If your cloud application performs poorly or is unreliable, users will walk away, and your enterprise will suffer. To know what’s going on inside of your million-concurrent-user application (Don’t worry, you’ll get there!), you need observability. Observability gives you the insights you need to understand how your application behaves. As your application and architecture scale […] The post Best Practices…

ecosystemadd-onsperformance optimizationproduct features

8 May 2024

Ethan Limchayseng 3 min read

Introduction: We’re excited to announce public beta support for HTTP/2 on both Heroku Common Runtime and Private Spaces. HTTP/2 support is one of the most requested and desired improvements for the Heroku platform. HTTP/2 is significantly faster than HTTP 1.1 by introducing features like multiplexing and header compression to reduce latency and therefore improve the […] The post Improved Heroku…

newsapp architecturecloud infrastructuredynosperformance optimization

28 Mar 2024

Ethan Limchayseng 4 min read

Introduction Heroku is excited to introduce nine new dyno types to our fleets and product offerings. In 2014, we introduced Performance-tier dynos, giving our customers fully dedicated resources to run their most compute-intensive workloads. Now in 2024, today’s standards are rapidly increasing as complex applications and growing data volumes consume more memory and carry heavier […] The post Expanded Memory…

newscloud infrastructuredatadynosperformance optimization

23 Jan 2024

Vivek Viswanathan 2 min read

Heroku is improving the cost-effectiveness of Heroku Enterprise with the addition of Basic dynos. Now, Enterprise customers can unlock the power of Basic dynos on the Common Runtime. Basic dynos enable seamless app development and testing on the Heroku platform in the most efficient and cost-effective way. As part of our efforts to simplify our […] The post Innovating on…

newsdynosheroku enterpriseperformance optimization

17 Feb 2023

Andre Soto 6 min read

2022 was a transformational year for Heroku. In this post, we share how we’ve been enriching the Heroku developer experience in 2022, especially since committing to Heroku’s Next Chapter. We are dedicated to supporting our customers of all sizes who continue to invest and build their projects, careers, and businesses on Heroku. Public Roadmap As […] The post Heroku 2022…

newsdataeducationopen sourceperformance optimization

5 Oct 2021

Ethan Limchayseng 3 min read

Since April 2021, the Heroku Runtime team has been working to deploy upgrades to the infrastructure powering Common Runtime apps, and we’re excited to formally announce the performance improvements that customers are already seeing. When this Changelog post was published in May introducing the changes, almost all Common Runtime apps had been migrated from what […] The post Faster Dynos…

newscloud infrastructuredynosperformance optimizationplatform updates

14 Apr 2021

Sally Vedros 7 min read

Every entrepreneur wonders: “Will my startup sink or swim?” When Felix Brandon and his wife Jordan Lloyd Bookey launched Zoobean, a startup focused on children’s reading, they found themselves swimming in rough waters early on. A few months after launch, the founders were invited to pitch their business on the TV show Shark Tank. What […] The post How Heroku’s…

lifeadd-onscustomerseducationperformance optimization

1 Oct 2020

Damien Mathieu 4 min read

Incidents are inevitable. Any platform, large or small will have them. While resiliency work will definitely be an important factor in reducing the number of incidents, hoping to remove all of them (and therefore reach 100% uptime) is not an achievable goal. We should, however, learn as much as we can from incidents, so we […] The post How I…

engineeringcloud infrastructuredeveloper toolsperformance optimizationsecurity incidents

16 Sept 2020

Richard Schneeman 14 min read

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 […] The post The Life-Changing…

engineeringcloud infrastructuredeveloper toolsperformance optimizationruby

16 Jul 2020

Will Farrington 3 min read

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 […] The post Making Time…

engineeringcloud infrastructuredeveloper toolsperformance optimization

Michael Friis 2 min read

Today we’re sharing three performance enhancements that we have recently rolled out to apps running in Private Spaces: Dynos upgraded to the latest generation infrastructure for 10-15% perf improvement More consistent performance for Small Private and Shield Space dynos Optimized clock source selection Heroku is a fully managed platform-as-a-service (PaaS) and we work tirelessly to […] The post Container and…

newsdeveloper toolsheroku enterpriseperformance optimizationprivate spaces

29 May 2020

Charlie Gleason 1 min read

We are living in unprecedented times, and many of us are grappling with a really similar set of complicated and, at times exhausting, emotions. I’ve been thinking about this a lot since my conversation with Margaret Francis, the SVP of Platform Data Services at Salesforce and former Heroku GM, in our recent podcast for Code[ish]. […] The post Climbing Up…

lifedeveloper toolsperformance optimization

18 Dec 2019

Julián Duque 24 min read

This blog post is adapted from a talk given by Julián Duque at NodeConf EU 2019 titled “Let it crash!.” Before coming to Heroku, I did some consulting work as a Node.js solutions architect. My job was to visit various companies and make sure that they were successful in designing production-ready Node applications. Unfortunately, I […] The post Let It…

engineeringdeveloper toolsjavascriptnode.jsperformance optimization

28 Aug 2019

Corey Purcell 3 min read

As outlined in a previous blog post, Heroku Data services undergo routine maintenances for security and patching. In this post, we describe the process used to minimize downtime for Heroku Postgres and Heroku Redis premium ‘High Availability’ plans and how we optimized the process to perform up to 75% faster. Data Services Architecture High availability […] The post Up to…

engineeringdatabaseperformance optimizationpostgresredis

12 Jul 2019

Richard Schneeman 8 min read

For quite some time we've received reports from our larger customers about a mysterious H13 – Connection closed error showing up for Ruby applications. Curiously it only ever happened around the time they were deploying or scaling their dynos. Even more peculiar, it only happened to relatively high scale applications. We couldn't reproduce the behavior […] The post Puma 4:…

engineeringcloud infrastructuredeveloper toolsperformance optimizationruby

11 Jul 2019

Ali Hamidi 6 min read

This blog post is adapted from a talk given by Ali Hamidi at Data Council SF ’19 titled “Operating Multi-Tenant Kafka Services for Developers on Heroku.” Thousands of developers use Heroku’s Apache Kafka service to process millions of transactions on our platform—and many of them do so through our multi-tenant Kafka service. Operating Kafka clusters at this scale requires […]…

engineeringapache kafkaapp architecturecloud infrastructureperformance optimization

15 Apr 2019

Jonan Scheffler 10 min read

Setting up a database is a relatively straightforward process (Heroku has an add-on for that), but getting it to run well in production is sometimes another matter. As your application grows and your data grows along with it, you will likely find a number of performance bottlenecks specifically related to your database, and this post […] The post Optimizing Database…

engineeringdatabasedeveloper toolsperformance optimizationpostgres

20 Mar 2019

Amy Unger 25 min read

This blog post is adapted from a talk given by Amy Unger at RailsConf 2018 titled "Knobs, buttons & switches: Operating your application at scale." We've all seen applications that keel over when a single, upstream service goes down. Despite our best intentions, sometimes an unexpected outage has us scrambling to make repairs. In this […] The post Seven Ways…

engineeringdeveloper toolsperformance optimizationrailsruby

16 Oct 2018

Richard Schneeman 9 min read

Rails applications that use ActiveRecord objects in their cache may experience an issue where the entries cannot be invalidated if all of these conditions are true: They are using Rails 5.2+ They have configured config.active_record.cache_versioning = true They are using a cache that is not maintained by Rails, such as dalli_store (2.7.8 or prior) In […] The post Cache Invalidation…

engineeringdeveloper toolsperformance optimizationrailsruby

27 Jun 2018

Camille Baldock 4 min read

Over the past few weeks, Heroku proactively updated our entire Redis fleet with a version of Redis not vulnerable to CVE-2018-11218. This was an embargoed vulnerability, so we did this work without notifying our customers about the underlying cause. As always, our goal was to update all Heroku Redis instances well before the embargo expired. […] The post Rolling the…

engineeringheroku key-value storeperformance optimizationredissecurity incidents

18 Jan 2018

Camille Baldock 3 min read

Today, we’re excited to announce a major update to Heroku Postgres with a new lineup of production plans. These plans are the first component of Heroku Postgres PGX, the next generation of our managed Postgres solution. PGX Plans introduce larger database sizes, more generous resource allocations, and a broader set of options to suit your […] The post Heroku Postgres…

newsperformance optimizationplatform updatespostgres

26 Oct 2017

Robert Zare 4 min read

Today we are pleased to announce a significant update to Heroku Connect, one that is a culmination of two years of work to improve every aspect of the service. We’ve focused on three primary areas: improving write speed, geographically expanding the service, and intelligently guiding design and troubleshooting workflows. To that end, we’ve enabled bulk […] The post Heroku Connect…

newsdataheroku connectintegrationsperformance optimization

11 Jul 2017

Richard Schneeman 9 min read

I recently demonstrated how you can use Rack Mini Profiler to find and fix slow queries. It’s a valuable tool for well-trafficked pages, but sometimes the slowdown is happening on a page you don't visit often, or in a worker task that isn't visible via Rack Mini Profiler. How can you find and fix those […] The post Using Heroku’s…

newsdatabaseperformance optimizationpostgresruby

22 Dec 2016

2 Aug 2016

Michelle Peot 3 min read

Today we’re announcing two new features that will help you better manage and run apps on Heroku: Threshold Alerting and Hobby dyno metrics. Threshold Alerting provides the ability to set notification thresholds for key performance and health indicators of your app. We’ve also extended basic Application Metrics to Hobby dynos to provide basic health monitoring […] The post Threshold Alerting…

newsdeveloper toolseducationperformance optimization

7 Jul 2016

Chris Castle 4 min read

Based in Budapest, Hungary, Andras Fincza (Head of Engineering) and Rafael Ördög (Technical Lead) work for Emarsys, a global marketing automation platform. Read our Emarsys customer story to learn more about their migration experience on Heroku. How did you introduce microservices at Emarsys? We take an evolutionary approach to our architecture. Our marketing automation platform […] The post How Emarsys…

newsapp architecturejavascriptnode.jsperformance optimization

27 May 2016

Tom Crayford 6 min read

At Heroku, we’re always striving to provide the best operational experience with the services we offer. As we’ve recently launched Heroku Kafka, we were excited to help out with testing of the latest release of Apache Kafka, version 0.10, which landed earlier this week. While testing Kafka 0.10, we uncovered what seemed like a 33% […] The post Apache Kafka…

engineeringapache kafkaperformance optimization

26 May 2016

Andrew Gwozdziewycz 11 min read

For almost two years now, the Heroku Dashboard has provided a metrics page to display information about memory usage and CPU load for all of the dynos running an application. Additionally, we’ve been providing aggregate error metrics, as well as metrics from the Heroku router about incoming requests: average and P95 response time, counts by […] The post Heroku Metrics…

engineeringdata analyticsperformance optimizationproduct features

12 May 2016

1 Mar 2016

Damien Mathieu 1 min read

I spend most of my time at Heroku working on our support tools and services; help.heroku.com is one such example. Heroku’s help application depends on the Platform API to, amongst other things, authenticate users, authorize or deny access, and fetch user data. So, what happens to tools and services like help.heroku.com during a platform incident? […] The post Incident Preparation:…

engineeringapisdeveloper toolsperformance optimization

22 Feb 2016

20 Aug 2015

Brett Goulder 3 min read

Last year, we launched the original Performance dyno, designed to support the largest apps running at-scale with more consistent service and faster response times. Today, with the goal of continuing to support our fast growing customers with more flexibility to choose the type of dynos best for their applications, we are excited to announce improvements […] The post Introducing Improved…

newsdynosperformance optimizationproduct features

6 Aug 2015

30 Jul 2015

Kevin Thompson 3 min read

Earlier this month, the OpenSSL project team announced that three days later it would be releasing a new version of OpenSSL to address a high-severity security defect. In the end, this vulnerability resulted in another non-event for our customers, but we thought it might be useful and informative to share the process we went through […] The post Preparing Our…

engineeringperformance optimization

30 Jun 2015

Pedro Belo 4 min read

Fun fact: the Heroku API consumes more endpoints than it serves. Our availability is heavily dependent on the availability of the services we interact with, which is the textbook definition of when to apply the circuit breaker pattern. And so we did: Circuit breakers really helped us keep the service stable despite third-party interruptions, as […] The post Improved production…

engineeringapisdeveloper toolsperformance optimization

7 May 2015

Peter van Hardenberg 2 min read

Heroku comes from and is built for the developer community; the values of experimentation, openness and accessibility have been part of the product from day one, and continue to drive its development. From our first days, we have provided a free tier that followed in the tradition of making it as easy and fun as […] The post Heroku’s Free…

newsdynosperformance optimizationproduct features

4 Feb 2015

Koichi Sasada 10 min read

This article introduces incremental garbage collection (GC) which has been introduced in Ruby 2.2. We call this algorithm RincGC. RincGC achieves short GC pause times compared to Ruby 2.1. About the Author: Koichi Sasada works for Heroku along with Nobu and Matz on C Ruby core. Previously he wrote YARV Ruby's virtual machine, and he […] The post Incremental Garbage…

engineeringdeveloper toolsperformance optimizationruby

5 Dec 2014

Damien Mathieu 4 min read

Working with our support team, I often see customers having timeout problems. Typically, their applications will start throwing H12 errors. The decision to timeout requests quickly wasn’t made to avoid having long-running requests on our router, nor to only have fast apps on our platform, but because standard web servers do not handle these types […] The post Short Time…

engineeringdeveloper toolsperformance optimization

3 Nov 2014

Richard Schneeman 3 min read

Performance is important, and if we can’t measure something, we can’t make it fast. Recently, I’ve had my eye on the ActionDispatch::Static middleware in Rails. This middleware gets put at the front of your stack when you set config.serve_static_assets = true in your Rails app. This middleware has to compare every request that comes in […] The post Benchmarking Rack…

engineeringperformance optimizationrailsruby

5 Aug 2014

Rand Arete 4 min read

At Heroku, we’re focused on delivering thoughtfully designed systems to improve developer productivity and experience. We firmly believe that improving the development and operations experience helps developers to build and run better apps. This improvement allows developers to focus more on functionality, and businesses to focus more on the value of their applications. Today we […] The post New Heroku…

newsdeveloper toolsperformance optimizationproduct features

12 Feb 2014

John Simone 2 min read

Flow is an important part of software development. The ability to achieve flow during daily work makes software development a uniquely enjoyable profession. Interruptions in your code/test loop make this state harder to achieve. Whether you are running unit tests locally, launching a local webserver, or deploying to Heroku there's always some waiting and some […] The post Git Push…

newsbuildpacksdeveloper toolslanguagesperformance optimization