Json 使用Web服务器远程执行方法是一个好的体系结构决策吗?

Json 使用Web服务器远程执行方法是一个好的体系结构决策吗?,json,performance,jboss,webserver,load-balancing,Json,Performance,Jboss,Webserver,Load Balancing,下面是对我所说内容的一个很小的解释 在我的组织中,一种奇怪的负载分配工作是 实现后,我将尝试在下面对其进行解释 JBoss服务器运行在一台IP为xxx.xxx.xxx.xxx的机器上 有一个应用程序,有许多繁重的时间和资源消耗的工作 在I/O操作方面要做大量的工作,比如大文件上传& 下载-以GB为单位 在可通过URL和参数访问的Rest WebApp中编写的方法 对于作为URL参数传递的方法,设置为类型POST,返回值 作为JSON输出的方法 这个有问题的应用程序有一个框架,专门用来进行post

下面是对我所说内容的一个很小的解释

在我的组织中,一种奇怪的负载分配工作是 实现后,我将尝试在下面对其进行解释

JBoss服务器运行在一台IP为xxx.xxx.xxx.xxx的机器上

有一个应用程序,有许多繁重的时间和资源消耗的工作 在I/O操作方面要做大量的工作,比如大文件上传& 下载-以GB为单位

在可通过URL和参数访问的Rest WebApp中编写的方法 对于作为URL参数传递的方法,设置为类型POST,返回值 作为JSON输出的方法

这个有问题的应用程序有一个框架,专门用来进行post调用 对前面提到的WebApp进行了很好的包装,以便调用 在程序员不知道后台发生了什么的情况下制作

该框架具有外部化的参数,这些参数接受 运行WebApps的计算机,并配置此类应用程序的列表 机器可用&将方法调用路由到最不繁忙的机器 每当对框架进行方法调用时

一切看起来都很好,但我怀疑在http网站中包装东西&在那里进行处理&以json发送输出可能会减慢速度&在出现故障时收集日志可能很困难

问题

我想知道其他程序员对此的看法&这是否是一种好方法


在尝试分配负载时,现有的商业应用程序是否也遵循类似的原则?

在我看来,负载平衡的效率在于选择正确的节点来处理您的请求这一棘手的过程

通常的方法是监视必须承担负载的节点的CPU使用情况,并将负载发送到最不繁忙的节点。这一过程应准确有效

在您的情况下,请求的包装和Json数据的传输应该是最不需要担心的事情,因为它们似乎也是必需的活动,而且也很轻松。重点应该放在负载平衡活动上

对评论的答复

如果我理解正确,http methodserver是用来处理来自中央应用程序的请求的。负载平衡不会由他们来完成。必须有一个中央负载平衡机制/工具来决定哪个methodserver将接受哪个请求

所有MethodServer从属服务器都应该相同。这减少了维护工作,因为修复可以在一个节点上完成,并且可以传播到其他节点。我的组织就是这样做的


如果重复执行类似的操作,这可能是一项要求,应用程序服务器可能会减少一些重复性。

因此,换句话说,创建http MethodServer以平衡负载的概念很好?我知道,与实际的文件上传/下载和其他IO查询操作相比,它们的负载可能非常低,但您不认为如果频繁调用这些方法来执行一些不太重的操作,会对性能产生重大影响吗?其他方面呢,比如这样一个系统的可维护性?我编辑了我的答案,以包括我对你评论的回复。