Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

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

3,906 views

Published on

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

Published in: Technology, Business
  • Sex in your area is here: ❤❤❤ http://bit.ly/39mQKz3 ❤❤❤
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Dating for everyone is here: ❤❤❤ http://bit.ly/39mQKz3 ❤❤❤
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

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 •

×