Scale like a pro with Gearman
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Scale like a pro with Gearman

on

  • 1,981 views

 

Statistics

Views

Total Views
1,981
Views on SlideShare
1,964
Embed Views
17

Actions

Likes
2
Downloads
25
Comments
0

2 Embeds 17

http://localhost 11
http://dex.io 6

Accessibility

Categories

Upload Details

Uploaded via as Apple Keynote

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n

Scale like a pro with Gearman Presentation Transcript

  • 1. Scaling like a pro with Gearman
  • 2. Me?Web developer at... well yet another startup!Contributor to Symfony web frameworkFind me on Twitter @kertz
  • 3. My idea of scaling...
  • 4. What is Gearman?A Job serverClient APIWorker API...and lots of client & worker API libraries
  • 5. What’s a job server?Manages the communication between clientsand workers
  • 6. Client & WorkerThe client asks the worker to do a specific jobThe worker does what the client asks, oh yeah!More importantly it’s language independent!PHP Gearman extension
  • 7. How does it work?
  • 8. A Simple Worker Worker
  • 9. Calling the worker Client
  • 10. Making it workStart gearmand in your terminalYou can use -vvv for verbose modeRun the worker and clientForeground and background jobs
  • 11. Status of WorkNumerator/Denominator(X of Y)Store the status in memcache/APCStore in MySQL, Drizzle
  • 12. Knowing The Status Worker
  • 13. Knowing The Status Client
  • 14. Knowing The Status Result
  • 15. Parallel Tasks Client
  • 16. Callbacks Client
  • 17. Callbacks Worker
  • 18. Prioritize WorkNote: Separate queues for each priority level
  • 19. Managing WorkercronGearman Managerhttps://github.com/brianlmoon/GearmanManagersupervisord
  • 20. In RetrospectEasily manage client-worker relationshipLanguage independent (PHP, C, Perl etc.)Parallel, Callbacks, PrioritiesManaging Workers
  • 21. Questions?