TMD45'β'LOG!!!

Life is Beta-ful.

YAPC::Asia Tokyo 2015 2日目

2日目終わった。最後の最後に iPhone トイレに置き忘れて見つからなくて Apple の紛失モードとスタッフの方にお世話になりました。ほんとすみません、ありがとうございましたっ。それにしても YAPC 紛失物多くない?(お前が言うな)

最近体調崩しててできるだけ寝るようにしてたんだけど、興奮冷めやらず夜更かししてたらやっぱり寝坊したよね。それでも最初のセッションの途中から見ることはできた。

全体的な個人的な感想。体力なさすぎてやっぱり2日目は疲れてダレる。あと1日目に比べて基礎知識が足りないものの発表聞いてたのでさらにダレてしまった。でも興味を持つきっかけにはなったのでいろいろ知っていこうとは思っているところ。

つーわけでツイートも昨日よりなぁなぁだけど貼っておく。Twilog 便利。

ビッグサイトのあの箱のなかにサイドから吸い込まれていくところです。

どうしてこうなった? Node.jsとio.jsの分裂と統合の行方。これからどう進化していくのか?

  • 17分くらい遅刻して途中から発表聞いた
  • ちょうど Node.js 側のコミュニテイの話が終わって、io.js 側発足の経緯などから聞くことができた
  • BDFLモデルからの脱却(リーダーひとり体制からの脱却)
  • Enterprise サポートなど「Node.js は大人になった」
  • Node.js v4.0 = io.js であり 2015年9月、10月あたりにはリリースされる
  • io.js の分離は最初から統合させる(認めさせる)ための分離だった。統合できるように作っていた。スピード求められた
  • 新しいコントリビュータ絶賛募集中 #トノコト
    • 実は Node.js も自分はそんなに使ったことなくて、機能的な話はあんまりわかって聞けてない
    • コミュニティについての話、経緯やきっかけの話が面白かった
    • Node.js というか、もうずっとそういう気持ちなんだけどほんと JavaScript できるようにならないとそうそうにヤバくなる気がしてる(すでにヤバい感)

我々はどのように冗長化を失敗したのか

  • インフラ式年遷宮三部作 第二作目
  • 式年遷宮「清浄さの維持のため」「技術の伝承のため」→ インフラにも当てはまる?!
  • 冗長化、必要になった時ちゃんと動かない → 正常時も稼働系を切り替える ⇒ 式年遷宮
  • また出てきた consul
  • 期待するな、計測しよう
  • 同じSQLなのに遅いときあった。クラウドのサーバのI/Oが忙しいのでは?→クラウド業者に 調査してもらったら解決
    • これ気になるんだよなぁ。うちもそうなんじゃないかとか。RDS なんだけどさ…

MySQLで2億件のシリアルデータと格闘したチューニングの話

  • シリアルマスタ2億件とそれに紐付く商品データ1億件
  • DB インフラ 2コア 8GB MySQL5.6
  • 負荷テスト3億件70分だったのに本番データでやったら75時間(ふぁっ)
  • 負荷テストで用意したデータは primary key であるシリアルコードが連番だった
  • 本番データでは index 再作成で時間がかかった
    • index 再作成こわい
  • あと innodb_buffer_pool 枯渇
  • primary_key がシリアル、unique がシーケンス → 逆にする
    • RubyActiveRecord 使ってるとあんまり心配しないところ
    • 自分で index 貼るときに気をつけたい
  • update でもシリアルがランダムで複合インデックスから紐づく主キーの読み込みに時間がかかる
    • これの対応は結構無理くり…
    • 複雑なマルチバイト文字でなければ(ASCII であれば)大丈夫だという印象を漠然と持っていた気がする。シリアルは index と組み合わせると数の暴力で死を招くという感じ
    • 結構疲れててところどころ聞き飛ばしていた。スライドは後で追っておきたい感じ

お昼

  • 今日もお弁当いただいた。ごちそうさまでした
  • 上の階のランチセッションでも別の(ちょっといい)お弁当が配られていたせいか、普通のお弁当余っていた

  • 2日通して、お弁当どこでもらえるのか知らないひと多かったみたい?
    • それでしょうがなく?外に食べに行ったりされてた様子をTLで見た
  • ランチセッションは聞きに行くのやめて、コーヒー飲んだり、会場をうろうろしたりしてた
  • うろうろついでにレバテックさんのところでカップ麺とミントタブレットいただいたりした
    • 昨日は同じ名札のアルファベットのひと探してペアで貰いに来てね企画だったのに、あんまりにも人来ないから、もう普通に通りかかってくれた人みんなに配ってたw
    • カップ麺のパッケージのおねーさん(社員さんらしき方)から直接いただいたのだけど明るくて可愛かった(癒やし)

せっかく写真撮るならちゃんと vim ので飲めばよかったなw

3分でサービスのOSを入れ替える技術

  • しばた(hsbt)さん。生で拝見するのは慣れてきました(ぉぃ
  • CM放映に対応したオートスケールをやる話
    • 放映タイミングに瞬間的に負荷が上がるので、普通の(AWSの)オートスケールでは間に合わないヤツ
  • 負荷を検知して「オートに」スケールするところまでは行ってなくて、そこは人が予測してスケールするんだけど、スケールそのものを高速化するという話
  • これまで:動いてるサーバを Image 化(秘伝のタレ)して、分離起動して、手作業(手順書ベース)で整えて、増やす Tanpopo Work
    • あれ、どっかで聞いたような(遠い目)
  • ハード側(仮想だけど)でやったことについてはスライド参照!
  • Appサーバについて。1サーバを1プロセスとして扱う。プロセスにSSHログインする人はいないので「No SSH」という制約にしてしまう
  • なんでもやることにすると大変、制約作っちゃうと楽
  • 何か手でやってることがあったらとにかくコード(コマンド)にする。Thor使っている
  • Rails application の package を作って配布
    • これねーやりたいねー…
  • どう考えても遅い処理と、早い処理に分割。重い処理ごとにフェーズを分けて非同期に処理。フェーズごとに image を作る

ソーシャルゲームにおける AWS 移行事例

  • AWS移行のための調査がメインでその過程で得た情報とAWSのTipsという感じ
  • Tips的には「ほうほう」と思ったのもあったけど、すでにAWS使っているので現状はサンタクロースを支えるIT技術見に行ったほうがよかったかもと思ってしまった
    • ソシャゲという前提(あんまり関係なかったけど)も自分は選ばない環境だしなぁとか
  • RDSをSingle-AZにして高速化
  • 事前演習は何回もやると安心
    • 4,5回?本番環境予定の場所で作ってはdropしてという演習をやったとのこと
    • 大切。面倒くさがらずにやらねばな…
  • "現状維持よりも改善、構成を見直すいい機会"

Profiling & Optimizing in Go

  • HTTP2 時代の Webを見に行こうと思っていたけど始まる前から長蛇の列とか心が折れて、もうラストまで座っていられるようとホールAに行った(正直すまんかった感)
    • トーク賞にも選ばれていたし、やっぱり気になる…スライドは見たいな…
    • 1日目のHTTP/2の話とは被ったりしてなかったんだろうか?
  • Goはちょっとしたコマンドツール類でお世話になってるけど、自分では全く触ったことがない
  • ハッシュタグで(も他のブログとかでも)ライブコーディング絶賛されてたけど、Go開発の知識が皆無だったせいで、コーディングも英語も日本語(同時通訳)も何もかも高速で目まぐるしくて何が何だかわからなくなっていた…
    • 割りと途中から諦め気味でTLを眺めていた
  • Goが標準で持っているプロファイリングツールが充実してるという話を実演

LT

  • Neko Toast Lab. さんのサイトのネコが回るようになってた
    • そういえば知人のフロントエンドエンジニア氏がうっかりアクセスして「なんだこのサイト…意味がわからん」って半ギレになってました(笑)JSのことではなくて存在に対してですけど
    • 今日やっと業務内容についてお話されてましたけどかなり真面目そうなお仕事されてるんですね…
  • MySQL 5.7 の > 突然の死 < 総集編。発表者のブログ記事
    • パスワードサイクルタイムのことは知ってたけどそれ以外もいっぱいあるしやばすぎる
    • MySQL 5.6 相当に合わせる設定のタレぜひ使わせていただこう…
  • 「◯◯するやつ」が「△△してから◯◯するやつ」になってきたら分割する(命名の話)
  • bot になった人の話。面白かったw
  • StyleStatsCSSのメトリクスを出せる。CSSのCi!
  • Perlの話は全然わからない。すみません
  • 本物のロック=電話
  • コミュ力を上げる=モールス信号
    • どういうことだってばよ…!(; ・`ω・´)w
  • ネットワーク部隊 CONBU のライブ設営/撤収
    • はやっ
  • vim script 静的解析の 光と 闇。vim-vint の作者さんの発表だった
    • 大変そう(小並感)

クロージング

  • 始まるまえの休み時間に iPhone 探ししてて見つからなくてクロージングは話半分だった。めっちゃ申し訳ない…最後なのに…
  • トーク賞の発表!HTTP/2の発表2つとひとでくんさん!おめでとうございます!
  • スタッフのみなさまお疲れさまでした。ありがとうございました!

と、こんな感じで、閉会後に iPhone 見つかりました(そっちかよ)。ほんとありがとうございました…

参加者総勢 2100 人ちょっととのことで、かなり積極的に「会うための努力」をしないと会いたい人には会えない感じでした。待ち合わせしたり、居場所伝えたりね、そこまでしてお相手の時間いただくほどでも…という感じであえて努力しませんでした!!!

っていうか無理にそういうところに時間割くのやめたんスよね。適当にぶらぶらしててもふと隣にいた人と楽しく話せるときもあるし、ぼっちでいることも苦じゃないのでなりゆきで楽しむのが一番いい(という短い人生の経験則)。

普段 Twitter とかインターネットで見かけるたくさんの開発者があの場にいて同じ発表みたり、同じハッシュタグに感想投稿したり、あわよくばご尊顔を拝したりできて大変楽しかったです。去年は Ruby Kaigi に参加したけど、参加者や発表内容が似てるようで結構違っていて面白い。

それはそれとして、どの発表でも学んだり興味を持ったり共感したりする話がたくさんあって、参加してよかったと思っています。

あー、荷物持って歩きまわったうえに長文のブログ久しぶりに書いたせいか、背中が筋肉痛で痛くなってきた。精進せねば…

▲ ページトップへ移動