タグ

2017年8月1日のブックマーク (3件)

  • https://lyft.github.io/envoy/docs/index.html

    y-teraoka
    y-teraoka 2017/08/01
    Envoy っていう多機能 ReverseProxy があるのか、k8s の service discovery とも組み合わせられると
  • ptraceシステムコール入門 ― プロセスの出力を覗き見してみよう! - プログラムモグモグ

    他のプロセスを中断せずに、その出力をミラーリングして新しくパイプで繋ぐ、そんなことはできるのでしょうか。 straceやgdbといったコマンドは一体どういう仕組みで動いているのでしょうか。 ptraceシステムコールを使い、プロセスが呼ぶシステムコールを調べて出力を覗き見するコマンドを実装してみたいと思います。 ptraceシステムコール Linuxを触っていると、いかにプロセスを組み合わせるか、組み合わせる方法をどれだけ知っているかが重要になってきます。 パイプやリダイレクトを使ってプロセスの出力結果を制御したり、コードの中からコマンドを実行して、終了ステータスを取得したりします。 プロセスツリーやプロセスグループを理解し、シグナルやnohupコマンドを使ったりします。 プロセスの扱いに慣れると疑問に持つのがstraceやgdbの仕組みです。 プロセスの実行しているシステムコールを出力し

    ptraceシステムコール入門 ― プロセスの出力を覗き見してみよう! - プログラムモグモグ
  • [Unix command] tc (ネットワークエミュレータ)

    tcコマンドは、Linuxの通信を制御するためのコマンドです(Traffic Controlの略称)。例えば、特定の通信に対して、通信量の上限を設定したりできます。 FedoraやDebian、UbuntuなどのLinuxディストリビューションで利用できます。カーネルのバージョンが2.6以上であればデフォルトで利用できます。 netemというネットワークエミュレータを組み合わせることで、パケットロスや通信遅延をエミュレーションできます。詳細はLinux Foundationのサイトを参照してください。 概要 tcコマンドの背景にあるLinuxカーネルの仕組みは複雑です。以下、簡単にまとめますが、内容が間違っている可能性もあります。詳しくは、公式サイトをご覧ください。 tcコマンドは、qdiscとclassという概念を扱います。qdiscは、パケット出力時のスケジューラのことです。queui