-
The web is broken, we can all go home now.-- Rasmus Lerdorf
-
If you can’t explain it simply, you don’t understand it well enough.-- Albert Einstein
-
Facebook and Rasmus Lerdorf on HipHop for PHP
In summary:
One common way to address these inefficiencies is to rewrite the more complex parts of your PHP application directly in C++ as PHP Extensions. This largely transforms PHP into a glue language between your front end HTML and application logic in C++. From a technical perspective this works well, but drastically reduces the number of engineers who are able to work on your entire application. Learning C++ is only the first step to writing PHP Extensions, the second is understanding the Zend APIs. Given that our engineering team is relatively small — there are over one million users to every engineer — we can’t afford to make parts of our codebase less accessible than others.
Calling the code translator “a nifty trick,” Lerdorf worries that some developers will see HipHop as “some kind of magic bullet” for site performance.
Speeding up one of the faster parts of your system isn’t going to give you anywhere near as much of a benefit as speeding up, or eliminating, one of the slower parts of your overall system. If on every request you are hitting memcache/postgresql/mysql 10 times and spending a lot of time in system calls, don’t expect miracles from HipHop.
Lerdorf ended by suggesting Yahoo’s YSlow and Google’s Page Speed for analyzing front-end issues, and he recommended Valgrind’s Callgrind for low-level back-end profiling and XDebug for userspace PHP profiling.
Anyone who knows me knows that I am a big fan of nifty tricks that solve the problem. When I first heard about the Facebook effort I was assuming they were writing a JIT based on LLVM V8 or something along those lines. Writing a good JIT is hard. Doing static code analysis and generating compilable C++ from it is indeed a nifty trick. It’s not “just” a nifty trick, it is a cool trick that takes advantage of a number of characteristics of PHP
If you have done your homework and find that your web servers are cpu-bound, you are already using an opcode cache like APC and your Callgrind callgraph shows you that the PHP executor is a significant bottleneck, then HipHop PHP is definitely something you should be looking at.
-
To study and not think is a waste. To think and not study is dangerous.-- Confucius
-
Feliz Año 2010 (Happy New Year 2010)
{español}
Feliz año 2010, que Dios los cuide y los ilumine en el proximo año.{english}
Happy new year 2010, God bless you all. -
YTS (Yahoo! Traffic Server)
Good News, YTS (Yahoo! Traffic Server) is being released as open source project, here is a TechCrunch article:
“Yahoo uses Traffic Server, a piece of software initially acquired via Inktomi, to support this massive amount of traffic.”
Yahoo Open Sources Traffic Server
and this is the YTS proposal in The Apache Software Foundation:
“Traffic Server is fast, scalable and extensible HTTP/1.1 compliant caching proxy server.”
“Traffic Server is a piece of software initially acquired by Yahoo! from Inktomi. The software has been actively developed and used at Yahoo for the last three years, and we’re now getting ready to Open Source this project.”
Traffic Server ProposalThis is the press release from Yahoo!:
-
Busy week
This week I am finishing my Master’s degree (MISM), I have to give 2 presentations for Yahoo! News Taiwan, I am on call 24/7, but I am ready for it ;).
-
Simplicity is power
I love simplicity, that’s why I like this commercial from Citrix, my friend Oscar tweeted it to me today. In short words, the simple the better, but not simpler.
“At Citrix, we believe enterprise computing has become far too complex. Web-era companies have changed the rules. With cloud computing and software as a service, it’s now about”.
-
Web Exponents speaker series
Industry gurus speaking at Google share their innovations and best practices for web development. The goal of the Web Exponents speaker series is to raise web technology to a higher level. Hosted by Steve Souders.
-
Tata
Mi querido y recordado abuelo, “Tata”, con el comparti muchos momentos que quisiera revivir con mi futura generación, su caracter expresaba sencillez, una persona muy trabajadora y amable con los demas, su misión fue levantar a toda una familia con esfuerzo y dedicación, sus consejos siempre estaran en mi corazon:
“No tengo palabras para expresar lo que mucho que los quiero y les ruego que rezen por mi y permanezcan unidos pues la familia unida jamas sera vencida.”
Referencia de su ultima carta
Log
10 Mar '10
07 Mar '10
04 Feb '10
29 Jan '10
31 Dec '09
02 Nov '09
20 Oct '09
08 Oct '09
06 Oct '09
22 Sep '09

