タグ

2017年7月31日のブックマーク (7件)

  • ISUCON予選突破の鍵は過去問を解くことなので無料で試せるようにした(Vagrant+Ansible) - このブログはURLが変更になりました

    タイトルでいいきった。 ISUCON5参加者へのアドバイス まもなくISUCON5が開催されますね。 毎年参加して予選突破を果たしている私からのアドバイスは、過去問を解いてチューニング力を高めることが重要です。これホント大事。 過去問やってる? ですが、ISUCONの過去問はAWS用AMIとソースコード一式が用意して提供されているものの結構難しいんですよね。 AWSの利用は課金がつらい(特に学生) AWSの利用はクレジットカードが必要でつらい*1 ソースコードから構築する方法がわからない(AMIの中身を見ないとわからないこと多数) 無料で過去問やろう そこで無料かつ簡単に手元で構築できるよう、VagrantfileとAnsible用Playbookを用意しました。 https://github.com/matsuu/vagrant-isucon/ https://github.com/ma

    ISUCON予選突破の鍵は過去問を解くことなので無料で試せるようにした(Vagrant+Ansible) - このブログはURLが変更になりました
    mizu0x19f
    mizu0x19f 2017/07/31
  • Nginx基礎 ログ 設定いろは - Qiita

    アクセスログ(とか)をTSVにしてみる apacheとかと同じですね。log_formatにcommon(なんでもいい)という名前を付けてそれを出力したいログに対して設定しています。 ちなみに以下では「http_x_forwarded_for」などカスタムヘッダも出力する設定です。 log_format common '$remote_addr\t-\t$remote_user\t[$time_local]\t' '"$request"\t$status\t$body_bytes_sent\t' '"$http_referer"\t"$http_user_agent"\t$http_x_forwarded_for\t$request_time'; location /hoge { access_log /var/log/nginx/site_hoge/access.log common;

    Nginx基礎 ログ 設定いろは - Qiita
    mizu0x19f
    mizu0x19f 2017/07/31
  • MySQLでのSlowLogの分析方法 - Qiita

    概要 サービス開発/運用中に性能問題が発生した際に、DBのSlowLogを見るのは非常に有効なアプローチです。 SlowLogの出し方はRDBMS毎にやり方がありますが、特にMySQLでは単純に遅いQueryを出力するだけでなく、データが取得しやすいようにSlowLogをサマるためのツールが付属しています。 今回はそのツールmysqldumpslowの使い方を紹介します。 SlowLogから分かること SlowLogが出ていない場合、性能問題の原因がDBではない事。 SlowLogが出ている場合、どのQueryが性能問題を引き起こしているのか。 出力されるQueryの閾値をゼロとして全Queryを出力させると、Query毎の登場頻度も確認可能。 mysqldumpslowの使い方 準備 この手順では以下の物が必要となります。 分析対象のSlowLog リードレプリカを作ってる場合、複数のD

    MySQLでのSlowLogの分析方法 - Qiita
    mizu0x19f
    mizu0x19f 2017/07/31
  • ISUCON4 予選でアプリケーションを変更せずに予選通過ラインを突破するの術 - Hateburo: kazeburo hatenablog

    AMIが公開されたのでもう一度やってみた。 AMIについてはこちらのエントリに書かれています ISUCON4 予選問題の解説と講評 & AMIの公開 : ISUCON公式Blog まず ami-e3577fe2 を m3.xlargeで起動します。 CPUは model name : Intel(R) Xeon(R) CPU E5-2670 v2 @ 2.50GHz でした。 とりあえず、MySQLのindexを追加する。init.shに追加 $ cat init.sh cat <<'EOF' | mysql -h ${myhost} -P ${myport} -u ${myuser} ${mydb} alter table login_log add index ip (ip), add index user_id (user_id); EOF ベンチマークツールのhttp keepal

    ISUCON4 予選でアプリケーションを変更せずに予選通過ラインを突破するの術 - Hateburo: kazeburo hatenablog
    mizu0x19f
    mizu0x19f 2017/07/31
  • Linuxサーバにログインしたらいつもやっているオペレーション - ゆううきブログ

    主にアプリケーション開発者向けに、Linuxサーバ上の問題を調査するために、ウェブオペレーションエンジニアとして日常的にやっていることを紹介します。 とりあえず調べたことを羅列しているのではなく、当に自分が現場で使っているものだけに情報を絞っています。 普段使っているけれども、アプリケーション開発者向きではないものはあえて省いています。 MySQLNginxなど、個別のミドルウェアに限定したノウハウについては書いていません。 ログインしたらまず確認すること 他にログインしている人がいるか確認(w) サーバの稼働時間の確認 (uptime) プロセスツリーをみる (ps) NICやIPアドレスの確認 (ip) ファイルシステムの確認(df) 負荷状況確認 top iostat netstat / ss ログ調査 /var/log/messages or /var/log/syslog /

    Linuxサーバにログインしたらいつもやっているオペレーション - ゆううきブログ
    mizu0x19f
    mizu0x19f 2017/07/31
  • ISUCON予選突破を支えたオペレーション技術 - ゆううきブログ

    ISUCONに参加する会社の同僚を応援するために、ISUCONの予選突破する上で必要なオペレーション技術を紹介します。 自分がISUCONに初出場したときに知りたかったことを意識して書いてみました。 一応、過去2回予選突破した経験があるので、それなりには参考になると思います。 といっても、中身は至って標準的な内容です。 特に、チームにオペレーションエンジニアがいない場合、役に立つと思います。 今年のISUCON6は開催間近で、まだ予選登録受付中です。 ※ 文中の設定ファイルなどはバージョンやその他の環境が異なると動かなかったりするので必ず検証してから使用してください。 ISUCONでやること (Goal) ISUCONでやることは、与えられたウェブアプリケーションをとにかく高速化することだけです。 高速化と一口に言っても、複数のゴールがあります。ウェブアプリケーションの場合は以下のようなも

    ISUCON予選突破を支えたオペレーション技術 - ゆううきブログ
    mizu0x19f
    mizu0x19f 2017/07/31
  • ISUCON6予選をC++で参加して予選通過した話

    チーム名「Anago」で @iwiwi, @zuisou, @imos の 3 人で ISUCON6 予選に参加し,幸運にも 1 日目 3 位で通過することができました.@iwiwi が「ISUCON に C++ で参加したい!」と言っており,それを全力バックアップをしようと思ったのがきっかけの参加でした. 前日までにやったこと C++ で全てを書けば最速になるのは自明なのですが,C++ は参考実装として与えられていないだけではなく,HTTP サーバを書くことを想定していない言語のため準備には苦労しました. C++ で HTTP サーバを書く方法は,既存の Web サーバ (e.g., nginx, Apache, H2O) のプラグインを書いて実装するか,FastCGI として実装するか,フルスクラッチで書くかの選択肢が考えられますが,プロセス間通信を避けて爆速にしたかったので,事前に

    mizu0x19f
    mizu0x19f 2017/07/31