Upgrade to Pro — share decks privately, control downloads, hide ads and more …

15万人の作家を支えるサービス開発の裏側 / back-of-the-service-development-to-support-150000-creators

15万人の作家を支えるサービス開発の裏側 / back-of-the-service-development-to-support-150000-creators

「minne」技術戦略カンファレンスの資料です
https://www.youtube.com/watch?v=uYti3xbCVBQ

monochromegane

October 24, 2015
Tweet

More Decks by monochromegane

Other Decks in Technology

Transcript

  1. ໨తͷڞ༗ Kickoff Break- down Daily stand-up MTG • શһࢀՃ •

    ϓϩδΣΫτͷ໨తΛڞ༗ • ΑΓΑ͍ղܾࡦͷݕ౼
  2. minne Client App Load Balancer Data Store OKARA CDN Job

    Worker Batch Memcached Search Request Image Request Dynamic Image Transformation Cache Data Job Job Job Data Indexing Notification Search
  3. Solr • ࡞Ոͱ࡞඼ͷݕࡧػೳ • Solr 4 (master-slave) + sunspot Master

    Slave App Job Worker Update item Indexing Job Indexing Replication Search
  4. OKARA • ࡞඼ը૾ͷಈతը૾αΠζม׵ • Nginx + ngx_small_light + ngx_mruby +

    CDN OKARA CDN Image Request Dynamic Image Transformation ngx_mruby • URL transformation • Hash validation ngx_small_light
  5. CI

  6. Multi-containers CI test-queue worker test-queue worker test-queue master docker MySQL

    test-queue worker Docker in Docker Drone • Drone + RSpec + test-queue • Docker in Docker • 27min -> 8min
  7. Coding rule spec it do default, $stdout = $stdout, StringIO.new

    begin status = RuboCop::CLI.new.run(['--lint', file]) unless status.zero? raise "status: #{status}\n" + $stdout.string end ensure $stdout = default end end • Rubocop CLI • Ruby, Slim