Akatsuki Hackers Lab | 株式会社アカツキ(Akatsuki Inc.)

Akatsuki Hackers Labは株式会社アカツキが運営しています。

技術

LITALICO社と合同エンジニア勉強会を開催した話

合同勉強会を開催 6月25日(木)に、株式会社LITALICOさんと合同エンジニア勉強会を、アカツキのオフィスで開催しました!アカツキのエンジニアと合わせて約20名がこの勉強会に参加し、LT対抗戦+ビアバッシュを楽しみました。想定以上に話したがり屋さんが多か…

CloudWatch Logs + fluentdでモダンなアプリ監視をさくっと作ってみた話

背景 アカツキが提供しているサービスはリリース前に必ずテストを行っています。テストでバグが見つかったときにこれを切り分けるため、発生時のログを探すことがあります。「クライアントアプリで明らかに表示がおかしい」とか、そういったバグなら問題ない…

FactoryGirlのログからテストコストを計測してみた

背景 アカツキではサーバーサイドフレームワークとしてRuby on Railsを採用しており、またそのテスト環境としてRspec/FactoryGirlを使用しています。RoR環境下のテスト体制としてはデファクトスタンダードになっているこの組み合わせですが、主にFactoryGirl…

差分を管理してデータ更新を高速化する、seed_fu:expressのご紹介

背景 ゲームサーバーで扱うデータはとにかく多いです。 特にイベントなどをほぼ毎日運用する場合はサービス開始から1年でレコード数が無視できない量になり、それに伴って更新に要する時間が激増してしまいます。 以前執筆した9分43秒のデプロイを19秒にした…

MySQLのINSERTを高速化するChange bufferingをソースコードから理解する

背景 アカツキで提供しているサービスでは、ほぼ全てにおいてAWSのRDS(MySQL5.6, InnoDB)を使用しております。 ソーシャルゲームでは多くのWriteがかかりますが、そのコストが気になったので調べてみました。

resize2fsコマンドはどのようにして1秒未満での容量拡張を実現しているのか

この記事はLinux Advent Calendar 2014 の23日目の記事です。 背景 アカツキではAWS EC2をテストサーバ、ステージングサーバ、本番サーバとして利用しています。先日1周年を迎えた千メモは、リリース時よりも大分デプロイ時に容量を使うようになってきまし…

Are you still reviewing that pull request?

Background

人がコードレビューする時代は終わった

背景 最近GitHubワークフローやコードレビューの文化が普及してきていますが、 コード規約まわりの細かい指摘ってするべきなのか、迷いますよね。 例えばカンマの後にスペースがいるとか、引数が多いときに改行した方が良いとか・・・。 いちいち指摘してた…

RubyKaigi2014 速報(5) – おはよう Rails

Ohayo Rails 高井さん進行 あれあれ?大きなお友だちの声が聞こえないよ? 大きな声でおはようございます なんでマリ見てパロってるの?

AWS ElasticCacheのRedisをDefault設定で使ったときのConnection Leakの解決方法

現在、弊社にて提供しているサービスのほぼ全てにおいてAWS(Amazon Web Service)を利用しており、その中でも頻繁にアクセスが必要なデータについてはElasticCacheのRedis/Memcachedを利用しています。今回は、そのElasticCacheでRedisを利用する場合において…

そのガチャの確率、本当に合ってます?〜RSpecで統計的に確認する話〜

背景 ソーシャルゲームでよく見かける「ガチャ」ですが、この記事ではその重み付き確率の保証方法を紹介します。

Cocos2d-xによる2.5次元表現

Cocos2d-xによる2.5次元表現 背景 「次元」というと理系出身の人は大体ベクトル空間の次元を思い浮かべると思います。 最近はネットで「2.5次元の女の子しか興味ない」というと3DCGの美少女のことを指したりしますよね。 実は形式的に整数でない「次元」を定…

Expressing "2.5D" spaces with Cocos2d-x

Expressing "2.5D" spaces with Cocos2d-x Background These days, the terms of "dimension" is not limited to vector spaces -- in Japanese internet slang, "2.5D girls" refer to girls rendered using 3DCG. As a matter of fact, you can actually f…

第21回 AWS User Group - Japan 東京勉強会 で LT しました

「Startup CTO AWS Battle」というテーマで、CTO ではない自分が戦う要素の無い発表をしてきました。 ※ アカツキには現在CTOはいません。 アカツキはどのようにAWSを活用しているか #jawsug from aktsk innodb_flush_log_at_trx_commit の辺りで反応している…

Redis、計算量の恐怖

はじめまして。アカツキのサーバエンジニアのこうのです。サウザンドメモリーズで主にサーバ側のプログラム・インフラを担当しています。 今回はサウザンドメモリーズで発生した、Redisにまつわるトラブルを紹介したいと思います。 TL;DR RedisのSorted Set…

9分43秒のデプロイを19秒にした話

背景 アカツキではRailsでゲームサーバを開発しています。インフラはAWSにあり、CloudFormation, Chef, Capistrano を用いて、Infrastructure as Code を実現しています。 エンジニアは普段ローカルマシンで開発していますが、ディレクター、レベルデザイナ…