SlideShare a Scribd company logo
Distribute the
                        workload


                          Helgi Þormar Þorbjörnsson
                        PHP Tek, Chicago, 26th May 2011

Sunday, 29 May 2011
Who am I?



Sunday, 29 May 2011
Helgi




Sunday, 29 May 2011
Helgi
                      VP of Engineering at Orchestra.io




Sunday, 29 May 2011
Helgi
                      VP of Engineering at Orchestra.io
                      Developer at PEAR




Sunday, 29 May 2011
Helgi
                      VP of Engineering at Orchestra.io
                      Developer at PEAR
                      From Iceland




Sunday, 29 May 2011
Helgi
                      VP of Engineering at Orchestra.io
                      Developer at PEAR
                      From Iceland
                      @h on Twitter




Sunday, 29 May 2011
Why Distribute?




Sunday, 29 May 2011
Why Distribute?

                          Efficiency




Sunday, 29 May 2011
Why Distribute?

                          Efficiency

                           Budget



Sunday, 29 May 2011
Why Distribute?

                          Efficiency

                           Budget

                         Perception

Sunday, 29 May 2011
Efficiency


                      10 small servers > 1 big



Sunday, 29 May 2011
Budget




Sunday, 29 May 2011
Budget

                      Spend wisely




Sunday, 29 May 2011
Budget

                      Spend wisely
                      Commodity servers




Sunday, 29 May 2011
Budget

                      Spend wisely
                      Commodity servers
                      Cloud Computing (EC2)




Sunday, 29 May 2011
Perception




Sunday, 29 May 2011
Perception

                      Defer intensive processes




Sunday, 29 May 2011
Perception

                      Defer intensive processes
                      Give instant feedback




Sunday, 29 May 2011
Perception

                      Defer intensive processes
                      Give instant feedback
                      Users keep on browsing




Sunday, 29 May 2011
Perception

                      Defer intensive processes
                      Give instant feedback
                      Users keep on browsing




Sunday, 29 May 2011
Sunday, 29 May 2011
Ant Colonies



Sunday, 29 May 2011
Teamwork


                 When faced with a problem they will
                     solve the problem as one.




Sunday, 29 May 2011
Sunday, 29 May 2011
Sunday, 29 May 2011
Architect for
                      Distribution


Sunday, 29 May 2011
Characteristics




Sunday, 29 May 2011
Characteristics

                         Decoupling




Sunday, 29 May 2011
Characteristics

                         Decoupling
                         Elasticity




Sunday, 29 May 2011
Characteristics

                         Decoupling
                         Elasticity
                         High Availability




Sunday, 29 May 2011
Characteristics

                         Decoupling
                         Elasticity
                         High Availability
                         Concurrency



Sunday, 29 May 2011
Decoupling



Sunday, 29 May 2011
Application


                       DB        API



                      Cache      FE




Sunday, 29 May 2011
Application


                       DB       API



                      Cache      FE




Sunday, 29 May 2011
DB      Application   API




         Cache                      FE


Sunday, 29 May 2011
DB              Application   API




         Cache                              FE
                      Cache
Sunday, 29 May 2011
API
              DB              Application         API




         Cache                                    FE
                      Cache
Sunday, 29 May 2011
API
              DB              Application         API

                                                   API




         Cache                                    FE
                      Cache
Sunday, 29 May 2011
Elasticity



Sunday, 29 May 2011
Cloud Computing



Sunday, 29 May 2011
Load Balancing



Sunday, 29 May 2011
My Favourite


                         HA Proxy
                          Nginx



Sunday, 29 May 2011
Monitoring



Sunday, 29 May 2011
When do I need
                      more servers?


Sunday, 29 May 2011
Needs to be around
                   from the start!


Sunday, 29 May 2011
Keep records



Sunday, 29 May 2011
Spot trends



Sunday, 29 May 2011
Different types




Sunday, 29 May 2011
Different types
                      Hardware Performance




Sunday, 29 May 2011
Different types
                      Hardware Performance
                      Software Performance




Sunday, 29 May 2011
Different types
                      Hardware Performance
                      Software Performance
                      Availability




Sunday, 29 May 2011
Different types
                      Hardware Performance
                      Software Performance
                      Availability
                      Resourcing




Sunday, 29 May 2011
Different types
                      Hardware Performance
                      Software Performance
                      Availability
                      Resourcing




Sunday, 29 May 2011
Applications




Sunday, 29 May 2011
Applications
                        New Relic




Sunday, 29 May 2011
Applications
                        New Relic
                        CloudKick




Sunday, 29 May 2011
Applications
                        New Relic
                        CloudKick
                        ScoutApp




Sunday, 29 May 2011
Applications
                        New Relic
                        CloudKick
                        ScoutApp
                        Nagios




Sunday, 29 May 2011
Applications
                        New Relic
                        CloudKick
                        ScoutApp
                        Nagios
                        Cacti



Sunday, 29 May 2011
Applications
                        New Relic
                        CloudKick
                        ScoutApp
                        Nagios
                        Cacti
                        Circonus

Sunday, 29 May 2011
Automation



Sunday, 29 May 2011
Plug into your
                       monitoring


Sunday, 29 May 2011
Bringing together Monitoring
                      and Elastic behaviour into one
                             beautiful whole!




Sunday, 29 May 2011
Add some intelligence to add /
                      remove servers as needed based
                          on current information.




Sunday, 29 May 2011
Just make sure it
                      doesn’t turn into...


Sunday, 29 May 2011
Skynet!!
Sunday, 29 May 2011
High Availability



Sunday, 29 May 2011
Get a highly available and
                      resilient setup by following a few
                         of those recommendations




Sunday, 29 May 2011
Remember, even Google has outages




Sunday, 29 May 2011
What to avoid



Sunday, 29 May 2011
Local Sessions




Sunday, 29 May 2011
Solution

     Store sessions in DB / Memcache




Sunday, 29 May 2011
Local Memory




Sunday, 29 May 2011
Solution

                      Networked Memcache




Sunday, 29 May 2011
Local Files




Sunday, 29 May 2011
Local Uploads




Sunday, 29 May 2011
Writing to /tmp




Sunday, 29 May 2011
Solution

           Store on S3 or a networked FS




Sunday, 29 May 2011
Solution

         Serve up static files from CDNs




Sunday, 29 May 2011
Servers can vanish at any
                      given time



Sunday, 29 May 2011
Internal APIs



Sunday, 29 May 2011
Application



                        Internal Storage API



                      GFS       S3         FS


Sunday, 29 May 2011
Application



                              Internal DB API



                      Mongo       MySQL         Cache


Sunday, 29 May 2011
Eventually
                      Consistent


Sunday, 29 May 2011
CAP Therom



Sunday, 29 May 2011
Consistency
                      Availability
                      Partition Tolerance


Sunday, 29 May 2011
Consistency

                      All nodes see the same data at
                              the same time




Sunday, 29 May 2011
Availability

                      Node failures do not prevent
                      survivors from continuing to
                                 operate




Sunday, 29 May 2011
Partition Tolerance

                      The system continues to operate
                       despite arbitrary message loss




Sunday, 29 May 2011
Consistency
                      Availability
                      Partition Tolerance


Sunday, 29 May 2011
Queue Systems



Sunday, 29 May 2011
Good for




Sunday, 29 May 2011
Good for
                      Image Processing




Sunday, 29 May 2011
Good for
                      Image Processing
                      Distributed Logs




Sunday, 29 May 2011
Good for
                      Image Processing
                      Distributed Logs
                      Data Mining




Sunday, 29 May 2011
Good for
                      Image Processing
                      Distributed Logs
                      Data Mining
                      Mass Emails




Sunday, 29 May 2011
Good for
                      Image Processing
                      Distributed Logs
                      Data Mining
                      Mass Emails
                      Intensive transformation



Sunday, 29 May 2011
Good for
                      Image Processing
                      Distributed Logs
                      Data Mining
                      Mass Emails
                      Intensive transformation
                      Search

Sunday, 29 May 2011
Common Tools




Sunday, 29 May 2011
Common Tools
                        Gearman




Sunday, 29 May 2011
Common Tools
                        Gearman
                        Hadoop




Sunday, 29 May 2011
Common Tools
                        Gearman
                        Hadoop
                        ZeroMQ




Sunday, 29 May 2011
Common Tools
                        Gearman
                        Hadoop
                        ZeroMQ
                        RabbitMQ




Sunday, 29 May 2011
Common Tools
                        Gearman
                        Hadoop
                        ZeroMQ
                        RabbitMQ
                        And many others!


Sunday, 29 May 2011
Gearman



Sunday, 29 May 2011
Your Client Code
                      Gearman Client API
                      (C, PHP, Perl, MySQL UDF, ...)




         Your App     Gearman Job Server               Gearman
                               gearmand



                      Gearman Worker API
                        (C, PHP, Perl, Python, ...)

                      Your Worker Code



Sunday, 29 May 2011
pear.php.net/
                      net_gearman


Sunday, 29 May 2011
A Story!



Sunday, 29 May 2011
Financial Software



Sunday, 29 May 2011
3000+ Clients




Sunday, 29 May 2011
Each one has 5 external
                           data sources




Sunday, 29 May 2011
Each data source is a
                          web service




Sunday, 29 May 2011
Ran every 6 hours every day




Sunday, 29 May 2011
Cron




Sunday, 29 May 2011
Cron



                      Gearman




Sunday, 29 May 2011
Cron



                      Gearman



                       Job 1




Sunday, 29 May 2011
Cron



                          Gearman

          Web Services

                1          Job 1
                      4
                2

                      5
                3
Sunday, 29 May 2011
Cron



                          Gearman

          Web Services              Processing

                1          Job 1
                                            1
                      4
                                     5
                2
                                            2
                      5             4
                3
                                            3
Sunday, 29 May 2011
But! That wasn’t enough




Sunday, 29 May 2011
Job kicked off on login




Sunday, 29 May 2011
Supervisord



Sunday, 29 May 2011
phpadvent.org/2009/daemonize-
                         your-php-by-sean-coates




Sunday, 29 May 2011
Questions?

                                 @h
                          helgi@orchestra.io




                      Joind.in: http://joind.in/3433
Sunday, 29 May 2011

More Related Content

Viewers also liked

Scale like a pro with Gearman
Scale like a pro with GearmanScale like a pro with Gearman
Scale like a pro with Gearman
Amal Raghav
 
MPI, Erlang and the web
MPI, Erlang and the webMPI, Erlang and the web
MPI, Erlang and the web
Lenz Gschwendtner
 
WebCamp: Developer Day: N2O: The Most Powerful Erlang Web Framework - Максим ...
WebCamp: Developer Day: N2O: The Most Powerful Erlang Web Framework - Максим ...WebCamp: Developer Day: N2O: The Most Powerful Erlang Web Framework - Максим ...
WebCamp: Developer Day: N2O: The Most Powerful Erlang Web Framework - Максим ...
GeeksLab Odessa
 
Perl.Hacks.On.Vim
Perl.Hacks.On.VimPerl.Hacks.On.Vim
Perl.Hacks.On.Vim
Lin Yo-An
 
Gearman for MySQL
Gearman for MySQLGearman for MySQL
Gearman for MySQL
Giuseppe Maxia
 
Candra lab gis v 1
Candra lab gis v 1Candra lab gis v 1
Candra lab gis v 1
Candra Adi Putra
 
Distributed Queue System using Gearman
Distributed Queue System using GearmanDistributed Queue System using Gearman
Distributed Queue System using Gearman
Eric Cho
 
Home Automation with perl
Home Automation with perlHome Automation with perl
Home Automation with perl
flyingrobin13
 
Gearman: A Job Server made for Scale
Gearman: A Job Server made for ScaleGearman: A Job Server made for Scale
Gearman: A Job Server made for Scale
Mike Willbanks
 
Unix Programming with Perl
Unix Programming with PerlUnix Programming with Perl
Unix Programming with Perl
Kazuho Oku
 
Data structures
Data structuresData structures
Data structures
Saurabh Mishra
 

Viewers also liked (11)

Scale like a pro with Gearman
Scale like a pro with GearmanScale like a pro with Gearman
Scale like a pro with Gearman
 
MPI, Erlang and the web
MPI, Erlang and the webMPI, Erlang and the web
MPI, Erlang and the web
 
WebCamp: Developer Day: N2O: The Most Powerful Erlang Web Framework - Максим ...
WebCamp: Developer Day: N2O: The Most Powerful Erlang Web Framework - Максим ...WebCamp: Developer Day: N2O: The Most Powerful Erlang Web Framework - Максим ...
WebCamp: Developer Day: N2O: The Most Powerful Erlang Web Framework - Максим ...
 
Perl.Hacks.On.Vim
Perl.Hacks.On.VimPerl.Hacks.On.Vim
Perl.Hacks.On.Vim
 
Gearman for MySQL
Gearman for MySQLGearman for MySQL
Gearman for MySQL
 
Candra lab gis v 1
Candra lab gis v 1Candra lab gis v 1
Candra lab gis v 1
 
Distributed Queue System using Gearman
Distributed Queue System using GearmanDistributed Queue System using Gearman
Distributed Queue System using Gearman
 
Home Automation with perl
Home Automation with perlHome Automation with perl
Home Automation with perl
 
Gearman: A Job Server made for Scale
Gearman: A Job Server made for ScaleGearman: A Job Server made for Scale
Gearman: A Job Server made for Scale
 
Unix Programming with Perl
Unix Programming with PerlUnix Programming with Perl
Unix Programming with Perl
 
Data structures
Data structuresData structures
Data structures
 

Similar to Distribute the workload, PHPTek, Amsterdam, 2011

開発者のためのiPhone⇔Androidアプリ移植のポイント
開発者のためのiPhone⇔Androidアプリ移植のポイント開発者のためのiPhone⇔Androidアプリ移植のポイント
開発者のためのiPhone⇔Androidアプリ移植のポイント
yoski
 
web标准化交流会上海站bobby分享
web标准化交流会上海站bobby分享web标准化交流会上海站bobby分享
web标准化交流会上海站bobby分享
裕波 周
 
web标准化交流会bobby分享
web标准化交流会bobby分享web标准化交流会bobby分享
web标准化交流会bobby分享
裕波 周
 
Глеб Калинин. Инструменты прототипирования
Глеб Калинин. Инструменты прототипированияГлеб Калинин. Инструменты прототипирования
Глеб Калинин. Инструменты прототипирования
Raum7
 
Writing Fast Client-Side Code: Lessons Learned from SproutCore
Writing Fast Client-Side Code: Lessons Learned from SproutCoreWriting Fast Client-Side Code: Lessons Learned from SproutCore
Writing Fast Client-Side Code: Lessons Learned from SproutCore
Yehuda Katz
 
Scaling websites with RabbitMQ A(rlvaro Videla)
Scaling websites with RabbitMQ   A(rlvaro Videla)Scaling websites with RabbitMQ   A(rlvaro Videla)
Scaling websites with RabbitMQ A(rlvaro Videla)
Ontico
 
Building an alarm clock with node.js
Building an alarm clock with node.jsBuilding an alarm clock with node.js
Building an alarm clock with node.js
Felix Geisendörfer
 
Getting Involved in the Drupal Community
Getting Involved in the Drupal CommunityGetting Involved in the Drupal Community
Getting Involved in the Drupal Community
karschsp
 
Teletrain liever geen mensen om service te geven
Teletrain liever geen mensen om service te gevenTeletrain liever geen mensen om service te geven
Teletrain liever geen mensen om service te geven
Vincent Everts
 
Alternative Software Development Methodology
Alternative Software Development MethodologyAlternative Software Development Methodology
Alternative Software Development Methodology
ทวิร พานิชสมบัติ
 
Agile xp tdd@gosoft
Agile xp tdd@gosoftAgile xp tdd@gosoft
Agile xptdd@gosoft
Agile xptdd@gosoftAgile xptdd@gosoft
Titanium setup
Titanium setupTitanium setup
Titanium setup
Ket Majmudar
 
TAG Recruiting Atlanta - 3 Phases of Mobile Recruiting Strategy
TAG Recruiting Atlanta - 3 Phases of Mobile Recruiting StrategyTAG Recruiting Atlanta - 3 Phases of Mobile Recruiting Strategy
TAG Recruiting Atlanta - 3 Phases of Mobile Recruiting Strategy
Kane Cochran
 
Developing Immersive Virtual Learning Environments | Storyboard
Developing Immersive Virtual Learning Environments | StoryboardDeveloping Immersive Virtual Learning Environments | Storyboard
Developing Immersive Virtual Learning Environments | Storyboard
Sam Pabon
 
Ruby goes to hollywood
Ruby goes to hollywoodRuby goes to hollywood
Ruby goes to hollywood
ehuard
 
Carla diana sketching11
Carla diana sketching11Carla diana sketching11
Carla diana sketching11
Carla Diana
 
Ruby can haz Everyone
Ruby can haz EveryoneRuby can haz Everyone
Ruby can haz Everyone
RubyX
 
It's the Little Things - Brad Colbow, Re:Build 2011
It's the Little Things - Brad Colbow, Re:Build 2011It's the Little Things - Brad Colbow, Re:Build 2011
It's the Little Things - Brad Colbow, Re:Build 2011
bcolbow
 
Envato Dev Ops - Alt.Net Melbourne
Envato Dev Ops - Alt.Net MelbourneEnvato Dev Ops - Alt.Net Melbourne
Envato Dev Ops - Alt.Net Melbourne
John Barton
 

Similar to Distribute the workload, PHPTek, Amsterdam, 2011 (20)

開発者のためのiPhone⇔Androidアプリ移植のポイント
開発者のためのiPhone⇔Androidアプリ移植のポイント開発者のためのiPhone⇔Androidアプリ移植のポイント
開発者のためのiPhone⇔Androidアプリ移植のポイント
 
web标准化交流会上海站bobby分享
web标准化交流会上海站bobby分享web标准化交流会上海站bobby分享
web标准化交流会上海站bobby分享
 
web标准化交流会bobby分享
web标准化交流会bobby分享web标准化交流会bobby分享
web标准化交流会bobby分享
 
Глеб Калинин. Инструменты прототипирования
Глеб Калинин. Инструменты прототипированияГлеб Калинин. Инструменты прототипирования
Глеб Калинин. Инструменты прототипирования
 
Writing Fast Client-Side Code: Lessons Learned from SproutCore
Writing Fast Client-Side Code: Lessons Learned from SproutCoreWriting Fast Client-Side Code: Lessons Learned from SproutCore
Writing Fast Client-Side Code: Lessons Learned from SproutCore
 
Scaling websites with RabbitMQ A(rlvaro Videla)
Scaling websites with RabbitMQ   A(rlvaro Videla)Scaling websites with RabbitMQ   A(rlvaro Videla)
Scaling websites with RabbitMQ A(rlvaro Videla)
 
Building an alarm clock with node.js
Building an alarm clock with node.jsBuilding an alarm clock with node.js
Building an alarm clock with node.js
 
Getting Involved in the Drupal Community
Getting Involved in the Drupal CommunityGetting Involved in the Drupal Community
Getting Involved in the Drupal Community
 
Teletrain liever geen mensen om service te geven
Teletrain liever geen mensen om service te gevenTeletrain liever geen mensen om service te geven
Teletrain liever geen mensen om service te geven
 
Alternative Software Development Methodology
Alternative Software Development MethodologyAlternative Software Development Methodology
Alternative Software Development Methodology
 
Agile xp tdd@gosoft
Agile xp tdd@gosoftAgile xp tdd@gosoft
Agile xp tdd@gosoft
 
Agile xptdd@gosoft
Agile xptdd@gosoftAgile xptdd@gosoft
Agile xptdd@gosoft
 
Titanium setup
Titanium setupTitanium setup
Titanium setup
 
TAG Recruiting Atlanta - 3 Phases of Mobile Recruiting Strategy
TAG Recruiting Atlanta - 3 Phases of Mobile Recruiting StrategyTAG Recruiting Atlanta - 3 Phases of Mobile Recruiting Strategy
TAG Recruiting Atlanta - 3 Phases of Mobile Recruiting Strategy
 
Developing Immersive Virtual Learning Environments | Storyboard
Developing Immersive Virtual Learning Environments | StoryboardDeveloping Immersive Virtual Learning Environments | Storyboard
Developing Immersive Virtual Learning Environments | Storyboard
 
Ruby goes to hollywood
Ruby goes to hollywoodRuby goes to hollywood
Ruby goes to hollywood
 
Carla diana sketching11
Carla diana sketching11Carla diana sketching11
Carla diana sketching11
 
Ruby can haz Everyone
Ruby can haz EveryoneRuby can haz Everyone
Ruby can haz Everyone
 
It's the Little Things - Brad Colbow, Re:Build 2011
It's the Little Things - Brad Colbow, Re:Build 2011It's the Little Things - Brad Colbow, Re:Build 2011
It's the Little Things - Brad Colbow, Re:Build 2011
 
Envato Dev Ops - Alt.Net Melbourne
Envato Dev Ops - Alt.Net MelbourneEnvato Dev Ops - Alt.Net Melbourne
Envato Dev Ops - Alt.Net Melbourne
 

More from Helgi Þormar Þorbjörnsson

Phar, The PHP .exe Format
Phar, The PHP .exe FormatPhar, The PHP .exe Format
Phar, The PHP .exe Format
Helgi Þormar Þorbjörnsson
 
Frontend Caching, PHPTek 2011, Chicago
Frontend Caching, PHPTek 2011, ChicagoFrontend Caching, PHPTek 2011, Chicago
Frontend Caching, PHPTek 2011, Chicago
Helgi Þormar Þorbjörnsson
 
Think like an ant, distribute the workload - PhpDay, Italy, 2011
Think like an ant, distribute the workload - PhpDay, Italy, 2011Think like an ant, distribute the workload - PhpDay, Italy, 2011
Think like an ant, distribute the workload - PhpDay, Italy, 2011
Helgi Þormar Þorbjörnsson
 
Frontend caching - PHP Day, Italy, 2011
Frontend caching - PHP Day, Italy, 2011Frontend caching - PHP Day, Italy, 2011
Frontend caching - PHP Day, Italy, 2011
Helgi Þormar Þorbjörnsson
 
Frontend caching
Frontend cachingFrontend caching
Plant Pyrus in your system - A guide to a plugin system.
Plant Pyrus in your system - A guide to a plugin system.Plant Pyrus in your system - A guide to a plugin system.
Plant Pyrus in your system - A guide to a plugin system.
Helgi Þormar Þorbjörnsson
 
PEAR2 & Pyrus - The look ahead
PEAR2 & Pyrus - The look aheadPEAR2 & Pyrus - The look ahead
PEAR2 & Pyrus - The look ahead
Helgi Þormar Þorbjörnsson
 
Frontend Caching - The "new" frontier
Frontend Caching - The "new" frontierFrontend Caching - The "new" frontier
Frontend Caching - The "new" frontier
Helgi Þormar Þorbjörnsson
 
Caching for Cash, part 4 DPC 2009
Caching for Cash, part 4 DPC 2009Caching for Cash, part 4 DPC 2009
Caching for Cash, part 4 DPC 2009
Helgi Þormar Þorbjörnsson
 
Cashing For Cash, part 1 DPC 2009
Cashing For Cash, part 1 DPC 2009Cashing For Cash, part 1 DPC 2009
Cashing For Cash, part 1 DPC 2009
Helgi Þormar Þorbjörnsson
 
Website releases made easy with the PEAR installer, OSCON 2009
Website releases made easy with the PEAR installer, OSCON 2009Website releases made easy with the PEAR installer, OSCON 2009
Website releases made easy with the PEAR installer, OSCON 2009
Helgi Þormar Þorbjörnsson
 
Caching for Cash - Part 4
Caching for Cash - Part 4Caching for Cash - Part 4
Caching for Cash - Part 4
Helgi Þormar Þorbjörnsson
 
Caching for Cash - Part 1
Caching for Cash - Part 1Caching for Cash - Part 1
Caching for Cash - Part 1
Helgi Þormar Þorbjörnsson
 
Coping with Cyber Monday
Coping with Cyber MondayCoping with Cyber Monday
Coping with Cyber Monday
Helgi Þormar Þorbjörnsson
 
Website releases made easy with the PEAR installer - Barcelona 2008
Website releases made easy with the PEAR installer - Barcelona 2008Website releases made easy with the PEAR installer - Barcelona 2008
Website releases made easy with the PEAR installer - Barcelona 2008
Helgi Þormar Þorbjörnsson
 

More from Helgi Þormar Þorbjörnsson (15)

Phar, The PHP .exe Format
Phar, The PHP .exe FormatPhar, The PHP .exe Format
Phar, The PHP .exe Format
 
Frontend Caching, PHPTek 2011, Chicago
Frontend Caching, PHPTek 2011, ChicagoFrontend Caching, PHPTek 2011, Chicago
Frontend Caching, PHPTek 2011, Chicago
 
Think like an ant, distribute the workload - PhpDay, Italy, 2011
Think like an ant, distribute the workload - PhpDay, Italy, 2011Think like an ant, distribute the workload - PhpDay, Italy, 2011
Think like an ant, distribute the workload - PhpDay, Italy, 2011
 
Frontend caching - PHP Day, Italy, 2011
Frontend caching - PHP Day, Italy, 2011Frontend caching - PHP Day, Italy, 2011
Frontend caching - PHP Day, Italy, 2011
 
Frontend caching
Frontend cachingFrontend caching
Frontend caching
 
Plant Pyrus in your system - A guide to a plugin system.
Plant Pyrus in your system - A guide to a plugin system.Plant Pyrus in your system - A guide to a plugin system.
Plant Pyrus in your system - A guide to a plugin system.
 
PEAR2 & Pyrus - The look ahead
PEAR2 & Pyrus - The look aheadPEAR2 & Pyrus - The look ahead
PEAR2 & Pyrus - The look ahead
 
Frontend Caching - The "new" frontier
Frontend Caching - The "new" frontierFrontend Caching - The "new" frontier
Frontend Caching - The "new" frontier
 
Caching for Cash, part 4 DPC 2009
Caching for Cash, part 4 DPC 2009Caching for Cash, part 4 DPC 2009
Caching for Cash, part 4 DPC 2009
 
Cashing For Cash, part 1 DPC 2009
Cashing For Cash, part 1 DPC 2009Cashing For Cash, part 1 DPC 2009
Cashing For Cash, part 1 DPC 2009
 
Website releases made easy with the PEAR installer, OSCON 2009
Website releases made easy with the PEAR installer, OSCON 2009Website releases made easy with the PEAR installer, OSCON 2009
Website releases made easy with the PEAR installer, OSCON 2009
 
Caching for Cash - Part 4
Caching for Cash - Part 4Caching for Cash - Part 4
Caching for Cash - Part 4
 
Caching for Cash - Part 1
Caching for Cash - Part 1Caching for Cash - Part 1
Caching for Cash - Part 1
 
Coping with Cyber Monday
Coping with Cyber MondayCoping with Cyber Monday
Coping with Cyber Monday
 
Website releases made easy with the PEAR installer - Barcelona 2008
Website releases made easy with the PEAR installer - Barcelona 2008Website releases made easy with the PEAR installer - Barcelona 2008
Website releases made easy with the PEAR installer - Barcelona 2008
 

Recently uploaded

DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
ThomasParaiso2
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Vladimir Iglovikov, Ph.D.
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
Claudio Di Ciccio
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Data structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdfData structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdf
TIPNGVN2
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 

Recently uploaded (20)

DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Data structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdfData structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdf
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 

Distribute the workload, PHPTek, Amsterdam, 2011