Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在web架构中,与java层通信使用哪种通用通信协议_Java_Php_Architecture_Protocols_Communication - Fatal编程技术网

在web架构中,与java层通信使用哪种通用通信协议

在web架构中,与java层通信使用哪种通用通信协议,java,php,architecture,protocols,communication,Java,Php,Architecture,Protocols,Communication,我计划为我的网站设计这样一个架构,如上图所示。我正在用Java构建一个核心平台,与DB和其他高处理任务进行通信,模块可以通过定义的接口与核心连接 模块可以是任何东西,如前端网站、邮箱、管理控制台等,也可以基于PHP、Java、ruby on rails等任何技术构建 现在告诉我模块和核心之间的通信应该使用哪种通信协议。协议必须是大多数语言都能理解的,并且可以在双向通信中轻松处理 如果有人发现这样一个架构有任何缺陷,那么请推荐一个更好的架构,它提供了良好的可扩展性和灵活性。所以基本上这是一个类似S

我计划为我的网站设计这样一个架构,如上图所示。我正在用Java构建一个核心平台,与DB和其他高处理任务进行通信,模块可以通过定义的接口与核心连接

模块可以是任何东西,如前端网站、邮箱、管理控制台等,也可以基于PHP、Java、ruby on rails等任何技术构建

现在告诉我模块和核心之间的通信应该使用哪种通信协议。协议必须是大多数语言都能理解的,并且可以在双向通信中轻松处理


如果有人发现这样一个架构有任何缺陷,那么请推荐一个更好的架构,它提供了良好的可扩展性和灵活性。

所以基本上这是一个类似SOA的架构。JavaEE和EJB(3+)或Spring框架立即浮现在脑海中

组件(您的“模块”)通常通过SOAP服务与前端、后端和组合服务之间的可选企业服务总线(ESB)耦合


无论这是一个很好的匹配您的情况或只是超大。。。没有人可以说…

所以基本上这是一个类似SOA的架构。JavaEE和EJB(3+)或Spring框架立即浮现在脑海中

组件(您的“模块”)通常通过SOAP服务与前端、后端和组合服务之间的可选企业服务总线(ESB)耦合


无论这是一个很好的匹配您的情况或只是超大。。。没有人,但你可以说…

我会使用HTTP,在核心上公开RESTAPI,就像Thilo建议的那样

复杂性在于传统Web服务的RPC(过程模型)和资源模型之间的权衡,资源模型更适合使用http请求(URI上的动词GET、POST、PUT和DELETE,并辅以一些头和主体)

然而,这使得一个软,易于维护和便携的分发。每一个客户端模块都可能构建在一种完全不同的技术上,这允许您使用“最适合该工作的工具”


更不用说HTTP在缓存、重写、负载平衡、ssl等方面的优势了。

我将使用HTTP,在核心上公开RESTAPI,如Thilo建议的那样

复杂性在于传统Web服务的RPC(过程模型)和资源模型之间的权衡,资源模型更适合使用http请求(URI上的动词GET、POST、PUT和DELETE,并辅以一些头和主体)

然而,这使得一个软,易于维护和便携的分发。每一个客户端模块都可能构建在一种完全不同的技术上,这允许您使用“最适合该工作的工具”


更不用说HTTP在缓存、重写、负载平衡、ssl等方面的优势了。

HTTP API,可能是REST,也可能是JSON。@Thilo在这样的设计中,哪一个最好使用它们?在处理需求和复杂性方面?HTTP API,可能REST,可能JSON。@Thilo在这样的设计中,哪一个最好使用它们?在处理需求和复杂性方面?是的,我正在寻找一个SOA,你能更清楚地说明你打算如何实现这一点吗?尤其是我不明白你在第二段中所说的?或者给我一些这方面的知识来源?是的,我正在寻找一个SOA,你能更清楚地说明你是如何实现这一点的吗?尤其是我不明白你在第二段中所说的?或者给我一些这方面的知识来源?HTTP在所有平台和语言上都有很好的支持。@user1526281,您认为哪种RESTAPI最适合java端的这种环境。因为我是新手,所以我必须先看一遍,所以告诉我应该看哪一个。我不知道Java平台上的选项。我在.Net中使用OpenRasta或Nancy,我知道Ruby平台上的Sinatra(Nancy的基础)。HTTP在所有平台和语言上都有很好的支持。@user1526281,您认为在java端的这个环境中,哪个rest api最适合。因为我是新手,所以我必须先看一遍,所以告诉我应该看哪一个。我不知道Java平台上的选项。我在.Net中使用OpenRasta或Nancy,我知道Ruby平台上的Sinatra(Nancy就是基于这个平台的)。