免费下载案例集|20+数字化领先企业人才培养实践经验 了解详情
写点什么

复合 Web API Play Framework 评估

  • 2011-07-16
  • 本文字数:719 字

    阅读完需:约 2 分钟

近日,来自 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

2011-07-16 12:393444
用户头像

发布了 88 篇内容, 共 262.1 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

JVM学习总结

jason

【第九周作业】

Aldaron

架构师训练营第九章总结

叮叮董董

面经手册 · 第2篇《数据结构,HashCode为什么使用31作为乘数?》

小傅哥

Java 数据结构 面试 小傅哥

JVM系列之:从汇编角度分析Volatile

程序那些事

Java JVM JIT 汇编

Atlassian 重磅推出12个新功能为您打造全新 DevOps 体验!

Atlassian

项目管理 DevOps Atlassian Jira

秒杀系统的架构设计

莫莫大人

树莓派上安装docker记录

田振宇

计算机网络基础(十四)---传输层-UDP协议详解

书旅

计算机网络 网络 协议栈 通信协议

《RabbitMQ》如何保证消息的可靠性

Java旅途

NOSQL or NEWSQL

大唐小生

sql nosql

架构师训练营 - 第九周 - 作业

韩挺

关于微信电子发票生态,这三种服务商最有机会

诸葛小猿

电子发票 发票

并发-草稿

superman

一周信创舆情观察(7.27~8.2)

统小信uos

Elasticsearch从入门到放弃:瞎说Mapping

Jackey

elasticsearch

HomeWork

天之彼方

我还在生产玩 JDK7,JDK 15 却要来了!|新特性尝鲜

楼下小黑哥

Java jdk

Docker-compose实战

北漂码农有话说

SpreadJS 纯前端表格控件应用案例:SPDQD 质量数据云

葡萄城技术团队

SpreadJS 案例

尚未到来的远程工作

张凯峰

敏捷 敏捷开发 软件开发 远程办公 thoughtworks

Ubuntu启动盘无法格式化

kraken0

技术贴丨教你使用华为云鲲鹏服务器部署Discuz!论坛

华为云开发者联盟

鲲鹏920 服务器 华为云 Discuz! 华为云鲲鹏

秒杀系统的挑战和应对方案

2流程序员

架构师训练营第九章作业

叮叮董董

训练一个数据不够多的数据集是什么体验?

华为云开发者联盟

数据 数据集 华为云 标签 modelarts

秒杀系统设计初稿

jason

第9周总结+作业

林毋梦

LeetCode题解:189. 旋转数组,3次翻转,JavaScript,详细注释

Lee Chen

大前端 LeetCode

微服务架构下的核心话题 (一):微服务架构下各类项目的顺势崛起

xcbeyond

架构 微服务

当面试官问我ArrayList和LinkedList哪个更占空间时,我这么答让他眼前一亮

鄙人薛某

Java 面试 集合 java基础

复合Web API Play Framework评估_Java_Jean-Jacques Dubray_InfoQ精选文章