Go Performance

Open-source Go projects categorized as Performance

Top 23 Go Performance Projects

  • Gin

    Gin is a HTTP web framework written in Go (Golang). It features a Martini-like API with much better performance -- up to 40 times faster. If you need smashing performance, get yourself some Gin.

  • Project mention: How to Build and Document a Go REST API with Gin and Go-Swagger | dev.to | 2024-03-08

    Now let’s define the functions that will be called whenever a request hits our API. All the functions will be referencing the context provided by the Gin web framework. Paste the following code below the sample slice we just added to api.go:

  • Fiber

    ⚡️ Express inspired web framework written in Go

  • Project mention: อย่าเพิ่งใช้ fiber ถ้ายังไม่ได้อ่าน doc | dev.to | 2023-10-31
  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • k6

    A modern load testing tool, using Go and JavaScript - https://k6.io

  • Project mention: K6: A modern load testing tool, using Go and JavaScript | news.ycombinator.com | 2024-01-08
  • immudb

    immudb - immutable database based on zero trust, SQL/Key-Value/Document model, tamperproof, data change history

  • Project mention: Ask HN: What is your experience of tamper proof systems? | news.ycombinator.com | 2024-01-05
  • pprof

    pprof is a tool for visualization and analysis of profiling data

  • Project mention: Profiling Caddy | news.ycombinator.com | 2024-02-15

    The pprof format is not tied to Go. From my understanding, it's used within Google across multiple languages. The format is defined in the pprof repository[0], and the visualization tool is source-language agnostic. I've seen libraries in numerous languages (e.g. Python, Java) to publish profiles in pprof format. This is an indicator the pprof format has become de-facto. Grafana Pyroscope[1] is a tool that's capable of parsing the pprof format, agnostic to the source programming language, and has instructions for Go, Java, Python, Ruby, node.js, Rust, and .NET.

    My understanding is that you're searching for a combination of the profiles, metrics, and tracing. Caddy supports all 3.

    [0] https://github.com/google/pprof/blob/main/doc/README.md

    [1] https://grafana.com/docs/pyroscope/latest/

    metrics and tracing need to be manually enabled (for now, perhaps)

  • BigCache

    Efficient cache for gigabytes of data written in Go.

  • ristretto

    A high performance memory-bound Go cache

  • Project mention: Otter, Fastest Go in-memory cache based on S3-FIFO algorithm | news.ycombinator.com | 2023-12-23

    1. Unfortunately, ristretto has been showing hit ratio around 0 on almost all traces for a very long time now and the authors don't respond to this in any way. Vitess for example has already changed it to another cache. Here are two issues about it: https://github.com/dgraph-io/ristretto/issues/346 and https://github.com/dgraph-io/ristretto/issues/336. That is, ristretto shows such results even on its own benchmarks. You can see it just by running hit ratio benchmarks on a very simple zipf distribution from the ristretto repository: https://github.com/dgraph-io/ristretto/blob/main/stress_test.... On this test I got the following:

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • bombardier

    Fast cross-platform HTTP benchmarking tool written in Go

  • plow

    A high-performance HTTP benchmarking tool that includes a real-time web UI and terminal display

  • fortio

    Fortio load testing library, command line tool, advanced echo server and web UI in go (golang). Allows to specify a set query-per-second load and record latency histograms and other useful stats.

  • Project mention: Fortio, load testing library and command line tool | news.ycombinator.com | 2023-06-21
  • statsviz

    🚀 Visualise your Go program runtime metrics in real time in the browser

  • fgprof

    🚀 fgprof is a sampling Go profiler that allows you to analyze On-CPU as well as Off-CPU (e.g. I/O) time together.

  • Project mention: Fgprof – The Full Go Profiler | news.ycombinator.com | 2024-03-05
  • ebpf_exporter

    Prometheus exporter for custom eBPF metrics

  • Trickster

    Open Source HTTP Reverse Proxy Cache and Time Series Dashboard Accelerator

  • goravel

    A Golang framework for web artisans. Tribute to Laravel.

  • Project mention: A Golang framework for web artisans. PHP is so good gophers want to emulate it. | /r/programmingcirclejerk | 2023-07-06
  • atreugo

    High performance and extensible micro web framework. Zero memory allocations in hot paths.

  • encoding

    Go package containing implementations of efficient encoding, decoding, and validation APIs.

  • Project mention: Handling high-traffic HTTP requests with JSON payloads | /r/golang | 2023-12-07
  • kubectl-flame

    Kubectl plugin for effortless profiling on kubernetes

  • Gearbox

    Gearbox :gear: is a web framework written in Go with a focus on high performance

  • cassowary

    :rocket: Modern cross-platform HTTP load-testing tool written in Go (by rogerwelin)

  • any-sync

    An open-source protocol designed to create high-performance, local-first, peer-to-peer, end-to-end encrypted applications that facilitate seamless collaboration among multiple users and devices

  • Project mention: Anytype – open-source, local-first, P2P Notion alternative | news.ycombinator.com | 2023-07-20
  • parca-agent

    eBPF based always-on profiler auto-discovering targets in Kubernetes and systemd, zero code changes or restarts needed!

  • Project mention: Flameshow: A Terminal Flamegraph Viewer | news.ycombinator.com | 2023-09-24

    If that's true, you should probably update the docs. Everything I could find implied dotnet, jvm, python were still unsupported. For example, the roadmap section of the readme mentions most of these but nothing mentions dotnet. However I did find your tickets and a demo being merged in which makes it seem maybe supported?

    Ticket: https://github.com/parca-dev/parca-agent/issues/161

    Demo: https://github.com/parca-dev/parca-demo/pull/18

  • kube-burner

    Kubernetes performance and scale test orchestration framework written in golang

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

Go Performance related posts

Index

What are some of the best open-source Performance projects in Go? This list will help you:

Project Stars
1 Gin 75,469
2 Fiber 31,291
3 k6 23,316
4 immudb 8,481
5 pprof 7,450
6 BigCache 7,192
7 ristretto 5,306
8 bombardier 5,257
9 plow 3,794
10 fortio 3,159
11 statsviz 3,117
12 fgprof 2,755
13 ebpf_exporter 2,018
14 Trickster 1,954
15 goravel 1,924
16 atreugo 1,190
17 encoding 962
18 kubectl-flame 767
19 Gearbox 742
20 cassowary 723
21 any-sync 590
22 parca-agent 476
23 kube-burner 445

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com