# Benchmark of Infisical KMS Port In Go

**URL:** <https://community.infisical.com/t/benchmark-of-infisical-kms-port-in-go/54>\
**Category:** KMS\
**Created:** [September 10, 2026, 7:06am UTC](https://community.infisical.com/t/benchmark-of-infisical-kms-port-in-go/54 "2026-09-10T07:06:12Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![sirajuddin](https://yyz2.discourse-cdn.com/flex048/user_avatar/community.infisical.com/sirajuddin/32/65_2.png) [@sirajuddin](https://community.infisical.com/u/sirajuddin)\
**Post date:** [September 10, 2026, 7:06am UTC](https://community.infisical.com/t/benchmark-of-infisical-kms-port-in-go/54/1 "2026-09-10T07:06:12Z")

</div>

Infisical port to Go would reduce the baseline resources required for self deployed instances

I worked on redesigning the Infisicial KMS backend that acheives sub 5ms latency ,  
The key points from benchmark

- 3x faster than ts at p90 latency , p95,p99 are an order of magnitude faster , where ts showed 500ms response times
- \<30Mib memory footprint at 500req/s with 60s test time, sign/verify/crud most variance of operations covered in test
- 92x less active memory footprint than TS , ts took \>1500Mib to serve same volume at 500req/s
- Architeture based on Microservices , Raft Consensus

Some of async features , auditlog , posthog event logging when included in Go , currently they are not , the relative memory increase would be in few Mib ,  
Latency impact from async jobs goes neglible , and sub 7ms is sustainable guarentee by GO in the tested env

The process of rewriting took a month , and Handwritten for all backend codebase

There is a fully benchmark , Source Code , Write Up on the calculation and local setup guides  
I can say by sure that all the infisical KMS endpoints in Go are logically consistent with TS backend , ready to serve as drop in replacement

 ![rearchitecting-ts-to-go-youtube-thumbnail](https://canada1.discourse-cdn.com/flex048/uploads/infisical1/original/1X/bc68d972bfd6b70f1908c36f9d32730ebfdff3f2.png)

I wish this finds useful in process of rewriting Infisical KMS services in Go

---

<div class="post-metadata">

**Author:** ![sirajuddin](https://yyz2.discourse-cdn.com/flex048/user_avatar/community.infisical.com/sirajuddin/32/65_2.png) [@sirajuddin](https://community.infisical.com/u/sirajuddin)\
**Post date:** [September 10, 2026, 7:28am UTC](https://community.infisical.com/t/benchmark-of-infisical-kms-port-in-go/54/2 "2026-09-10T07:28:08Z")

</div>

Full Read At : [Siraj Uddin on X: "I spent a month of fully writing by Hand, an Key Management service Typescript port to Go &lt; 5ms sustatinable performance is plausible with Go where Ts was giving &gt;300ms at p95 latency with 3 replicated instances https://t.co/GqaY3vwDNw" / X](https://x.com/sirajuddin__sk/status/2097948580283830410)  
Full Benchmark report at:

> <https://github.com/Shaik-Sirajuddin/infisical/blob/kms-go/e2e/load_test_report.md>
