Upload
chris-tankersley
View
10.702
Download
2
Tags:
Embed Size (px)
DESCRIPTION
This goes over a bit of what node.js is, why you might want to use it, and how to use it with your PHP projects.
Citation preview
PHP and node.js Together
5/15/2013 php|tek 2013
E-mail: [email protected]: @dragonmantank
App.net: @ctankersley
Who Are You and Why Are You In My House At My Conference
Chris Tankersley Doing PHP for 9 Years Lots of projects no one uses, and a
few that some do TL;DR https://github.com/
dragonmantank
March 3rd, 2013 MidwestPHP 2
What We’re Gonna Do
Go over what node.js is What good is node.js? Different ways to use it with PHP
5/15/2013 php|tek 2013
What Is node.js?
5/15/2013 php|tek 2013
The Abstract
node.js is a server-side implementation of the Google V8
JavaScript engine
In broad terms, it does the same job as PHP but with JavaScript
5/15/2013 php|tek 2013
5/15/2013 php|tek 2013
Advantages for node.js
It’s JavaScript npm is pretty awesome It’s fast There’s a huge community
5/15/2013 php|tek 2013
Sample node.js app
It’s just JavaScript, nothing fancy
5/15/2013 php|tek 2013
Little less trivial example
5/15/2013 php|tek 2013
Lies Benchmarks
node.js
Silex
5/15/2013 php|tek 2013
What can you use node.js for?
Background tasks Server-side scripts API endpoints Websites
5/15/2013 php|tek 2013
Working with PHP
5/15/2013 php|tek 2013
Call it through exec()
Call node.js just like any other program
5/15/2013 php|tek 2013
Connect it to your database
5/15/2013 php|tek 2013
Out of band work
Push something into a redis via PHP, and have node.js listen and react
5/15/2013 php|tek 2013
Pubsub
PHP and node.js connect to a redis channel
PHP publish something to the channel
node.js gets the message and reacts Really good for reacting to events,
but requires node.js to be listening
5/15/2013 php|tek 2013
Work Queues
Same idea, but the work sits there until someone deals with it
5/15/2013 php|tek 2013
Websockets
Allows two-way communication from the browser to the server
Most browsers should support it Use socket.io to handle old browsers
5/15/2013 php|tek 2013
Putting it all together
5/15/2013 php|tek 2013
Questions?
5/15/2013 php|tek 2013