Architecture 客户机-服务器解决方案设计

Architecture 客户机-服务器解决方案设计,architecture,client-server,system,Architecture,Client Server,System,我试图找出构建客户机-服务器解决方案的最佳方式。简而言之,我的解决方案应该有一个执行逻辑的后端,并且能够支持intranet中的多个客户端。这里的关键是不会有数千个同时请求……它可能会限制在几百个用户,因此可伸缩性不是真正的问题。(想象一下本地网络上在办公楼中运行的服务)。我正在努力解决这个问题的总体流程,以及我应该使用哪些技术 组成部分如下: 逻辑部分,将位于服务器上 数据库 多个桌面、移动和web客户端 到目前为止,我能想到的是: 我需要有一个应用服务器,它将管理来自逻辑的API调用和D

我试图找出构建客户机-服务器解决方案的最佳方式。简而言之,我的解决方案应该有一个执行逻辑的后端,并且能够支持intranet中的多个客户端。这里的关键是不会有数千个同时请求……它可能会限制在几百个用户,因此可伸缩性不是真正的问题。(想象一下本地网络上在办公楼中运行的服务)。我正在努力解决这个问题的总体流程,以及我应该使用哪些技术

组成部分如下:

  • 逻辑部分,将位于服务器上
  • 数据库
  • 多个桌面、移动和web客户端
到目前为止,我能想到的是:

  • 我需要有一个应用服务器,它将管理来自逻辑的API调用和DB访问
  • 一个web服务器位于它的顶部,它将管理传入的请求
  • 逻辑部分
  • 符合我们将定义的API的客户端
  • 所以我不确定所有这些是如何联系在一起的……逻辑将如何与应用服务器交互?“逻辑”是否需要像服务器一样编写

    我看到的是这样的:

            req  
    client ----> web server ----> app server -----> Logic
    
                                    |-----> DB
    
               response 
    app server ---------> web server ----> client
    
    所以,如果我想部署一个小规模的商业解决方案,这是构建它的方式吗


    如果我不清楚,或者您需要更多信息,请告诉我。

    您的问题非常笼统。你建议的解决方案也是一个通用的解决方案。如果您不提出任何特定的需求,那么您将创建一个通用系统,为普通用户提供平均性能。假设您同时拥有移动、桌面和web客户端,那么在前端安装web服务器是一个好主意。但接下来的问题是将所有业务逻辑保留在AppServer端。在批量数据操作和性能要求的情况下,数据库中可以有一些逻辑,但这是一个例外而不是规则。无论如何,你应该有任何具体的要求,否则的设计过程看起来像风水。此外,您还必须选择一种技术并构建堆栈