集线器是一种可以直接调用SignalR(ASP.Net库)中的客户端和服务器端方法的集线器。
和
远程过程调用(RPC),它从服务器代码中调用客户端上定义的JS函数。
所以我的查询是这两者之间有什么区别?
答案 0 :(得分:0)
您想将苹果与桔子进行比较
什么是信号中心:
集线器是某些通信层的抽象。您可以从客户端调用集线器上的方法,也可以从服务器调用客户端上的方法。对于集线器内部的内容,您有一个clients属性。
基本上与signalr建立服务器和客户端之间的连接。底层的传输机制(长轮询,服务器发送事件,websockets等)将由signalr选择。建立连接后,您可以在客户端说“在集线器Y上用参数Q调用方法X”。之后,该信号发送器将其发送到服务器。在服务器端,集线器调度程序搜索是否存在名称为Y和方法X的集线器。方法的签名也必须与参数匹配。如果方法匹配,它将被调用。相同的方法也相反。
Rpc(来自维基百科):
RPC是一种请求-响应协议。 RPC由客户端启动, 它将请求消息发送到已知的远程服务器以执行 使用提供的参数指定的过程。远程服务器发送 对客户端的响应,然后应用程序继续其过程。 服务器处理呼叫时,客户端被阻止( 等待直到服务器完成处理后再继续 执行),除非客户端将异步请求发送给 服务器,例如XMLHttpRequest。 ....
一个很大的不同是,如果客户端不要求,则无法从服务器向客户端发送数据。