写点什么

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

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

关注

评论

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

中物院超级计算与数字智能2025年大会:嘉为蓝鲸揭秘数智化运维转型关键突破点

嘉为蓝鲸

智能运维 数智化

黑龙江省多家政务服务移动端及政企内部办公应用适配鸿蒙,加速智慧政务升级

最新动态

和鲸科技执行总裁殷自强受邀主讲华中附属同济医院大模型应用通识首期课程

ModelWhale

人工智能 大数据 医疗

文献解读-SARS-CoV-2 variant Delta rapidly displaced variant Alpha in the United States and led to higher viral loads

INSVAST

生信服务 delta 变异检测 全基因组测序 基因分析

OpenAI的“噩梦”,DeepSeek V3-0324效率革命展现中国AI雄心

AI数据云Relyt

openai LLM DeepSeek

【FAQ】HarmonyOS SDK 闭源开放能力 —Push Kit(11)

HarmonyOS SDK

harmoyos

在PyCharm中提升编程效率:通义灵码(DeepSeek)助手全攻略(新版)

阿里云云效

阿里云 云原生 通义灵码

行业合作丨Altair 携手政产学研各界,共探AI驱动制造业数字化转型新路径

Altair RapidMiner

AI 数字化转型 HPC 仿真 仿真驱动设计

数仓架构告别「补丁」时代!全新批流一体 Domino 架构终结“批流缝合”

YMatrix 超融合数据库

数据仓库 数据架构 流式数仓 超融合数据库 YMatrix

RealClip:轻量级战略能否打开全球小游戏市场的巨额潜力?

xuyinyin

DApp开发中的LP分红系统:流动性激励机制的范式革命与生态重构

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

链游冷启动核弹:DeFi清算收益+社交裂变,7天零成本获取10万真实玩家

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

火山引擎云上实战: DeepSeek R1 大模型(全尺寸)

火山引擎开发者社区

如何评估React Native结合小程序的技术架构?

xuyinyin

信用消费的"血栓"问题-逾期订单诊断指南

盐焗代码虾

支付宝 信用消费 问题解决 逾期

摊牌了!一文教会你轻松上手豆包MarsCode 编程助手!

火山引擎开发者社区

🔥 新手也能懂!Shopee商品详情API接口全攻略

Noah

Netty源码—Pipeline和Handler

不在线第一只蜗牛

Netty

如何通过CAD坐标找点?

在路上

cad cad看图 CAD看图王

运维人的AI外挂来了!WeOpsV4.20&V5.20深度集成三大模型实现知识沉淀

嘉为蓝鲸

自动化运维 #WeOps

ITSM运营双引擎:科学度量指标体系×LLM智能分析实战

嘉为蓝鲸

运维 AIOPS ITSM

嘉为蓝鲸自动化运维中心V2.6:规范运维范式,保障数字化转型成果

嘉为蓝鲸

AIOPS 自动化运维

【开始报名啦】4 月 12 日 TiDB 社区活动在南京!传统技术栈替换和 AI 浪潮正当时,面向未来的国产数据库怎么选择?

TiDB 社区干货传送门

数据库 AI 分布式数据库 医疗 国产数据库

在PyCharm中提升编程效率:通义灵码(DeepSeek)助手全攻略(新版)

阿里巴巴云原生

阿里云 云原生 通义灵码

实战案例|利用MarsCode内置的DeepSeek服务,单元测试耗时缩短70%!

火山引擎开发者社区

Vue3组合式API从原理到实战终极指南

秃头小帅oi

CAD中镜像功能真好用,大大提高绘图效率!

在路上

cad cad看图 CAD看图王

华为开发者空间新体验:一站式开发工具Notebook正式上线!

华为云开发者联盟

开发工具 notebook 华为开发者空间

几个实操案例,告诉你什么是真正可用的企业级通用智能体

王吉伟频道

自动化 智能体 AI应用 AI Agents 通用智能体

交易所开发:数字文明进化的基础设施革命

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 交易所开发代币开发

运维生态重构进行时:从嘉为蓝鲸全栈智能观测中心V4.4看全栈观测的AI化跃迁路径

嘉为蓝鲸

智能运维 产品发布 全栈智能观测中心

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