写点什么

复合 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:393549
用户头像

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

关注

评论

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

2021 Flutter从零开始之全栈开发,后台到在线教育APP上线。

人生如梦

flutter dart

Dart 后台开发 Aqueduct 插入数据 获取数据API

人生如梦

flutter dart

程序员成长第十篇:从阅读代码开始

石云升

28天写作 2月春节不断更 阅读代码

MySQL 批量修改所有表字段字符集及排序规则

运维研习社

MySQ

2020 年行摄回忆录(下)

穿过生命散发芬芳

生活 摄影

翻译:《实用的Python编程》02_01_Datatypes

codists

Python 人工智能 数据结构与算法 字典 元组

Nginx零成本、易操作实现网站视频加速

运维研习社

nginx 流媒体 网站优化

Dart 后台开发 Aqueduct ORM初始化数据库

人生如梦

吉利汽车宣布进军区块链 多个龙头股企业早已低调精准布局区块链

CECBC

区块链

为什么ElasticSearch比MySQL更适合全文索引

程序员历小冰

数据库 lucene elasticsearch BitMap 跳表

最常见的10种Java异常问题!

Java架构师迁哥

(28DW-S8-Day1) 定个魔幻的范围:在线教育+区块链

mtfelix

比特币 区块链 在线教育 28天写作 教育+区块链

这才是打开“金三银四”Java面试的正确方式,2021“金三银四”看这个就对了

Java 架构 面试

Let's Encrypt签发工具CertBot-auto不再维护

运维研习社

Dart 后台开发 Aqueduct @Column标记

人生如梦

Flutter安卓项目第一次启动失败解决方案

人生如梦

flutter

让代码说话:如何把版本信息注入到代码中

zhujun

c++ Python git rust Go 语言

Hive底层原理:explain执行计划详解

五分钟学大数据

大数据 hive 二月春节不断更

在区块链的新浪潮中,为更多人争取“公平”

CECBC

区块链 新浪潮

Go1.16 发布

Rayjun

Go 语言

关于智商测试的一点闲话 Day1

道伟

科普 28天写作

互联网小拼,这一生的故事,你要看看吗《打工人的那些事》

谙忆

腾讯发布区块链产业加速器,生态共创助力新基建建设

CECBC

腾讯

Jenkins通过OpenSSH实现Windows下的CI/CD

运维研习社

jenkins CI/CD Windows Server 2012 R2

干货 | Redis 实现发布订阅原理与实践

架构精进之路

redis 28天写作 发布订阅

心理学与游戏之现学现卖系列

Justin

心理学 28天写作 游戏设计

28天瞎写的第二百三十九天:什么是正念冥想?

树上

冥想 28天写作 正念

一起重新全面认识JWT-Json Web Token

谙忆

计算机中的层次化存储是个什么鬼?

冰河

程序员 数据结构 算法 计算机 层次化存储

微服务架构:网关概念与zuul

程序员架构进阶

服务化 API网关 七日更 28天写作 2月春节不断更

Dart 后台开发 Aqueduct集成Swagger客户端

人生如梦

flutter dart

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