InfoQ

InfoQ

新闻

我的书签

登录注册 以永久保存书签。

该内容已经被标记书签!

标记书签错误,请重试!

复合Web API Play Framework评估

作者 Jean-Jacques Dubray 译者 张龙 发布于 2011年7月16日

领域
企业架构,
架构 & 设计,
语言 & 开发
主题
Web API ,
Java ,
Web框架 ,
语言 ,
API ,
架构 ,
编程 ,
Web服务器 ,
Node.js

近日,来自LinkedIn的首席软件工程师Yevgeniy Brikman发表了一篇文章,谈到了他对Java Web框架——Play Framework的评价与看法

Play最吸引我眼球的是对异步编程的支持,这有助于并行地从多种后端服务器中获取数据并且支持comet风格的交互。

Play旨在处理响应时间不定的极短请求。Play可以临时“挂起”处于连接状态的HTTP请求。这样在处理等待时就可以将所需的资源降到最低限度,特别地,Play使用了一个微型的线程池(通常数量为机器上的处理器个数加上1)。这与现在大行其道的“一个请求一个线程”有着很大的差别。

根据服务器负载的不同,其事件处理方式所支持的并发数要比线程模型多很多;对于comet中的持续连接来说,该事件模型是唯一可行的方式。

Play提供了几个模型来异步处理请求。你可以定义“Promise”值(它可以纳入到“waitall”语句中),在这种情况下,直到所有请求都已返回后执行才会继续,这对于从多个Web API中获取数据的情况来说是非常便捷的。Play还通过Java匿名内部类来支持回调模型。此外,你还可以通过Play设定一个固定的时间,只有在这个时间后才会处理请求。

Play的社区非常活跃,大家热火朝天的工作就是最好的宣传,Play确实做到了DRY(Don't Repeat Yourself),并且对异步I/O的支持也被认为是JVM世界中做得最好的。当然了,Play的文档/JavaDoc还需要改进,但我们会进一步评估Play,看看它是否适合于LinkedIn的生态系统。

随着(移动)复合应用与Web API的日渐兴起,介于(移动)客户端与Web API之间薄薄的一层复合中间层逐渐涌现出来。Play或是Node.js这样的框架是否会成为移动解决方案架构的关键呢?你对此有何看法?

查看英文原文:Evaluating Play for Composing Web APIs

译者 张龙 热衷于编程,乐于分享,对新技术有强烈的探索欲,对Java轻量级框架有一定研究。

又进一步了解了 发表人 hua wen 发表于
  1. 返回顶部

    又进一步了解了

    发表人 hua wen

    这么说Play 和Node 有相似的特性
    那么作为Javaer,Play 还是值得关注啊