近期关注的Web开发技术

1. Node.js:

http://nodejs.org/

Node.js其实就是Javascript的服务器端版本的一个实现。它采用了Google V8引擎作为其Javascript运行的核心引擎,动力强劲,效率很高。充分利用率Javascript的事件机制,将一切耗时的IO操作采用异步方式处理。其网络访问的核心采用了和高性能Web服务器Nginx一样的事件驱动IO模型,底层采用Linux下的epoll等高性能网络通讯接口实现,在内存和CPU开销拥有很大的优势,尤其是对于需要大量实时性要求很高,或必须采用HTTP长连接形式的请求处理非常有效率。之前在VMWare下虚拟机中Ubuntu Linux环境下使用webbench进行的压力测试显示,500客户端并发,30秒内可处理近4万次访问请求,并且页面无明显延迟。同样环境下的Nginx+PHP FastCGI仅能做到4000多次访问请求的处理,其性能优势可见一斑。另外客户端和服务器端均可采用Javascript,也有利于前后端开发的整合与统一。

2. Scala:

http://www.scala-lang.org/

Scala是近几年才出现出现的一种面向对象语言,同样基于Java技术的JVM运行,因此与Java语言具有良好的技术相容性。语法的简洁灵活是Java所不能比拟的。由于接触Scala不多,在此也不好评价。国外著名的轻博客网站tumblr在其高性能大数据体系结构中,Scala成为其重要的开发语言。据说tumblr最初的架构采用了以PHP为核心的体系结构,但随着规模的不断扩大,Scala成为了其更优的选择。详情请看CSDN的这篇文章《Tumblr:150亿月浏览量背后的架构挑战》。

3. Dart:

http://www.dartlang.org/

著名的创新型公司谷歌于去年10月底发布的全新语言Dart。谷歌设计Dart的目的,一定程度上为了寻求在Javascript之外,Web前端技术发展的可能性。由于Javascript本身的一些先天性不足(Javascript基于原型的特性,使得其具有明显的非主流色彩),进一步提高Javascript引擎性能的困境,谷歌的V8引擎团队参与到了Dart语言的创始工作中。最近,谷歌甚至发布的内建Dart虚拟机的Chrome(称为Dartium)浏览器。作为开发PHP以及Java出身的博主来说,Dart的贴心特性正是博主所亟待寻求的。Dart与Javascript不同,Dart是一种面向对象的语言,其中拥有了Javascript缺乏的类机制,这一点上和Java是如出一辙的,令人兴奋的是,Dart还支持了类似PHP中使用美元符号$在字符串中动态变量的机制,这一点让写习惯了PHP的人倍感亲切。目前,Dart支持编译为Javascript脚本,以便在任一平台上使用,长远来看,火狐、Opera等标准浏览器阵营,都向Dart伸出了橄榄枝。但目前来看,Dart的Hello world示例编译出来的Javascript代码,有1万7千多行之巨,Dart距离实用,还有一段路要走。博主非常希望它的到来,并希望将来有一天,它也能为Web后端做出贡献。

4. PHP 5.4:

酝酿已久的PHP 5.4版本终于释放了RC6的版本。作为一种在Web开发领域叱咤风云10年已久的语言,PHP真的可以算的上是Web时代的骨灰级语言了。随着近几年Web技术的快速发展,进行Web开发的选择也越来越多。因此PHP自身也在不断地增强演进。根据第三方的测评显示,RC版本的PHP 5.4比PHP5.3性能提升了近一倍,内存占用也显著降低。另外,PHP 5.4中也对语言本身做出了诸多改进,比如内置了一个用来开发调试程序的Web服务器,移除了一些不堪使用的特性,支持了Traits方式的类复用,博主觉得最大的进步是,支持了$var = explode(“,”, “Laruence,male”)[0];这种形式的调用。
这是一个介绍PHP 5.4的幻灯片:http://www.slideshare.net/paulgao/come-on-php-54