Metamarket的CTO Mike Driscoll最近发表了一篇略带煽动性的帖子,讨论了Web应用的架构。他认为Node.js等框架预示着LAMP的终结。
三个月前,我们决定废弃仪表盘选用的框架:Python的Django,并用Node.js(服务器端的Javascript)重新构建了框架。鉴于LAMP堆栈已经死亡,我们才做出了这个决定。
Mike认为Web有三个阶段:
- 1991-1999:HTML时代——这是个文档的时代。
- 2000-2009:LAMP时代——使用数据库的时代。
- 2010-??:Javascript时代。Javascript时代是事件流的时代。
现代的Web页面已经不再是页面了,它们都是事件驱动的应用,信息会通过这些应用流转。
他解释道:
LAMP架构已经死了,因为对于响应里的Mashup,很少有应用愿意把全部的有效负载转移到很小的事件上去;他们只想用
Javascript更新DOM的一个片段。AJAX做到了这一点,但如果服务器端的LAMP模板有10%的HTML和90%的Javascript,这
么做显然是不对的……
Mike认为,服务器的主要作用就是带着数据(JSON)把应用发送到客户端(Javascript),并让客户端从中构造UI。服务器的次要作用则是监听处理事件的流,并有效地把响应推回客户端,这些事件可能是一次新的编辑、一条消息、或是Ticker发生了变化。英特尔在Android的重点
一些人对此发表了评论:
Bruce Atherton赞成Mike的观点,但他认为事件并不会通过HTTP来流转:
Websockets和SPDY将会接管这方面的处理,因为和HTTP相比,它们更合适这个任务。
Chase Sechrist已经在很多地方使用了Node.js,即便如此,他仍然列举了一些对Node.js的担忧:
你还需要知道一些高级知识,比如竞态条件的调试方法、事件循环的工作原理,甚至在递归回调导致栈溢出时,调用堆栈的处理方式。正因为如此,对那些写了二十年C的人、还有刚开始编程的初级工程师来说,控制流还是非常奇怪、令人费解的。人人
“Jorjun”指出,以现在的变化速度来看,即使Javascript这个新的架构是合理的,它也不会太持久:
两年之内会有一种更高效的方式对宝贵的IP进行编码。需要注意的是,新的方式正在出现,Java对它们没有任何意义——这些方式
在九十年代末还没有出现。Javascript的愚蠢名副其实。它有大括号、奇怪的Fudgery、极其恼人的Artefact,对我这样的老学究来
说,Javascript看起来轻率、讨厌、太复杂而容易混淆。女装品牌排行榜
NOLOH的联合创始人Asher Snyder认同帖子的前提条件:“Web应该、也正在转向事件。”但并不相信Javascript能引领方向。他认为“我们正在走向一个平台或统一语言的时代,因为只有平台或统一语言才能让快速开发真正处理好Web的疯狂”。
Subbu Allamaraju最近发布了Node.js和Play的一些性能对比数据,InfoQ和他简单讨论了一下:
就个人而言,我发现Node.js和Play等框架让Web开发人员觉得很兴奋,因为它们带来了一些新的思想。在Web框架领
域,特别是在Java端,这样的简单性已经很久违了。尤其是Play,它在Netty之上,而不是传统的Servlet框架,是一个很不错的选择。
Web应用架构的演进确实很快。由于Web应用变得越来越“厚重”,特别是在事件驱动的世界里,人们只能思考REST还剩下什么,看来我们要回到最
初开始的地方了。最近我们确实没怎么听说有关REST及其统一接口的消息,还有它怎样成功改变Web应用架构的相关内容。你对Web应用架构的未来持什么
观点呢?你怎么看Javascript成为主流的编程语言?
分享到:
相关推荐
LAMP兄弟连PPT--JavaScript高级
LavaLamp jQuery Sliding Menu 一个基于jquery的滑动菜单效果,体积比较小巧。有三种显示效果,能给你的页面增色不少。
具体请见Demo 支持HTML,apsx,jsp,php,Ajax,javascript等分页 支持模式Link:Content.aspx?pageIndex=1&pageSize=10...Content.aspx?...支持模式Javascript:Javascript:setMyPager(index,pageSize);
LAMP兄弟连PPT--JavaScript简介.exe
javascript特效javascript特效javascript特效javascript特效javascript特效javascript特效javascript特效javascript特效
JavaScript\JavaScript教程JavaScript\JavaScript教程JavaScript\JavaScript教程JavaScript\JavaScript教程
本书是一本全面、深入介绍JavaScript语言的学习指南。本书共分四个部分,第1部分帮助读者快速入手,掌握基本的JavaScript编程要点;第2部分介绍JavaScript的发展和技术背景;第3部分深入探索JavaScript,介绍了语法...
javascript效果javascript效果javascript效果javascript效果
javascript笔记javascript笔记javascript笔记
javascript帮助文档javascript帮助文档javascript帮助文档javascript帮助文档javascript帮助文档javascript帮助文档javascript帮助文档javascript帮助文档javascript帮助文档javascript帮助文档
javascriptAPI,javascript参考资料,javascript
JavaScript简单教材JavaScript简单教材JavaScript简单教材JavaScript简单教材JavaScript简单教材JavaScript简单教材JavaScript简单教材JavaScript简单教材JavaScript简单教材
JavaScript函数(源代码)JavaScript函数(源代码)JavaScript函数(源代码)JavaScript函数(源代码)JavaScript函数(源代码)JavaScript函数(源代码)JavaScript函数(源代码)JavaScript函数(源代码)...
JavaScript5,JavaScript 5文档,JavaScript 5资料
JavaScript课堂习题答案JavaScript课堂习题答案JavaScript课堂习题答案JavaScript课堂习题答案JavaScript课堂习题答案JavaScript课堂习题答案JavaScript课堂习题答案JavaScript课堂习题答案JavaScript课堂习题答案...
JavaScript 语法集锦 JavaScript语法 JavaScript语法集锦 JavaScript
《JavaScript权威指南(第6版)》主要讲述的内容涵盖JavaScript语言本身,以及Web浏览器所实现的JavaScript API。本书第6版涵盖了HTML5和ECMAScript 5,很多章节完全重写,增加了当今Web开发的最佳实践的内容,新增...
JavaScript手册 JavaScript手册 JavaScript手册
什么是javascript,学习javascript 什么是javascript,学习javascript 什么是javascript,学习javascript
深入理解JavaScript系列(1):编写高质量JavaScript代码的基本要点 深入理解JavaScript系列(2):揭秘命名函数表达式 深入理解JavaScript系列(3):全面解析Module模式 深入理解JavaScript系列(4):立即调用...