X
xywen
Unregistered / Unconfirmed
GUEST, unregistred user!
本人准备开发一个P2P应用项目,现遇到了一些问题希望能和您进行深入的探讨。
项目要求:
1。不论客户端采用何种上网方式,均能可靠的连接上服务器并与服务器互通信息。
2。服务器端能可靠应对至少3000到2万个用户的连接。
基本设计思想:
1。客户端连接上服务器端,经验证用户身份后,将自己的共享文件列表发送到服务器端。
2。客户开始搜索文件列表(自己共享的除外)。
3。服务器在接到该客户端的搜索请求后,将符合条件的文件列表和共享方IP地址发送给该客户端。
4。客户端建立从接收到的文件列表中选择一个文件准备进行下载。此时,该客户端与共享方建立连接,并向其发出下载请求。
5。共享客户接收到下载请求后,开始向请求方发送指定文件。
请问:
A方法。
服务器端使用TServerSocket阻塞方式,为每个用户连接建立一个线程;
客户端使用一个TClientSocket非阻塞方式与服务器通信,并内建一个TServerSocket和一个TClientSocket用于文件传输。
B方法。
服务器端使用TServerSocket非阻塞方式,利用自定义协议或指令集应对每个用户连接;
客户端使用一个TClientSocket非阻塞方式与服务器通信,并内建一个TServerSocket和一个TClientSocket用于文件传输。
C方法。
使用Delphi7中的Indy组件。
D方法。
客户端与服务器采用UDP协议进行通信。
客户端与客户端采用TClientSoket和TServerSocket进行文件的收发。
请问
1。我的设计思想是否适用该项目,如不适用为什么?请提出您的意见。
2。以上3个方法哪一个更适用于该项目,实际应用中可能出现什么问题。请提出您的意见。
3。TServerSocket在理想的硬件环境下,最大可靠连接数量是多少。
4。如果这个项目请您开发,您会怎么做?
项目要求:
1。不论客户端采用何种上网方式,均能可靠的连接上服务器并与服务器互通信息。
2。服务器端能可靠应对至少3000到2万个用户的连接。
基本设计思想:
1。客户端连接上服务器端,经验证用户身份后,将自己的共享文件列表发送到服务器端。
2。客户开始搜索文件列表(自己共享的除外)。
3。服务器在接到该客户端的搜索请求后,将符合条件的文件列表和共享方IP地址发送给该客户端。
4。客户端建立从接收到的文件列表中选择一个文件准备进行下载。此时,该客户端与共享方建立连接,并向其发出下载请求。
5。共享客户接收到下载请求后,开始向请求方发送指定文件。
请问:
A方法。
服务器端使用TServerSocket阻塞方式,为每个用户连接建立一个线程;
客户端使用一个TClientSocket非阻塞方式与服务器通信,并内建一个TServerSocket和一个TClientSocket用于文件传输。
B方法。
服务器端使用TServerSocket非阻塞方式,利用自定义协议或指令集应对每个用户连接;
客户端使用一个TClientSocket非阻塞方式与服务器通信,并内建一个TServerSocket和一个TClientSocket用于文件传输。
C方法。
使用Delphi7中的Indy组件。
D方法。
客户端与服务器采用UDP协议进行通信。
客户端与客户端采用TClientSoket和TServerSocket进行文件的收发。
请问
1。我的设计思想是否适用该项目,如不适用为什么?请提出您的意见。
2。以上3个方法哪一个更适用于该项目,实际应用中可能出现什么问题。请提出您的意见。
3。TServerSocket在理想的硬件环境下,最大可靠连接数量是多少。
4。如果这个项目请您开发,您会怎么做?