亲爱的PHP我要离开你 因为我对NodeJs更有感
发布于 12 年前 作者 ymk18 7106 次浏览 最后一次编辑是 8 年前

亲爱的PHP,

我知道这封信不会给你惊喜。我们在一起已经有一些时日了,但是,从今天开始,我们将分道扬镳。

写下这些并不容易。你和我共度了很长时间。很难相信,在10年前你就欢快的接受我,让我进入你的怀抱。你年轻,sexy,和我的前任Perl比起来,你犹如一阵清风。我们在一起没过多久,你开始给我带来效益,过去的十年,我的每一份工作都是以你为基础的。 我们拥有很多美好的时光。记不记我们上了CNN头版【1】,14天里就获得$500的进账?这些年,每一次动态创建PDF,我的脸上都会绽放出笑容。

但是我们仍然有艰难的日子。我希望在我的余生里,再也不要听到这个词“register globals”(注册全局变量)。你也知道,直到现在,我还留着和你一起创建SOAP客户端的伤疤。我们谁也不能保证可靠(不知道PHP V6 发布后,以及支持UTF-8后会是怎么样的情形?)。不论如何,我们此前总是能解决分歧。

但是,从明天开始,10年来的第一次,我的“日常工作”就不再有你了。我离开你奔node.js而去。我和node.js是通过我们共同的朋友jQuery认识的。最初我只是认为node.js只是当月的新宠,仅仅在邮件列表里活跃一阵罢了。但是现在,我迷上了他的异步情调,而且着实在想着和她有一个共同的未来。 一年之前,我和你一起与couch工作愉快,我当时想着,也许我们的关系我一直这样下去。然后,我和node在couch上度过了一些时间,然后——天啊,couch使用JSON,他挠痒了我的脚趾头curl(makes my toes curl)。老实说,你真的不能和node比,因为她和曾经的你一样,年轻,sexy,而且轻盈快捷。我知道,你其他的男友可能会和我有争论,但是我已经被node打败了。你的男友们会不断的和命名空间作斗争,而我和node将没有阻塞,疯狂的spawing(产卵??).

我并没有说我们再也不见了——我的blog不是仍然由你提供的吗。但是我要前行,希望你也一直向前。如果你想看看我和node将走向哪里,那么你停下一会儿看看吧。也许我们能让你看到你的严重异常(fatal exceptions)。

你的虔诚的,

Shawn

原文:http://article.yeeyan.org/view/91891/212461

14 回复

这老外程序猿。。。握个爪先!
嘿嘿 不过我还没跟PHP分手,也还没被NodeJS打败,有想法是把PHP工程中可借鉴的地方移植到Node来!!

spawn 在 Node 在 require 'child_process' 里头可以调用 shell 命令… http://nodejs.org/docs/v0.3.1/api/child_processes.html#child_process.spawn
不过 PHP 里头是什么? 应该差不太多吧…

PHP里提供了system(),exec(),passthru()方法执行shell命令,跟NodeJSchild_process的几个方法大同小异,都是对shell命令的包装执行,也就是传入的命令格式和原生shell命令一样!

@sunshine1988 照这意思, PHP 里调用 shell 命令是很频繁了?

@jiyinyiyong 看应用需求吧,个人经验网站应用一般不会用到,最大的用处我认为还是用PHP语言做辅助编写系统命令行脚本,毕竟shell脚本在编写方便性上不如PHP(对非专业系统管理员而言),也有观点称NodeJS写shell脚本,优势也是于非专业系统管理员而言的Javascript语言使用方便性~

@sunshine1988 要是 JS 通吃前端+后端+服务器维护那可以嚣张了 ^0^

@jiyinyiyong 开源的力量 会加快JS is everywhere这一目标的实现速度的~

这文章写的赞啊

疯狂的spawing(产卵??)

spawing 是一个术语,比如 lighttpd 处理 php 的 cgi 就叫 spawn-fcgi,这类程序有一个特性,就是可以动态的生成子进程来处理更多的 php 请求,这个生成子进程的行为就叫 spawing 。

@sunshine1988 child_process.spawn支持以stream的形式读取stdout,stderr,以及写入stdin,所以更能模拟程序的io。

看成更有喜感了。。

哈哈, 这个老外好有激情, 好有文采

开发一个仿 discuz X 的 nodejs 社区吧, 这样在中国就人气大火

回到顶部