Skip to main content

How we made our Go microservice 24x faster

· 10 min read
John McBride
Sr Software Engineer | AI Engineer

As data intensive backend applications scale and grow, with larger data sets scaled out to higher availability, performance bottlenecks can quickly become major hurdles. Processing requests that once took mere milliseconds can suddenly become multi-minute problems.

In this blog post, let’s take a look at some recent optimization strategies the OpenSauced pizza micro-service recently underwent. This backend service is a Go server that processes git commits by request, sometimes processing thousands of commits in one single request. You can almost think of it as a real time batch processor that can be called by arbitrary clients to fetch and process git commits within an agnostic git repo.

These commits eventually are all indexed within a Postgres database. Most of these optimizations revolve around “batching” the Postgres calls instead of going one by one. For simplicity in our examples, we’ll be using an arbitrary table called “my_table” with data that fits into the “my_data” column. Let’s dive in and take a look at how we can optimize!

Open Source ABCs: Pull Request

· One min read
Bekah Hawrot Weigel
Developer Experience Lead

Welcome to our #100DaysOfOSS series. Until October 31, we'll be doing Open Source Software (OSS) terms from A to Z. We'll be diving into a different letter of the English alphabet, uncovering OSS concepts, and sharing our thoughts on them.

Today, we're covering the letter "P" for Pull Request.

Navigating Spammy and Low-Quality PRs: A Guide for Maintainers

· 4 min read
Bekah Hawrot Weigel
Developer Experience Lead

Open source maintainers are the ultimate utility players, reviewing code, managing community dynamics, defining strategy, writing code, and more. One of the most time-consuming tasks is reviewing Pull Requests (PRs), especially those that are spammy or of poor quality. And although contributors might not realize it, poor-quality contributions can be incredibly costly. So how can maintainers reduce spam and improve the quality of PRs?

Open Source ABCs: open data

· One min read
Bekah Hawrot Weigel
Developer Experience Lead

Welcome to our #100DaysOfOSS series. Until October 31, we'll be doing Open Source Software (OSS) terms from A to Z. We'll be diving into a different letter of the English alphabet, uncovering OSS concepts, and sharing our thoughts on them.

I thought about using OpenSauced and talking about how we're redefining contributions in open source, how we're supporting maintainers creating healthy projects, and how we're fostering a healthy ecosystem for open source, but instead I'll go with open data for the letter "o".

Open Source ABCs: Network

· One min read
Bekah Hawrot Weigel
Developer Experience Lead

Welcome to our #100DaysOfOSS series. Until October 31, we'll be doing Open Source Software (OSS) terms from A to Z. We'll be diving into a different letter of the English alphabet, uncovering OSS concepts, and sharing our thoughts on them.

Today, we're covering the letter "N" for Network.

How to Participate in Hacktoberfest

· 5 min read
Bekah Hawrot Weigel
Developer Experience Lead

The countdown to Hacktoberfest has begun! Hacktoberfest, the month-long open source challenge sponsored by DigitalOcean, rewards contributors who sign up and complete four pull requests to open source projects that have opted into Hacktoberfest every year. It’s a great way to grow with the community, find support, and contribute to open source. Together, let’s walk through how to participate in Hacktoberfest, amplify your experience, and transform your contributions into the story of your journey, career ambitions, and community connections.

Open Source ABCs: Meritocracy

· One min read
Bekah Hawrot Weigel
Developer Experience Lead

Welcome to our #100DaysOfOSS series. Until October 31, we'll be doing Open Source Software (OSS) terms from A to Z. We'll be diving into a different letter of the English alphabet, uncovering OSS concepts, and sharing our thoughts on them.

Today, we're covering the letter "M" for Meritocracy.

Open Source ABCs: Kernel

· One min read
Bekah Hawrot Weigel
Developer Experience Lead

Welcome to our #100DaysOfOSS series. Until October 31, we'll be doing Open Source Software (OSS) terms from A to Z. We'll be diving into a different letter of the English alphabet, uncovering OSS concepts, and sharing our thoughts on them.

Today, we're covering the letter "K" for Kernel.

Open Source ABCs: JavaScript

· One min read
Bekah Hawrot Weigel
Developer Experience Lead

Welcome to our #100DaysOfOSS series. Until October 31, we'll be doing Open Source Software (OSS) terms from A to Z. We'll be diving into a different letter of the English alphabet, uncovering OSS concepts, and sharing our thoughts on them.

Today, we're covering the letter "J" for JavaScript.

Navigating Open Source: My Journey to Contributing and Getting My First freeCodeCamp PR Accepted

· 8 min read
Bekah Hawrot Weigel
Developer Experience Lead

In July, I participated in a “Build in Public” monthly challenge. My goal was to contribute to an open source project that I hadn’t contributed to yet. Luckily, I found my issue pretty quickly and by one of my favorite methods: I let the community know what my goal was and they had a recommendation. Jessica Wilkins is both a member of the community sharing the challenge and a maintainer for freeCodeCamp Developer Quiz Site. When she shared the issue, I immediately said yes. I knew it would let me dust off my coding skills, have support, and contribute to an organization that I have a special connection to-this is where I started learning to code.