Aliaksandr Valialkin
@valyala
Followers
3K
Following
11K
Media
19
Statuses
2K
Why it is preferred to run databases on yourself instead of relying on cloud providers -
8
27
260
Join our Virtual meetup!
1
0
9
Go 1.26 release is going to be great with quality of life improvements at the new() call and performance improvements in the garbage collector!
Go 1.26 is not out yet, but the release notes draft is already up. There are a bunch of changes, but two of them that I find super interesting are 1. `new` can now take an expression as the initial value We can now pass an expression directly to `new` to set the initial value.
1
1
33
Quick benchmark on Prometheus + Loki vs VictoriaMetrics/VictoriaLogs: With just ~10h of data from a 10-node simulation cluster, the Prom+Loki stack already consumed more resources than Victoria does for an entire day. But the real win? Dashboard RT dropped dramatically.
1
1
6
"Docker Compose doesn't scale." Neither does your app. You have 500 requests per day. Docker Compose on a single server handles 50,000. But you chose Kubernetes because: - "Industry standard" - "Resume building" - "Future proofing" - "The blog said so" Now you have: -
34
20
345
VictoriaMetrics v1.132.0 contains an optimized OpenTelemetry protocol parser, which is up to 6x faster than the previous one. I don't like OpenTelemetry protocol for metrics because it is over-engineered and bloated, but it was fun optimizing the OTEL metrics' parser with the
github.com
Simple building blocks for protobuf marshaling and unmarshaling - VictoriaMetrics/easyproto
4
20
178
Sometimes I use `go tool pprof` for investigation of CPU and memory profiles via command line interface. I actively use the `list` command for inspecting the source code from profiles. The `list` command didn't work for common cases such as: - Listing sources from Go standard
github.com
The current heuristic for locating the source code for profile functions doesn't work in the following cases when running pprof with default options: It cannot find source code for standa...
2
2
59
Did you notice that the majority of widely known outages (hello, AWS and CloudFlare) happen because of software errors or improper configs. Very few outages happen because of hardware issues (the last widely known outage was when OVH datacenters burnt in fire in March 2021).
18
11
127
VictoriaLogs v1.40.0 improves parsing speed for logs ingested via OpenTelemetry protocol by up to 10x (e.g. it reduces CPU usage by up to 10x)! Big thanks to @vadimaleksv for the pull request https://t.co/vRu7WIrsP3 !
github.com
Describe Your Changes TODO: Properly encode nested arrays Tests Also added more test cases compared to master to cover all decoding cases. Also fixed a case that behaved differently compared to...
6
9
87
You split your monolith into 47 microservices. Now you have: - 47 deployment pipelines to maintain - 47 different ways to handle logging - Distributed tracing you don't understand - Network calls that used to be function calls - A debugging nightmare when anything breaks Your
75
90
1K
If you want increasing availability of your system even more, then split it into independent cells, which do not communicate with each other. Then a failure in a single cell won't affect other cells. See
Cell-based architecture is the best for achieving linear scalability and decent reliability in distributed systems. A cell is a self-contained isolated system, which doesn't know about other systems and doesn't initiate communications with other systems. All the services inside
0
1
7
There is a common misconception - many people assume that distributed cluster systems are highly available systems (aka "cluster = HA"). The system is available while it serves incoming workload without externally visible issues. The availability of a single-node system depends
5
4
54
AI bots like using ✅ char in their replies. This allows quickly identifying the most popular AI bots used in public GitHub repos during the last month, via the following LogsQL query over https://t.co/gow1BYYruO data:
play-vmlogs.victoriametrics.com
Explore your log data with VictoriaLogs UI
0
0
13
Can you imagine #monitoring your #Kubernetes clusters without spending a ton? At KCD Warsaw, our co-founder and CTO, Aliaksandr Valialkin @valyala explains how to build cost-efficient #observability that’s fast, lean, and scalable. He also shares best practices for using
0
4
13
Sometimes I receive private messages and emails from engineers who want to become a part of the VictoriaMetrics team. The best and the most reliable way to become our team member is to start helping other users with VictoriaMetrics products via GitHub issues, public Slack and
3
8
86
The question is why it is configured via hard-to-find annotations instead of the expected "limits" section where memory and CPU limits are configured?
2
0
3
Update - it has been appeared that Kubernetes has an experimental feature for network bandwidth limits -
kubernetes.io
Kubernetes reserves all labels, annotations and taints in the kubernetes.io and k8s.io namespaces. This document serves both as a reference to the values and as a coordination point for assigning...
1
0
9
This is a follow-up for
Kubernetes automatic container rescheduling sounds great until 3am when it bites you: - pods land on nodes with slow disks killing performance - forgot node selector for the ssd label - all replicas end up on the same node after cascading failures, then that node dies - forgot
0
0
7