node.js在客户端< - > Web服务器流中的位置?

How*_*amp 3 javascript asynchronous serverside-javascript evented-io node.js

关于node.js如何适应客户端和Web服务器,下面我的描述是否正确?

  • (A)是客户
  • (B)是在某个Web服务器上运行的node.js.
  • (C)是托管业务逻辑,数据库访问例程的"服务",例如"GetCustomer()".为简单起见,假设服务(C)公开REST接口.

因此,在流程中,客户端(A)将从node.js(B)请求一些资源,该资源将依次将此请求(具有所有异步和事件的i/o良好性)分派给可能去的服务(C).获取一些客户信息并通过回调将其返回到node.js(B),然后node.js将该响应返回给客户端.

这是对的吗?

两个相关问题:

2. node.js如何知道将请求分派给哪个服务?你是否必须在node.js中创建镜像服务API的api"stubs",因为客户端不直接与服务对话?

3.如何在此架构中处理会话状态?

Ivo*_*zel 7

首先是通常流程的"图表":

     Client                                
       |                                    
       v                                    
     Request                               
       |                                  
       v                                                          
(load balancer e.g. nginx)                
       |                                  
       v                                    
 Node.js Instance                          
 |     |      |                             
 v     v      V                            
DB    APIS   FILES                         
Run Code Online (Sandbox Code Playgroud)

关于你的最后两个问题:

  1. 你想怎么知道呢?Node.js是一个通用框架,你必须编写代码来处理这个问题.

  2. 同样,Node.js是完全通用的.如果您只有一个实例,则可以在内存中执行此操作.否则你可能会使用redis之类的东西.

您可以在Node.js中编写游戏服务器,只需处理数字,或编写Web服务器.

但是你没有必要,按你喜欢的方式去做,或者搜索一个按照你喜欢的方式去做的框架.