News Feed
Jobs Feed
Sections




News Archive
Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Gonzalo Ayuso's Blog:
Speed up PHP scripts with asynchronous database queries
October 11, 2010 @ 11:49:53

In a new post to his blog Gonzalo Ayuso has a suggestion for speeding up your scripts that use multiple database connections, possibly ones with larger queries that could take a while to run - asynchronous query handling.

That's the situation. A web application with 4 heavy queries. Yes I know you can use a cache or things like that but imagine you must perform the four queries yes or yes. As I say before the four database queries are heavy ones. 2 seconds per one. Do it sequentially, that's means our script will use at least 8 seconds (without adding the extra PHP time). Eight seconds are a huge time in a page load. So here I will show up a technique to speed up our website using asynchronous calls.

Since PHP doesn't really support threading, he works around it by creating a separate script for each of the queries (obviously only practical for special cases) as a self-contained unit. Then the "master" script that needs the results of the queries calls each of them via asynchronous curl class (simply named "Fork") that sends off the requests and waits for each result to come back as a json result set.

1 comment voice your opinion now!
database asynchronous query curl json


blog comments powered by Disqus

Similar Posts

DZone.com: Using a stream wrapper to access CouchDb attachments with PHP

PHPEverywhere: New Improved Yummy ADOdb Session Handler

Peter Goodman's Blog: Observers and Dispatchers

Internet.com: Passing Data Between PHP and JavaScript Using JSON (Video)

Abou Kone's Blog: Set up JSON action output in CakePHP 1.3


Community Events











Don't see your event here?
Let us know!


code composer series podcast overview security hhvm facebook opinion language application symfony2 framework install release hack unittest package introduction component

All content copyright, 2014 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework