Your SlideShare is downloading. ×
大規模環境でRailsと4年間付き合ってきて@ クックパッド * 食べログ合同勉強会
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

大規模環境でRailsと4年間付き合ってきて@ クックパッド * 食べログ合同勉強会

8,428
views

Published on

Published in: Technology, Education

0 Comments
29 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
8,428
On Slideshare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
0
Comments
0
Likes
29
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Transcript

    • 1. Rails4 / Takayuki Kyowa Kakaku.com,Inc
    • 2. About me• @tkyowa /• 2007 3 • Rails•• tabepad 3 •• (tkbb)
    • 3. •• iPhone• Ruby 1.9.2 / Rails 3.0 • Web
    • 4. About tabelog•• 4 5000 PV 2900 UU / month (PC + Mobile)• Rails• Rails 2.3 / Ruby 1.8.6
    • 5. Alexa Ranking vs Cookpad
    • 6. Alexa Ranking vs Cookpad
    • 7. About tabelog•• 4 5000 PV 2900 UU / month (PC + Mobile)• Rails• Rails 2.3 / Ruby 1.8.6
    • 8. About tabelog•• 4 5000 PV 2900 UU / month (PC + Mobile)• Rails• Rails 2.3 / Ruby 1.8.6
    • 9. ••
    • 10. ••
    • 11. TiDD• • 2 •• • No Ticket , No Commit • •
    • 12. Workflow new Developmentassigned in_work committed Testing ready tested checked Releasedeployed released closed
    • 13. Problem• 2• • •• • Redmine Plugin
    • 14. Redmine Plugin•• • • False Negative → False Positive • •
    • 15. Future• •• Git • •• •
    • 16. ••
    • 17. Architecture Load Balancer PC Mobile Front Front PC BOT Mobile Application Application Application PC BOT MobileMaster DB Slave DB Slave DB Slave DB
    • 18. Architecture• Ruby 1.8.6• Rails 2.3• Passenger 3.0• BackgrounDRb / TabelogAsync• MySQL 5.1• memcached• FAST(Full Text Searcher)• Solr, MongoDB
    • 19. Architecture• Web •• •
    • 20. 2007.10 PV 3000 4 5000 1500%Code 2 10 500% 30 300 1000% 25 800 3200%
    • 21. 2007.10PV 3000 4 5000 1500%Code 2 10 500% 30 300 1000% 25 800 3200%
    • 22. 10
    • 23. 10
    • 24. 10• Fat Model
    • 25. 10• Fat Model• Fat Controller
    • 26. 10• Fat Model• Fat Controller•Fat Helper
    • 27. 10• Fat Model• Fat Controller•Fat Helper•Fat View
    • 28. .
    • 29. APIController Helper View Model Library Rails
    • 30. • Rails •• • • … • •
    • 31. Controller Helper Controller Helper View Model View Model Library Rails Library RailsController Helper View Model Library Rails ...etc
    • 32. - Howto• → → → → OK! • orz• • •• • View•
    • 33. - Result• Pros • • •• Cons • • •
    • 34. 2.
    • 35. ActiveRecord
    • 36. MVC ControllerModel ViewRDB Searcher KVS Web API
    • 37. MVC - Rails ActionController ControllerActiveRecord ActionView Model View RDB Searcher KVS Web API
    • 38. ActiveRecord• Model ORM •• Controller• Model Confusing• View AR• RDB
    • 39. Backend Divide - PHASE ActionController ControllerTabelog::Service ActionView Model ViewActiveRecord RDB Searcher KVS Web API
    • 40. Backend Divide - PHASE• ActiveRecord Model• Controller/View • RDB• ActiveRecord ORM• Tabelog::Service •• Controller
    • 41. Backend Divide - PHASE 2 Frontend-App HTTP Backend-AppRDB Searcher KVS Web API
    • 42. Backend Divide - PHASE 2Rails(without ActiveRecord) Frontend-App Cobqlo::Requester HTTPCobqlo(Tabelog’s Framework) Backend-App RDB Searcher KVS Web API
    • 43. Backend Divide - PHASE 2• • API• Cobqlo • API • EventMachine • JSON/MessagePack• Cobqlo::Requester • HTTP
    • 44. Backend Divide -• 2• Rails • API • •• Rails 3.0 • ActiveModel Arel• Rails 3.0
    • 45. Rails• Rails • ≒ •• Java • Rails • PofEAA
    • 46. Rails 2• Rails 3 • Modularity • Pluggable•••
    • 47. Any questions?