23. Rails3.0
! 3 Release 12
! LoC in Branch
# Commits LoC LoC(Exclude Vendor)
344 +69322, -62147 +41559, 43750
! LoC in Trunk
# Commits LoC
592 +13137, -11324
24. ! SSO API …
! Module Mini Rails
! Application Module Bundled APP
Module Module Module
Resources Resources Resources
C Biz Logic C Biz Logic C Biz Logic
A A A
O O O
N View/Helper P
N View/Helper P
N View/Helper P
I I I
F Controller F Controller F Controller
Model Model Model
SSO User Permission System API (Search, i18n, …) Tasks
Shared Model Controller/Dispatcher View/Helper BizLogic
Shared 3rd Plugins Components Shared Resources
25. !
mount Module
!
Gem Module !
Asset Pipeline Modul
e !
25
26. Business Model
! Let Model be DAO
! ActiveRecord Model Business Logic
! Active Record Callbacks Validations
Rails MVC with Business Model
AcQon&View Widgets&
AcQon&Controller
Business&Model& Business&Scenario&
AcQveRecord AcQveRecord
27. — Model !
Validation
!
1.
Validation
2.
validation if/else
!
3.
Model
LoC>2k)!
27
28. — Business Model !
Business Model
Validation
1.
“ ”
2.
Business Model
3. Business
Model
Business Model
28
35. Unicorn +
! Lighttpd + FastCGI
! Unicorn
– An HTTP server with 2k+ lines of pure ruby code
– Better memory control by shared memory, forking
– Copy-on-write with REE 1.8.7
– (Twitter, Github…)