Category Archives: golang

Golang patterns. Worker pool

Further reading:

PgBouncer and prepared statements

In our system, we use connection pooler called PgBouncer as a proxy to PostgreSQL. PgBouncer has two main modes Session pooling mode This mode is less performant (it’s a default mode). When a client connects, a server connection will be assigned to it for the whole duration it stays connected. So it does not utilize …

Read more

Golang: testing http and grpc servers

HTTP server is quite easy to test — here is a nice video about it:

How go code is being compiled to assembler code I was interested in comparing line 15 vs line 17 of the following code:

E2E tests in go

I tried it via ginkgo and gomega. It has Agouti with WebDriver support out of the box, but I didn’t use it as we have grpc API. That’s the example (table tests):

ORM for go Never used it as we always write SQL queries manually. But looks okay for ORM (well, actually a query-builder).

How to make grpc call from shell



How to analyze the performance of your go application in production

You should definitely use chi’s middleware for running pprof and stuff in your admin panel. That’s the repo — That’s the profiler —

Using GOPROXY with go mod

Nice list of image resizer libs in go

With speedtests and other nice things. I tried these two: They are quite the same talking about file sizes and imaging is muuch easier to use.