do7be.exports

エッセンシャルガチ草トメィトゥ

回らない寿司食べ放題に行ってきた

築地で寿司をたらふく食いたい

そう思ったので土曜祝日限定3500円で寿司食べ放題をやっているぎんざ まぐろやさんに知人と2人で行ってきました。

tabelog.com

  • 開店は11:00
  • 並び始めたのが10:50
  • 整理のための紙にはすでに23組分書いてありました/(^o^)\

そして待つこと2時間強…

ついに13時すぎに入店することができました!

中に入ると板前さんが2人でものすごいスピードで握っては注文を受け握るを繰り返していました。

席につくとまずはまぐろの赤身シリーズが4貫いただけます。

f:id:do7be:20151004210133j:plain

以下、2貫ずつ出てきます。

うに、いくら、ネギトロ

f:id:do7be:20151004210319j:plain

さっきのネギトロ、鯵、ヒラメ

f:id:do7be:20151004210350j:plain

ほたて、サーモン、シャコ

f:id:do7be:20151004210439j:plain

穴子、カニ

f:id:do7be:20151004210524j:plain

カンパチ

f:id:do7be:20151004210549j:plain

生しらす

f:id:do7be:20151004210618j:plain

コハダ(右のは前のカンパチ)

f:id:do7be:20151004210634j:plain

ほっき貝

f:id:do7be:20151004210652j:plain

サンマ

f:id:do7be:20151004210712j:plain

タコ

f:id:do7be:20151004210802j:plain

エンガワ、タマゴ

f:id:do7be:20151004210822j:plain

もっかいウニ

f:id:do7be:20151004210845j:plain

トロ

f:id:do7be:20151004210914j:plain

トリ貝、つぶ貝

f:id:do7be:20151004210942j:plain

イカ

f:id:do7be:20151004210955j:plain

f:id:do7be:20151004211007j:plain

平貝

f:id:do7be:20151004211029j:plain

僕のほうが若干多めに食べて、合計で33貫食べました!

ちなみに、ベスト5をつけるとすれば

  1. ほっき貝
  2. トロ
  3. サンマ
  4. タコ
  5. エンガワ

でしょうか!!

しかし、1つ1つ板前さんが握ってくれる寿司がたったの3500円で食い倒れできるとは…

恐れいりました。また行きたいと思います。

ISUCON5予選で最高スコア1万弱を出しました

isucon.net

Iikanji ni Speed Up Contest、通称「ISUCON」に出場してきました。

今回が初めての参加になります。

都内某所コワーキングスペース(弊社オフィス)にて、社内でチームを組んで挑みました。

言語はPHPを選択しました。Node.jsは僕しか触れなかったので。とはいえ、Node.jsは直前で中止になっていたのでPHPを選択しておいて正解でした…。

チームメンバーの@petoが書いた記事はこちらです。

pe10.hatenablog.com

担当

3人いたのでそれぞれ

  • アプリケーション
  • WEBサーバ
  • DB

という分担をし、僕はアプリケーションを担当しました。

僕がやったことはこんな感じ。

  • GCEインスタンスの構築
  • 鍵交換
  • Git及びGitHub設定
  • 方針決め
  • 無駄に実行数が多いSQLの排除
  • COUNTなどのSQLの最適化
  • 無駄なSELECT *の排除

チームとしては

  • MysqlのSlow LogからプロファイリングしIndexを貼った
  • Mysql設定チューニング
  • Nginxチューニング

こんな感じでしょうか。

結果

ベンチマークの結果を逆時系列で出しました。ところどころFAILが出ているのは、「タマキ」と呼ばれるなぞのバグのせいかと。どのチームも苦しめられたみたいですw

Score History
timestamp   score   
17:40:52    5268    
17:37:37    5824    
17:35:33    20  FAIL: 
17:30:09    4316    
17:12:11    7032    
17:04:05    4192    
16:52:57    9831    
16:46:35    9786    
16:37:40    9034    
16:28:24    9785    
16:19:57    9421    
16:10:29    9340    
16:04:27    6301    
15:58:56    6231    
15:54:48    0   FAIL: 
15:52:23    6018    
15:44:16    5918    
15:39:55    5212    
15:32:07    4675    
15:19:51    3318    
15:11:39    6606    
15:00:24    6586    
14:46:04    6639    
14:40:05    1279    
14:31:33    1935    
14:21:02    2166    
14:17:09    0   FAIL: 
14:04:18    812 
13:56:11    1230    
13:49:03    1229    
13:41:38    1259    
13:33:47    20  FAIL: 
13:30:13    1517    
13:23:44    20  FAIL: 
13:10:08    1430    
13:01:00    992 
12:53:32    1064    
12:33:47    910 
12:16:10    896 
12:07:42    838 
11:59:58    743 
11:41:07    722 
11:37:21    0   FAIL: 
11:31:58    697 
10:43:24    68  
10:34:45    0   FAIL: 

最高スコアはなんと9831!最高スコアだけで見れば全271チーム中の上位50チームには入れてるんじゃないかなあと思います。

ISUCON5 本選出場者決定のお知らせ : ISUCON公式Blog

が、見ての通り途中で何度かスコアが大きく落ちています。

実は再起動のたびにスコアが半分ほどになってしまったのです。

原因を探っていたのですが、どうしてもわからず、結果として低いスコアになってしまいました…

おそらくですが、innodb_buffer_poolをディスク上に書き込んでおらず、再起動のたびにメモリから飛んでしまっていたためかと…。

終わってから気付き、非常に残念です…。

感想

実は社内で週2でISUCON会という勉強会をやっていました。若手エンジニアの集まりで、過去のISUCON問題を練習台として模索していくような会でした。そのおかげもあって当日いろんなことができたのかと。

ISUCON3,4と比べ、今回はNginxよりもMysqlとアプリケーションに比重が置かれているなと感じました。アプリケーションのコード量も比べ物にならないほどでしたし、テーブル数もこれまでの数倍はありました。そのおかげでアプリケーション担当の自分は忙しかったです…あと3時間はほしい…。

WEB業界に入ってまだ半年ほどですが、最終結果はよくなかったにせよ、最高スコアでここまで入れたのは驚きました。やはり勉強会のおかげもあるかと思いますが、ちょっと自信がつきました。

勉強会も普段やらないチューニングという分野で楽しかったですし、予選も疲れましたが楽しかったです。来年もまたやりたいなあ。ぜひNodeで!

LGTM-HUBをReactでリファクタリングしました

このシルバーウィークを使って、前にブログに書いたLGTM-HUBというサービスをリファクタリングしてました。

LGTM-HUB

f:id:do7be:20150923021731p:plain

やったことを大まかにまとめると

  • gruntからgulpに変えた
  • ES6で書きなおした
  • Reactで書きなおした

といったところでしょうか。

これまでjQueryでDOMを直接いじっていたため、$(this).prev().children('img').attr('src')みたいなアホな記述もあり、だいぶひどかったのですが

ReactのComponentでまとめるようにしたので、イベントリスナーやStateの変化などだいぶ綺麗にまとめることができたかと。

今回はフロント側のReactだったんですが、今度はサーバ側のReactレンダリングをやってみようかと思ってます。

メリット等よくわかってないのでそのへんまとめてからということで。

YAPC::Asia Tokyo 2015 - 2日目レポート

YAPC Asia 2日目も行ってきました!

f:id:do7be:20150822222013j:plain

本日拝聴したトークはこんな感じです

一番印象に残ったのはYAPCあるあるですかねー。

f:id:do7be:20150822222018j:plain

rebuild.fmでお馴染みの@miyagawa氏や941さんの対談で、これまでの歴代YAPCの思い出話や裏話を笑いながら聞けるトークでした。

純粋にすごいなあと。

自分もこんな大きなイベントになるまで前に立って活動してみたいと思いました。今は雲の上のような話ではありますが…。

f:id:do7be:20150822222035j:plain

でもLTのこの一言がけっこう刺さりました。

自分も今は社内のLT大会を主催していますが、これを社外に向けたり、言語などのコミュニティで人脈を作ってイベントを開催していくことを目指して頑張りたいと思いました。

そしてクロージング。

全体を通して、トップレベルのエンジニアに触れられてよかったです。

あと社外のエンジニアと他企業を見れたのも。最近は勉強会に出られてなかったので。

もっとアウトプット思考でガツガツエンジニアリングしていきたいなというのがまとめですかね。

ということで、来週の月曜に社内のLT大会なので、そろそろ資料作り始めます… 笑

YAPC::Asia Tokyo 2015 - 1日目レポート

f:id:do7be:20150821221803j:plain

YAPC Asia 1日目行ってきました。

拝聴したトークはこんな感じ

f:id:do7be:20150821222625j:plain

こんな感じで床に座らないと聞けないトークもありました。参加人数すごい。

f:id:do7be:20150821222626j:plain

LTは大ホールで。とても広いのでここで発表するのはかなり緊張しそうです。

懇親会

f:id:do7be:20150821222344j:plain

f:id:do7be:20150821222352j:plain

懇親会では今までネットでしか見たことのなかった著名人とお話できたりして充実しました。

f:id:do7be:20150821222347j:plain

sushi。おいしかったので2周した。

f:id:do7be:20150821222354j:plain

ローストビーフ。柔らかくてこれもおいしかった。

余談

f:id:do7be:20150821222332j:plain

そういえば、enジャパンのよく見るこの娘が無限コーヒーをおごってくれました。至高。

YAPC::Asia Tokyo 2015 - 前夜祭レポート

8/20に「YAPC::Asia Tokyo 2015の前夜祭」に行ってきました!

yapcasia.org

しばらく訪れていなかったビッグサイト

f:id:do7be:20150821004408j:plain

拝聴したトークはこんな感じです。

アルコールやジュースやお菓子が置かれていて、意外とアットホームな空気でよかったです 笑

f:id:do7be:20150821004412j:plain

自腹で個人スポンサーになったこともあり、ノベルティが豊富でした。

  • 使い勝手のよさそうなタンブラー

f:id:do7be:20150821005416j:plain

  • Tシャツ2枚とパーカ

f:id:do7be:20150821005421j:plain

この他にも各種ステッカー等様々なノベルティを頂きました。

21日、22日は1日中参加します。気になるトークがたくさんあり、楽しみです。

ちなみに今回は@miyagawaさんが作成したスケジューラでトークの管理をしています。トークの詳細からgoogleカレンダーに追加できるので本当に便利ですね。

http://miyagawa.github.io/yapcasia2015/

Treasure Data上の過去データをガツッと削除した話

Treasure Data上にデータが大量に溜まっており、使用可能容量が危うくなる状況に直面したので、古いデータだけ削除することにしました。

詳細な手順はQiitaに書きました。

qiita.com

これ、数年前からのログをずっと貯めていたテーブルがありまして…

80億レコードくらいあったわけなんですな……w

明らかに何年もとっておく必要のないログをなぜ今まで放置してたのはわかりません…

ちなみに、EmbulkでS3に移すという案もあったんですけどね、普通に考えて要らなかったので思い切って70億レコードほどバッサリいきました( ^ω^)