Make sure the people they work with have a quality and constant flow of context about the business and decision being made in other departments, where people are going and what they are doing. So the people they work with can make well informed decisions, exercise their freedom well and keep moving doing things. So they prefer context over control
dev@dev-VirtualBox:~/tmp$ cat /proc/1838/oom_score
50
dev@dev-VirtualBox:~/tmp$ cat /proc/1838/oom_score_adj
0
dev@dev-VirtualBox:~/tmp$ sudo echo '-1000' > /proc/1838/oom_score_adj
dev@dev-VirtualBox:~/tmp$ cat /proc/1838/oom_score_adj
-1000
dev@dev-VirtualBox:~/tmp$ cat /proc/1838/oom_score
0
May 1 21:13:05 dev-VirtualBox kernel: [ 4563.079551] memory-hog-2048 invoked oom-killer: gfp_mask=0x2084d0, order=0, oom_score_adj=0
May 1 21:13:06 dev-VirtualBox kernel: [ 4563.079563] memory-hog-2048 cpuset=/ mems_allowed=0
May 1 21:13:06 dev-VirtualBox kernel: [ 4563.079572] CPU: 0 PID: 6777 Comm: memory-hog-2048 Tainted: G OX 3.13.0-37-generic #64-Ubuntu
May 1 21:13:06 dev-VirtualBox kernel: [ 4563.079578] Hardware name: innotek GmbH VirtualBox/VirtualBox, BIOS VirtualBox 12/01/2006
May 1 21:13:06 dev-VirtualBox kernel: [ 4563.079584] 0000000000000000 ffff880036a27a50 ffffffff8171ed09 ffff8801d1988000
May 1 21:13:06 dev-VirtualBox kernel: [ 4563.079594] ffff880036a27ad8 ffffffff817195c4 0000000000000000 0000000000000000
May 1 21:13:06 dev-VirtualBox kernel: [ 4563.079601] 0000000000000000 0000000000000000 0000000000000000 0000000000000000
May 1 21:13:06 dev-VirtualBox kernel: [ 4563.079609] Call Trace:
May 1 21:13:06 dev-VirtualBox kernel: [ 4563.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
rsync --archive --human-readable --itemize-changes --numeric-ids -z --chmod=ugo=rwX --delete /cygdrive/e/photos /cygdrive/f/avell |
curl http://pkg.ci.collectd.org/pubkey.asc | sudo apt-key add -
sudo bash -c 'echo "deb http://pkg.ci.collectd.org/deb/ trusty collectd-5.5" > /etc/apt/sources.list.d/collectd-ci.list'
sudo apt-get update
sudo apt-get install collectd # This should install collectd version 5.5.x
curl http://pkg.ci.collectd.org/pubkey.asc | sudo apt-key add -
sudo bash -c 'echo "deb http://pkg.ci.collectd.org/deb/ trusty collectd-5.5" > /etc/apt/sources.list.d/collectd-ci.list'
sudo apt-get update
sudo apt-get install collectd # This should install collectd version 5.5.x
git clone --depth 1 https://github.com/brendangregg/FlameGraph.git
cd FlameGraph
# sample CPU stack trace at 99 MHz for 30 secs on PID 15568
sudo perf record -F 99 -p 15568 -g -- sleep 60
# Generating the graph
sudo perf script | ./stackcollapse-perf.pl | ./flamegraph.pl > perf.svg
$ uptime # to see LA (number of processes wanting to run)
$ dmesg | tail # Last 10 system message. Look for error that can cause perf issues
$ vmastat 1 # key server statistics
$ mpstat -P ALL 1: # break CPU statistics per CPU.
$ pidstat 1 # small top that keep printing instead of refreshing
$ iostat -xz 1 # for io stats
$ free -m # memory usage
$ sar -n DEV 1 # network interface throughput
$ sar -n TCP,ETCP 1 #summarized stats of TCP metrics
Create a KV store for network configs
docker-machine create -d virtualbox net-keystore
eval "$(docker-machine env net-keystore)"
docker run --restart=unless-stopped -d -p 8500:8500 -h consul progrium/consul -server -bootstrap
Create 4 hosts with a docker daemon storing network config in the KV store
echo "manager frontend backend store" | xargs -n 1 \
docker-machine create --driver virtualbox \
Dead letter queue
Akka publish message to dlq when:
- akka didn't manage to send message to a local actor
- network connection between two nodes is lost, messages sent to the remote node ends in the dlq
- actor on remote node doesn't exist by the time the message is delivered. Akka sends a message to the dlq on the remote system.
Could use dlq to retry or take action. However it won't guarantee delivery as some message delivery failure won't be detected by Akka and:
- actor doesn't receive message because it is in the process of termination.
- connection failuring during the message transport across the wire.