Skip to content

Instantly share code, notes, and snippets.

View toff63's full-sized avatar

Christophe Marchal toff63

View GitHub Profile

Manager role at Netflix:

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.

rsync --archive --human-readable --itemize-changes --numeric-ids -z --chmod=ugo=rwX --delete /cygdrive/e/photos /cygdrive/f/avell

Install collectd on Ubuntu 14.04

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

Install Influxdb on Ubuntu 14.04

Install collectd on Ubuntu 14.04

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

Install rabbitmq on Ubuntu 14.0.4

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 
@toff63
toff63 / Docker-swarm-demo.md
Last active March 7, 2016 08:54
Docker Swarm demo with a frontend, backend and databse. It will use Consul for discovery and KV storage.

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 \
@toff63
toff63 / Akka-dlq.md
Created January 10, 2016 13:46
Akka dlq

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.