[架构]FileZilla Server架构分析

FileZilla Server是一个开源的FTP服务器软件。分析一下它的架构设计为以后架构选型提供方案。

 

FileZilla Server由两部分组成,Service和配置工具,如下图:

image

FileZilla Server解决方案下有3个项目,

FZS Interface   配置工具
Service     FTP服务
Zlib           开源压缩、解压库

在安装时首先会将Service注册为系统服务,开机自动运行。用户运行配置工具后,FZSInterface将会使用TCP链接Service,通信相应的处理,配置用户信息、设置工具目录等。
配置工具中会创建一个CAdminSocket对象,用于和Service通信,CAdminSocket从CAsyncSocketEx派生出来。CAsyncSocketEx和MS的CAsyncSocket类型,但是效率比MFC类CAsyncSocket效率高一些,因为CAsyncSocketEx能够同时开多个消息窗体,而CAsyncSocket所有socket都在一个线程上处理,同一时间只能有一个Socket通知事件。
将Server做成windows服务是一个很好的选择,避免网络通信受UI影响,而且可以直接让UI跟后台部门耦合度降低,两者间直接用TCP通信解决。两个模块可以并行开发,之间只要约定网络数据交互的格式就行。

转载于:https://www.cnblogs.com/ityujian/archive/2013/05/01/3052761.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值