How To Reduce CPU Consumption Caused by Garbage Collection

All the modern programming languages such as Golang, Node.js, Java, .NET, Python, etc. do automatic garbage collection to remove unreferenced objects from memory. While this automatic garbage collection provides convenience to developers, it can come at a cost: excessive CPU consumption. The constant cycles devoted to garbage collection cause a couple of side effects:

  1. Degradation in application’s performance: Since CPU cycles are constantly channeled to garbage collection, the overall application’s performance will get impacted.
  2. Increase cloud hosting cost: It increases your cloud hosting cost. In an effort to reduce cloud hosting costs, recently, Uber tuned their garbage collection to reduce CPU utilization.

In this article, we delve into five effective strategies that can help alleviate this concern, enabling developers to optimize application performance and mitigate the impact on hosting expenses. Smiling computer

How Many Millions of Dollars Do Enterprises Waste Due to Garbage Collection?

We truly believe enterprises are wasting millions of dollars in garbage collection. We equally believe enterprises are wasting these many millions of dollars even without knowing they are wasting. The intent of this post is to bring visibility to how several millions of dollars are wasted due to garbage collection.

What is Garbage?

All applications have a finite amount of memory. When a new request comes, the application creates objects to service the request. Once a request is processed, all the objects created to service that request are no longer needed. In other terms those objects become garbage. They have to be evicted/removed from the memory so that room is created to service new incoming requests.

How to Back Up and Restore a 10-TB Cluster at 1+ GB/s

Backing up or restoring large-scale distributed databases is time-consuming. When it takes a lot of time to backup or restore a database, Garbage Collection might break the snapshot used in the backup or restore process. Thus, some changes might be missing. This threatens data safety.

As an open-source, distributed SQL database, TiDB fulfills the requirement for backing up and restoring large-scale clusters. TiDB 4.0 release candidate (RC) introduced Backup & Restore (BR), a distributed backup and restore tool, that offers high backup and restore speeds—1 GB/s or more for 10 TB of data.

Java 9 Performance Improvements — Getting Started With Java Spring

In my previous article, I wrote about the Modularity System, which was introduced in Java 9. This was the most major feature of the release, but there are other significant ones which worth to mention. With this writing, I would like to continue the Java evolution line by taking a glance about the main Java 9 features according to the performance improvements.

Java 9 Feature: Performance Improvements

Garbage Collector Deprecations

In Java 9, the most significant performance upgrade was concerned with the Garbage Collection. They introduced a new default one and removed the olds.