Skip to content

Instantly share code, notes, and snippets.

Avatar

Kodai Sakabe koudaiii

View GitHub Profile
View options.go
package main
import "fmt"
// WithPrefix
type prefixOption struct{}
func WithPrefix() interface {
GetOption
View main.go
// Compile with:
// GOOS=linux go build -a --ldflags '-extldflags "-static"' -tags netgo -installsuffix netgo -o dns-example main.go
//
// Run on Kubernetes. Example resolv.conf
//
// # /etc/reslov.conf
// search default.svc.cluster.local svc.cluster.local cluster.local google.internal c.hightowerlabs.internal
// nameserver 10.179.240.10
// options ndots:5
//
@mono0926
mono0926 / commit_message_example.md
Last active Jan 23, 2021
[転載] gitにおけるコミットログ/メッセージ例文集100
View commit_message_example.md
@vasanthk
vasanthk / System Design.md
Last active Jan 23, 2021
System Design Cheatsheet
View System Design.md

System Design Cheatsheet

Picking the right architecture = Picking the right battles + Managing trade-offs

Basic Steps

  1. Clarify and agree on the scope of the system
  • User cases (description of sequences of events that, taken together, lead to a system doing something useful)
    • Who is going to use it?
    • How are they going to use it?
@koudaiii
koudaiii / command_tips.md
Created Jun 24, 2015
Linuxの性能関連のまとめ
View command_tips.md

Linuxの性能関連のまとめ

性能測定コマンド

 sar   :システム稼動状況
 mpstat:CPU稼働状況
 vmstat:仮想メモリ稼働状況
 free  :メモリ情報
 iostat:ハードディスク,CPU使用状況
@koudaiii
koudaiii / gist:3f7c9710de88f7c8eaaa
Created May 29, 2015
Linux OOM Killerについて
View gist:3f7c9710de88f7c8eaaa

##Linux OOM Killerについて

OOMとは?

Linuxは、メモリが不足してシステムが停止する恐れがある際、メモリリソースを多く消費しているプロセスを強制的に殺します。これをOOM Killerといいます。重要なプロセスでも問答無用で殺しにきます。

いるはずのプロセスがある日消えていたのなら、それはOOM Killerに殺されたのかもしれません

確認方法(CentOS)

@koyhoge
koyhoge / gist:b55b331d122dcbcce28e
Last active Aug 29, 2015
LINE Platform Development Chronicle by TOMU TSURUHARAさん 参加メモ
View gist:b55b331d122dcbcce28e

LINEメッセージング基盤の進化

  • 2011年6月 LINEリリース
    • スマートフォンで使いやすいチャットを
    • 早くリリースしようということで2ヶ月程度の開発期間
@koudaiii
koudaiii / gist:0c4838eb7dec89dc8cac
Last active Dec 6, 2020
サーバが重い時、sar(sysstat)で簡易なボトルネック特定 CPUをコアごとに確認する
View gist:0c4838eb7dec89dc8cac

サーバが重い時、sar(sysstat)で簡易なボトルネック特定

sar(sysstat)とは

LoadAverageやCPU使用率、ディスクI/Oの状態を表示できるコマンド。 何より便利なのは、過去にさかのぼれる点。

sarのインストール

View gist:1368b112f837d8dfbce1

mpm関連

パラメータ説明

項番 項目 説明 補足
1 StartServers Apache起動時の子プロセス数 Apache起動時にまずはここで設定された数の子プロセスを起動します
2 MinSpareServers 待機時の最小子プロセス数 子プロセスがMinSpareServersより少なくなったら、この値まで子プロセスを上げます
3 MaxSpareServers 待機時の最大子プロセス数 子プロセスがMaxSpareServersより大きくなったら、この値まで子プロセスを下げます
4 ServerLimit 設定可能なサーバプロセス数の上限 MaxClientsを256以上に設定したい場合はServerLimitも設定する必要があります。また、 MaxClientsの上に書かないと効きません
5 MaxClients 最大の小プロセス数 この数≒最大の同時接続数です