SUN RPC:服务器是不是一一满足请求?

Posted

技术标签:

【中文标题】SUN RPC:服务器是不是一一满足请求?【英文标题】:SUN RPC: Does the server satisfy requests one by one?SUN RPC:服务器是否一一满足请求? 【发布时间】:2011-11-13 05:58:05 【问题描述】:

我是 SunRPC 的新手。我想知道如果多个客户端同时向服务器发送请求,服务器会做什么。服务器是否将请求排队并一一回复。还是会并行响应?因为我记得在某处读过它可以并行响应。

顺便说一句,我说的是一个简单的单线程服务器。

谢谢

【问题讨论】:

【参考方案1】:

这真的取决于有问题的服务器。可以编写服务器以两种方式工作。至少,典型的 Sun RPC 服务器 NFSd 通常是为了同时支持数百或数千个客户端而编写的——一次为一个客户端提供文件的文件服务器是毫无用处的。但是服务器被简化了,因为 NFS 协议(大部分)是无状态的——每个请求都是独立的。 (较新的 NFS 协议版本更少无状态,并且使服务器和客户端都显着复杂化。)

如果服务器非常简单,您可能可以使用inetd(8) 启动它,它是 Internet 超级服务器,当连接到达可配置端口时,它将运行可配置服务器。 inetd(8) 在甚至交换空间都非常宝贵的时代更为常见,并且在每个客户端连接上执行新程序是有意义的。好处是每台服务器都独立于其他服务器——每台服务器都在其自己的fork(2)ed 进程中生成——并且仅使用共享数据需要额外的编程工作。

【讨论】:

以上是关于SUN RPC:服务器是不是一一满足请求?的主要内容,如果未能解决你的问题,请参考以下文章

从客户端发送结构并使用 SUN-RPC 以链表的形式保存到服务器

从服务器向客户端发送带有 sun rpc 的结构数组

通过 Sun RPC 发送二进制文件

使用 SUN RPC 将文件从客户端传输到服务器

(sun)RPC auth_unix

使用 SUN RPC 释放内存