pyflame is an opensource tool developed by uber: https://github.com/uber/pyflame
It can take snapshots of running python process, combined with flamegraph.pl, can output flamegraph picture of python call stacks. Help analyze bottleneck of python program, needn’t inject any perf code into your …
Chapter 4, 5, 6
Encoding formats xml, json, msgpack are text based encoding format, they can’t carry binary bytes (useless you encode them in base64, size grows 33%). And they cary schema definition with data, wast a lot of space.
thrift, protobuf are binary format, can take binary bytes, only carry …
Create virtual resource on AWS is very convenient, but how to manage them will be a problem when your size grow.
You will come to:
How to explain the detail online settings for your colleagues (like: how our prod vpc is setup?what’s the DHCP option set?), navigate around AWS console is okay, but not …
Overview MySQL has buildin partition table support, which can help split data accross multi tables,
and provide a unified query interface as normal tables.
Benefit:
Easy data management: If we need to archive old data, and our table is partitioned by datetime, we can drop old partition directly. …
In this article, let’s talk about ElasticSearch’s cluster mode, which means multi nodes ElasticSearch.
Basic concepts cluster: A collection of server nodes with same cluster.name settings in elasticsearch.yaml
primary shards: Divide a index into multi parts(by default 5), shards of an index can be …