ブックマーク / akuwano.hatenablog.jp (21)

  • サイバーエージェントを退職してました - 256bitの殺人メニュー

    どうもどうも乙カレーさまです。 この度9/18が最終出社日となり、サイバーエージェント退職することになりました(籍はもう少しありますが)。 並河さんと退職のタイミングが被っていた事で、きな臭い物を感じていらっしゃる方もいるかもしれませんが、完全に並行で進んでいて、お互いにびっくりした案件になりますw*1 サイバーエージェントでやってきたことを思い返すと、入社した当時はまだアメブロもそれほど流行っていたわけではありませんでした。ただサービスを伸ばしていこうという熱量がすごかったことは今でも覚えています。そんな中で様々なサービスのインフラ部分に関わらせていただくことができました(アメーバピグ、ピグライフ、ガールフレンド(仮)、最近ではAWAなど他にも色々)。 Webサービス、会社が育っていく様をほぼ最初から見ることができたのもラッキーだったなと思っています。 それ以外でも色々な勉強会や講演で

    サイバーエージェントを退職してました - 256bitの殺人メニュー
    qphoney
    qphoney 2015/09/23
  • #isucon 4 に初参加してラッキーパンチで失格になってきました - 256bitの殺人メニュー

    なんで勝負!!!って盛り上がっちゃうんでしょうね。 はい、乙カレー様です。くわのです。 ISUCON4に初参戦してきました! ISUCON毎回みてて面白そうだなーと思っていたんですがなんとなく気が引けたり予定が合わなかったりで出れてなかったのですが、会社でTOTECに参加して6位になったりしてちょっと悔しかったり面白かったりしてきたので今回初参加してきました。 大分記憶が薄くなってしまったので思い出しつつ書いていきます。 @namikawa, @kei2100の3人メンバーででてきました。 言語はNode.jsです。 チームでやったこと(覚えてる限り) とりあえずサーバ環境を見たり、デフォルト状態のRubyのベンチ結果、デフォルトのNode.jsの結果までみて、Nginxのログと、general_log出したりしてクエリ確認してみる。DBはusersとlogin_logしかテーブル無い。

    #isucon 4 に初参加してラッキーパンチで失格になってきました - 256bitの殺人メニュー
    qphoney
    qphoney 2014/10/15
  • 『開発効率をUPする Git逆引き入門』はGitの情報の洪水に飲まれないための浮き輪みたいなものだね。 - 256bitの殺人メニュー

    「Git管理しているファイルをあとから除外対象に設定したい」はい?どうやります? Gitって最初とっつきにくいですよねぇえええ。 Git使い始めた時は概念がよくわかんなくて、これなんなの?どういうことなの?って思いながら使ってました。(今も使えてないけど) その頃は書籍もそんなに無いしWebの情報とDocumentみたり、聞いたりでやってた記憶があります。 『開発効率をUPする Git逆引き入門』を献頂いたので読んだのですが、非常によく出来たGitの書籍だったので紹介させていただこうとこの記事を書いております。 開発効率をUPする Git逆引き入門 作者: 松下雅和,船ヶ山慶,平木聡,土橋林太郎,三上丈晴出版社/メーカー: シーアンドアール研究所発売日: 2014/04/09メディア: 単行(ソフトカバー)この商品を含むブログ (6件) を見る 内容 まず最初に、装丁がカッコイイw と

    『開発効率をUPする Git逆引き入門』はGitの情報の洪水に飲まれないための浮き輪みたいなものだね。 - 256bitの殺人メニュー
    qphoney
    qphoney 2014/04/04
  • MySQL5.5でパーティショニング使って時系列のデータを分散する - 256bitの殺人メニュー

    はい、乙カレーさまです。寒い日が続きますね。 そしてMySQLも続きそうな私です。 前回はトリガをやってみましたが、今度はパーティショニングをしてみます。 パーティショニングとは パーティショニングは、特定のカラム情報を使って、テーブルを論理的/物理的に自動で分ける事で管理を簡単にしたり、パフォーマンスを確保する機能のことです。例えば今回は、更新日時でパーティショニングを行うことで、特定期間のデータを削除する等の運用が簡単になります。 パーテションの設定 プライマリキーの設定 まず既存のテーブルの場合は最初にパーテションを行うカラムがプライマリキーが含まれていないといけないので貼り直します。 mysql> ALTER TABLE usermaster_cs DROP PRIMARY KEY, ADD PRIMARY KEY(user_id, upd_datetime); 新規テーブルの場合

    MySQL5.5でパーティショニング使って時系列のデータを分散する - 256bitの殺人メニュー
    qphoney
    qphoney 2014/02/07
  • 『インフラエンジニアの教科書』この本をなんと呼ぶ?教科書と呼ぶ! - 256bitの殺人メニュー

    ぼくがいわゆる、インフラエンジニア。サーバサイド等をやるエンジニアになった時に何かに詰まったり、気になった事ができた時にGoogleで検索して、良く出てくるページが有ったんです。それは「sanonosa システム管理コラム集」でした。 その頃はインターネット上の情報もそんなに多くなくて、sanonosaさんの知識は幅広いしありがたいなぁ、と思ってました。 それから、ぼくのRSSリーダー(その頃はWebで見れるRSSリーダーってあんまりなかったですねw)には長らく、 @sanonosa さんのブログは入っていたと記憶しています。 その@sanonosa さんの書いたインフラエンジニア向けのが出るということで、もし初心者向けだったとしても買うしかない、と思って即決で買ったが、こちらの『インフラエンジニアの教科書』です。 インフラエンジニアの教科書 作者: 佐野裕出版社/メーカー: シーアン

    『インフラエンジニアの教科書』この本をなんと呼ぶ?教科書と呼ぶ! - 256bitの殺人メニュー
    qphoney
    qphoney 2013/10/31
  • #bpstudy 71さん で「後悔しないもんごもんごの使い方 」という発表しました - 256bitの殺人メニュー

    はい、乙カレー様です。桑野です。 おくれちゃいましたが、7/31に開かれましたbpstudy #71にて発表して参りました。 @matsukaz さんにアプリ側のお話をしていただき、私の方でサーバ側でそもそもユースケースとはどんなものか、というお話をしました。 一部では@takebow さんによる、「運用が楽になる分散データベース Riak」という発表をされていて、運用はホント楽そうだよなーと指をくわえてみたりもしましたw Riakの話はいろんな場所で聞きますが、アーキテクチャが綺麗にまとまっているイメージで、クラスタリングKVSとしてはよっぽどの環境でなければ安定運用できるんじゃないでしょうか。と思っています。 そして、二部では私達が「運用を楽に"したい"分散データベース MongoDB」という事でお話したわけですが、以前のWEB+DB PRESSさんの記事を書いた時にもちょっとブログで

    #bpstudy 71さん で「後悔しないもんごもんごの使い方 」という発表しました - 256bitの殺人メニュー
    qphoney
    qphoney 2013/08/14
  • 『Web+DB Press Vol.75』にMongoDB徹底入門を書かせて頂きました。 - 256bitの殺人メニュー

    はい、おつカレー様です。くわのです。 気づいたらすっげーーーーーーーーーーBlog書いてなくて、やべーなこれって思ったので今後は書いて行こうと思っています(´;ω;`) と、今回も書籍の話だったりするんですが(汁 『Web+DB Press Vol.75』に第2特集としてMongoDB徹底入門を書かせて頂きました。 @matsukazさんと一緒に書いたのですが、僕の日語のおかしい部分をまつかずさんは直してくれたのでぼくは一生頭が上がらないのだと思いますが、そういう意味では僕と一緒に記事を書いた人全てに僕は頭が上がらないのだなと思うと、僕は頭を下向きに固定して生きたほうが生きやすいんじゃないかと、僕は、、、僕はあああぁあぁ! 、、、また取り乱しました。すいません。 特集の内容 読者の対象としては、MongoDBを触ったことない人向けとなっています。 記事の内容は、 MongoDBのユースケ

    『Web+DB Press Vol.75』にMongoDB徹底入門を書かせて頂きました。 - 256bitの殺人メニュー
    qphoney
    qphoney 2013/06/25
  • 『7つのデータベース 7つの世界』はデータベースの海を渡る羅針盤だ。 - 256bitの殺人メニュー

    はい、おつカレー様です。くわのです。 羅針盤だ。とかカッコイイ(そうでもない)事を言ってみた(ドヤァ オーム社さまから出版されております、『7つのデータベース 7つの世界』を献いただきました! オーム社さま、@kdmsnr さんありがとうございました! そこで、ちょっと遅れてしまいました(スイマセン(´Д⊂)が、感想などを書かせて頂きました。 どんな? まず、このがどんなか。というのが気になる所だと思います。 自分はこのに対して、 「データベースと言われているソフトウェアたちがどのようなアーキテクチャで動いているかを知ることによって、適材適所を見つけるためのインデックス」 と理解しました。 内容 このですが、その名前の通りに7つのデータベースについて説明していきます。 PostgreSQL Riak HBase MongoDB CouchDB Neo4J Redis 各データ

    『7つのデータベース 7つの世界』はデータベースの海を渡る羅針盤だ。 - 256bitの殺人メニュー
    qphoney
    qphoney 2013/03/11
  • Munin 2.0にLazy Load Plugin for jQueryを組み込むと快適になる話 - 256bitの殺人メニュー

    はい、おつカレー様です。 くわのです。 Muninという監視ソフトウェアがございます。 こちら、とても使い勝手のいい、ソフトウェアでございまして、プラグインも作りやすいし便利なものなんですが、良くないのが、「1.4だと性的静的なグラフ画像生成のコストがエラい高い」「2.0だとグラフ画像生成は動的にできるけど、画面表示時にガッツリ変換するのでめちゃくちゃ遅い」っていう問題があります。 今回その辺の問題を軽減するためにLazy Load Plugin for jQueryを組み込んでみました。 Muninについて詳しく知りたい方は@zembutsu さんのSlideShareを見ていただけるとありがたいです。 Muninではじめる実践★リソース監視 -俺のサーバがこんなに重いはずがない、を乗り切るために- from Masahito Zembutsu あと、Software Design1月号

    Munin 2.0にLazy Load Plugin for jQueryを組み込むと快適になる話 - 256bitの殺人メニュー
    qphoney
    qphoney 2012/11/16
    性的…!?
  • 「MongoDBのはじめての運用テキスト」を書いてみた - 256bitの殺人メニュー

    MongoDB使いましょって時に、やれ、レプリカセットだの、シャーディングだの、いちいち手順とか教えていくのがめんどくさくなったので、これを見たらコマンド的な手順はひと通りいけますよ。だから後は自分で調べてね、っていう資料をつくってみたのだ。 というわけで、「MongoDBのはじめての運用テキスト」SlideShareにあげました。 MongoDBのはじめての運用テキスト from Akihiro Kuwano 内容 PDFには、以下の様な内容を盛り込んでいます。 インストール レプリカセット構築 シャーディング設定 基的なオペレーション Stat系ツールの見方。 ただし、徐々に古い情報にはなってくると思うので、詳しい情報や、最新の情報を見たい方には公式のWikiなり、ソースなり見ていただくのを推奨いたしますw 意図 以前MongoDBの薄いなどもあって、あれはすごくわかりやすい入門テ

    「MongoDBのはじめての運用テキスト」を書いてみた - 256bitの殺人メニュー
    qphoney
    qphoney 2012/10/24
  • mac osx で bashの補完機能を有効にした話(homebrew経由) - 256bitの殺人メニュー

    はい、おつカレー様です。くわのです。 作業環境がMacになってきたのでその辺忘れないように書くなり。 みんなzshだzshだとかいうんですが、まあ色々覚えるのめんどくさくてw zshってどんだけ便利なのか説教してくれる人を募集しています。 とりあえずbashでも補完機能あるので、これでいってみましょ。 homebrewインストール homebrewは様々なパッケージを簡単にインストールできるやつです。 今ならmacportsはプークスクスらしいのでhomebrewのビックウェーブに乗ります。 mkdir ~/homebrew curl -L https://github.com/mxcl/homebrew/tarball/master | tar xz --strip 1 -C ~/homebrew終わり。 bash 補完のインストール homebrewでbash_completionとし

    mac osx で bashの補完機能を有効にした話(homebrew経由) - 256bitの殺人メニュー
    qphoney
    qphoney 2012/10/18
  • MongoDB Casual Talksが開催されました - 256bitの殺人メニュー

    やりました くるくるとはおもってましたが、まさかここまでのDIS大会になろうとは、、、モヒカンさんたち怖いです、、、! まあでも言われてることはそーですね(苦笑)って思(う|っていた)所がおおいのであるので10genさん頑張って欲しいです。 資料おいておきますね! MongoDBのアレをアレする View more presentations from Akihiro Kuwano いちおー、フォローしとくとw 1.8の頃はしばきたおしたろーと思ったことが多々ありましたが、2.0になってからは大分運用的に厳しい事は減ってきた印象です。 それでもハマる箇所があるのは間違いないですけど(;O;) あとやっぱりNode.jsとの親和性が高いので、そこがなければおそらく使っていないのではというお話もあります。 NoSQLは適材適所ですので、どういうものか知るためにもCappedCollection

    MongoDB Casual Talksが開催されました - 256bitの殺人メニュー
    qphoney
    qphoney 2012/07/09
  • プロのためのLinuxシステム・10年効く技術を読みました - 256bitの殺人メニュー

    技術評論社さんから『プロのためのLinuxシステム・10年効く技術』を献いただきました!ありがとうございます! プロのための Linuxシステム・10年効く技術 (Software Design plus) 作者: 中井悦司出版社/メーカー: 技術評論社発売日: 2012/06/15メディア: 大型購入: 6人 クリック: 88回この商品を含むブログ (18件) を見る 早速読ませていただいたのですが、かなり面白かったので紹介させて頂きます。 内容 何が面白かったかというと、まずこのの構成でしたw 書き出しますが、 一章 知らないと損するぞ! 押さえておきたいLinux内部構造 二章 マシンがないとは言わせない! 仮想化でここまでできるインフラ環境構築 三章 10番勝負! 自作スクリプトでコマンド活用 四章最後の砦! カーネルソースを読む 五章一歩先を行く! RHEL6新機能の総まと

    プロのためのLinuxシステム・10年効く技術を読みました - 256bitの殺人メニュー
    qphoney
    qphoney 2012/06/15
  • #qpstudy 2012.05 でスタッフしました - 256bitの殺人メニュー

    ブログを書くまでが勉強会です。 ということで、ぼくのqpstudyが終わらないのでブログを書かせていただきます。 今回のテーマ 今回はズバリ「ハードウェアにしよう」と言うことになっていました。 5月ということで、”初心者にもやさしい”に立ち戻って新しい新人さんにもいっぱい来てもらおう、という事と、ハードウェアはやはりいろいろな考え方のベースになることなので新人さん向けとしてピッタリでは無いかということで、「エンジニアのためのハードウェア徹底入門」というタイトルで開催させていただきました! 裏テーマ スタッフ内では、今回の勉強会は初心者なのでわかりやすく、、、ということは考えていませんでした。 いろいろ詰め込んで、何か一つでも持ってかえってもらえればいいなと言うことで考えていました。 というのと、実際エンジニアしていて、色々詰め込まれたものから何かを判断しないといけない場面って言うことがまま

    #qpstudy 2012.05 でスタッフしました - 256bitの殺人メニュー
    qphoney
    qphoney 2012/06/04
  • ssコマンドのちょっといい所見てみたい。のでネットワーク統計情報がどの程度見られるか試してみた。 - 256bitの殺人メニュー

    netstatさんが時代遅れだって!? netstat使ってるのは小学生までだよねー。 キャハハk(ry 、、、というのは冗談ですが、これからはssコマンドらしいって聞いたので、どんな感じで使えるか使ってみた。 ssコマンド netstatの代替コマンドらしく、現在の通信状況の確認に使えるコマンドです。 メリットはsocketのrawでのsocketの扱いができる点かなと。 と、ipv6に強いところのようです。 でもあんまりipv6環境ってないですし、普段使いで代替になるかなーと思って見てみました。 基的な使い方 netstatと似た感じっすよ。これ。 netstat # netstat -naot (snip) tcp 0 0 192.168.100111:50271 192.168.10131:27218 ESTABLISHED keepalive (215.43/0/0) tcp

    ssコマンドのちょっといい所見てみたい。のでネットワーク統計情報がどの程度見られるか試してみた。 - 256bitの殺人メニュー
    qphoney
    qphoney 2012/05/15
  • curlでボトルネック調査をする - 256bitの殺人メニュー

    ますだっくすさんが curlのエントリ書いてたのでおいらも1つだけ追記しませう。 Webサイトのボトルネック調査 あるサイトでアクセスが遅いなぁ、って話になったときにまず当たりをつけるために遅い部分を調べたい。 って時のcurlの使い方。 実際の手順 基的には、前述のますだっく(@masudak)さんの、「その3. レスポンスの出力を加工する」であるのですが、詳細な項目を設定することで問題の切り分けにも使用できます。 出力フォーマット用のファイル。 cat <<'EOF' >/tmp/curl_env.txt url_effective\t\t: %{url_effective}\n http_code\t\t: %{http_code}\n http_connect\t\t: %{http_connect}\n time_total\t\t: %{time_total}\n time_

    curlでボトルネック調査をする - 256bitの殺人メニュー
    qphoney
    qphoney 2012/05/09
  • Webエンジニアのためのデータベース技術[実践]入門を献本して頂きました - 256bitの殺人メニュー

    技術評論社さんから『Webエンジニアのためのデータベース技術[実践]入門』(以下DB技術[実践]入門)を献いただきました!ありがとうございます! 内容 内容は、SoftwareDesignや、Web+DB PRESSでの連載していた内容のまとめということで、読んだことのある内容が多いのかなと思って早速読んでみたのですが、 実践。の名前は伊達じゃないなーとおもったのが率直な感想です。ビックリしました。 Webエンジニアのための データベース技術[実践]入門 (Software Design plus) 作者: 松信嘉範出版社/メーカー: 技術評論社発売日: 2012/03/09メディア: 単行(ソフトカバー)購入: 20人 クリック: 486回この商品を含むブログを見る B2Cサービスに近い部分でのデータベース構造についてや、データベースを使用する際のハードウェアに関する知識、サービス運

    Webエンジニアのためのデータベース技術[実践]入門を献本して頂きました - 256bitの殺人メニュー
    qphoney
    qphoney 2012/03/06
    予約した
  • capistrano, tomahawk などから sudo ができなかった場合に確認する項目 - 256bitの殺人メニュー

    どもども。小ネタ投げまくりモードですよ。 capistrano, tomahawkなどのような複数サーバにコマンドを投げるソリューションを使用する場合にこのようなエラーメッセージが出てsudoできない場合があります。 sudo: no tty present and no askpass program specified こちらですが、/etc/sudoers*1にvisiblepwの設定が入ってないために怒られてます。 visiblepw デフォルトでは、ユーザがパスワードを入力しなければならないときに、使用しているターミナルでエコーの抑制ができなかったら、 sudo は実行を拒否するようになっている。これに対し、 visiblepw フラグが設定されていると、パスワードがスクリーンに表示され てしまう場合でも、sudo はプロンプトを出して、パスワードを求める。この動作によって、 r

    capistrano, tomahawk などから sudo ができなかった場合に確認する項目 - 256bitの殺人メニュー
    qphoney
    qphoney 2012/03/02
  • iops確認するための1Liner - 256bitの殺人メニュー

    こんにちわ。 小ネタシリーズです。こんにちわ。 なんか、ふとIOPS(I/O / sec)みたくなることってありますか? DBサーバなんかでピーク時に今どのくらいIOPSさばいてるのか、とか、SSDやらを使ったときにIOPS比どの程度性能でるのか? なんてのはちょっと気になりますよね?ね? iostat -xでもいいんですが、IOPSだけみたいなーってときもあるかと思います。 ということで、sysfsで見てみましょう。 sysfs sysfsはデバイス情報の統計を見るためのインターフェースとなります。 /sys から始まるものがそれで、例えば、sdaデバイスのディスク統計情報は /sys/block/sda/stat になります。 $ cat /sys/block/sda/stat 31004518 150610 2963821867 430429576 2056983249 388527

    iops確認するための1Liner - 256bitの殺人メニュー
    qphoney
    qphoney 2012/02/24
  • ローカルディスクの容量が無いけどtarアーカイブを作りたい時に - 256bitの殺人メニュー

    このディスクの/usr/local以下バックアップしたいんだけど、もうローカルディスクの容量が無い。 てか、ローカルディスクの容量が無いから移したいんだよ!って言う卵が先か鶏が先か理論の時の話。 tarアーカイブを直接標準出力してnetcatでリモートホストで保存する方法。 こういうのも書いといたほうが誰かの役に立つであろうとメモ書き! netcatとは ファイルの内容を標準出力させたり、パイプ経由してファイル書きだしたりするのに使うcatコマンドがありますが、それをTCP,UDP経由で行えるようにするコマンドがnetcat(nc)です。 netcat 待ち受け側(リモートホスト) $ nc -l 12345 > /tmp/send.tgzで12345ポートで待ち受け。 ここに送信されてきたデータを/tmp/send.tgzへリダイレクトする。 netcat 送信側(ローカルホスト) $

    ローカルディスクの容量が無いけどtarアーカイブを作りたい時に - 256bitの殺人メニュー
    qphoney
    qphoney 2012/02/21
    おかあさん知りません