max*_*max 6 java architecture web-services
我正在开发一个REST Web服务(Java,Jersey).我正在这样做的人希望通过Javascript直接访问web服务.一些本能告诉我这不是一个好主意,但我无法真正解释这种本能.我的自然方法是让webservice进行真正的逻辑和数据库访问,但也有一些(相对较薄的)服务器端脚本层(例如在PHP中).客户端将与PHP层进行通信,而PHP层又与Web服务进行通信.(web服务对于apache/PHP服务器来说是本地的,并且隐含地信任来自脚本层的调用.脚本层将负责会话管理.)(顺便说一下,我不是说只是将web服务隐藏在Apache之后重定向呼叫.)
但是当我发现自己缺乏解释我的直觉的言论/论据时,我想知道我的直觉是否正确 - 请注意,虽然我已经用各种语言和框架开发了各种各样的软件17年,但这是我第一次开发web服务.
所以我的问题基本上是:你的意见是什么?有没有标准的设置?我的直觉完全错了吗?还是部分?,P
非常感谢,
马克斯
PS:我可能会添加一些有关整个应用程序计划使用情况的信息:
我不认为通过 JavaScript 等直接访问 REST Web 服务通常不是一个坏主意,因为 REST 架构就是为此设计的。对于您的用例,您可能需要考虑一些影响:
对于您的要求:
所有主要操作系统/浏览器组合都可以作为客户端
由于您的 Web 服务只会传递数据(例如 JSON 或 XML),所以这应该不是问题。JavaScript 部分只需要注意发出正确的请求。
可能会有非常高的负载/流量
如果您严格遵循 REST 架构,则可以使用 http 缓存。但请记住,无国籍的性质总是会导致更多的流量。
Webservice 的逻辑稍后将针对另一个产品进行大规模扩展,该产品基本上是当前项目功能的超集
开放式 Web 服务的好处是您可以将它们松散地耦合在一起。
很可能在某个时候应该公开可供第 3 方开发人员使用的 API - 显然,有一些限制
同样,通过 RESTful Web 服务,您已经为开发人员公开了一个 API。这是好事还是坏事,由您的客户来决定。
在某些时候,公众应该可以通过智能手机查看该产品
另一个使您的 REST Web 服务可公开访问的专业人士。大多数智能手机 API 支持 HTTP 请求,因此您只需为特定智能手机平台开发 GUI,即可直接调用 Web 服务。
| 归档时间: |
|
| 查看次数: |
325 次 |
| 最近记录: |