Yapc Asia 2009 ペパボでのPerlの使い方

3,379 views
3,226 views

Published on

YAPC Asia 2009 - 株式会社paperboy&co. でのPerl使い方についての発表

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,379
On SlideShare
0
From Embeds
0
Number of Embeds
14
Actions
Shares
0
Downloads
19
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • Yapc Asia 2009 ペパボでのPerlの使い方

    1. 1. Perl YAPC::Asia 2009 Tokyo 2009/9/10
    2. 2. • id:hiboma • • •
    3. 3. • CTO • •4 25
    4. 4. • id:MIZZY • • / • / .... etc
    5. 5. • gihyo.jp Puppet, Func • http://gihyo.jp/admin/serial/01/puppet • http://gihyo.jp/admin/serial/01/func • MASHUP++ Plagger • http://www.amazon.co.jp/dp/4861671655/
    6. 6. • • paperboy&co.
    7. 7. CTO
    8. 8. CTO
    9. 9. CTO
    10. 10. “ ”
    11. 11. • paperboy&co. • • •
    12. 12. • PHP • Perl • Perl
    13. 13. Perl
    14. 14. 30days Album
    15. 15. 30days Album • http://30d.jp/ • • 30 • 30 • 10 • 40
    16. 16. 30days Album • • •
    17. 17. 30days Album + Perl • Perlbal • MogileFS • API on Catalyst • Gearman • TheSchwartz
    18. 18. Perlbal • Perl • •
    19. 19. Perlbal Perlbal http://30d.jp/img http://30d.jp/img Web
    20. 20. Perlbal • Perl •3 • MogileFS • X-Reproxy-URL
    21. 21. MogileFS • Perl • •
    22. 22. MogileFS client mogilefsd mogilefsd mogstored mogstored MySQL
    23. 23. MogileFS • OSS • Perlbal • X-Reproxy-URL
    24. 24. API • MogileFS • API GET/PUT • Perl + Catalyst
    25. 25. API client HTTP GET/PUT API mogilefsd mogilefsd mogstored mogstored
    26. 26. API • • • • MogileFS::Client MKCOL API
    27. 27. API • • MogileFS Content-Type Content-Length API • • MogileFS API
    28. 28. Perlbal Perlbal X-Reproxy-URL: http://storage_node/dev1/0/000/... Content-Type GET GET mogstored mogstored API mogilefsd mogilefsd
    29. 29. • • • Gearman/TheSchwartz • API
    30. 30. Web (Rails) XML-RPC API (Catalyst) German::Client TheSchwartz::Job gearmand MySQL gearman TheSchwartz worker worker
    31. 31. API • Web gearman / TheSchwartz • Catalyst + Catalyst::Plugin::XMLRPC API
    32. 32. Gearman • ( ) • Web • • • Proc::Background daemontools
    33. 33. TheSchwartz • ( ) • ~ ) • (zip) • Proc::Background daemontools
    34. 34. • •
    35. 35. • Image::Imlib2 • => • yusukebe • http://yusukebe.com/tech/archives/ 20070526/011710.html GD::Image Image::Magick Imager
    36. 36. heteml ( )
    37. 37. - flash media server - coldfusion - SSL - SSH
    38. 38. 4/1
    39. 39. • • •
    40. 40. CGI • Apache2.0(Worker) + SuEXEC + mod_cgid • PHP, Perl, Ruby, Python • CGI => • • • CPU
    41. 41. hetepro • • • Class::Component • + Daemon::Generic • + Sys::Statistics::Linux ( ) • 2007 ( Moose )
    42. 42. hetepro • • : CPU N kill -9 •
    43. 43. hetepro filter: - catch: uid: gt: 1000 runtime: gt: 300 action: - KillProcess: - Log::TextTable:
    44. 44. Sys::Statistics::Linux • /proc ( , ) ... • Linux ! • hetepro
    45. 45. Sys::Statistics::Linux • CpuStats • NetStats • DiskStats • PgSwStats • DiskUsage • ProcStats • FileStats • Processes • LoadAVG • SockStats • MemStats • SysInfo
    46. 46. Sys::Statistics::Linux • • ex. CPU N /N • ex. • Sys::Statistics::Linux::Processes
    47. 47. • • •
    48. 48. Archer • id:tokuhirom Perl • Ruby Capistrano •
    49. 49. Archer tasks: process: - module: Exec::Remote name: update kernel config: command: sudo yum -y update kernel projects: users: - example0.heteml.jp - example1.heteml.jp - ...
    50. 50. • ! • •
    51. 51. • API • Web • API API API k • JSON-RPC Web OK API API
    52. 52. API • HTTP::Engine • Any::Moose • Data::ObjectDriver • Kwalify • Func(Python)
    53. 53. API WEB JSON-RPC MySQL API Func WWW WWW MAIL MAIL
    54. 54. API • • procmail mailfilter
    55. 55. API • • …
    56. 56. API • •
    57. 57. • MySQL • Data::ObjectDriver • Web • Web • Mail •
    58. 58. 2 • • Apache VirtualHost PHP php.ini etc ... • API Func
    59. 59. Func • Python • ( XMLRPC over HTTPS) • http://gihyo.jp/admin/serial/01/func/0001 • /usr/bin/func-transmit YAML Perl
    60. 60. qpsmtpd • Perl SMTP • • Apache • mod_perl • http://smtpd.develooper.com/
    61. 61. qpsmtpd • Perl ! ! • • + • qmail ...
    62. 62. ( ) • hook_connect • hook_helo • hook_rcpt • hook_queue • .... etc • SMTP
    63. 63. • check_badsubject • Subject • check_relay_rcpt • RCPT MySQL ( memcached )
    64. 64. • check_size • • ESMTP SIZE qpsmtpd • qpsmtpd • max_rcpt_to • RCPT
    65. 65. Qpsmtpd • / • • http://wiki.qpsmtpd.org/api:plugin_hooks
    66. 66. • JugemKey API • JUGEM • • MySQL •

    ×