- 1、本文档共32页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
窗体顶端
QuickServer开发指南(1)- 介绍
??? QuickServer是一个免费的开源Java库,用于快速创建健壮的多线程、多客户端TCP服务器应用程序。使用QuickServer,用户可以只集中处理应用程序的逻辑/协议,从而方便的建立功能强大的服务器应用。该程序由Akshathkumar Shetty设计和实现。??? QuickServer安装目录下的example中有演示其功能的例子,必威体育精装版的例子和文档可以通过网站 /或/获得。??? 该指南适用于所有想要学习和使用QuickServer的人,阅读该指南应具备基本的Java编程知识,基本的网络和sockets方面的知识也会有所帮助1.?为什么需要QuickServer???? 无论何种编程语言,socket编程对程序员来说都不是一件容易的事,创建多线程、多客户端的服务器socket更像一场恶梦了。在每个新的软件中处理多 socket连接,我们都要浪费大把时间编写大量重复的代码。QuickServer因而诞生——使用Java创建多线程、多客户端服务器应用。
2.?基本构造QuickServer在应用逻辑上为开发者提供了四个类o?ClientCommandHandler??? 处理与客户端的交互——使用字符串命令o?ClientObjectHandler [可选类]??? 处理与客户端的交互——使用对象命令o?Authenticator [可选类]??? 客户端验证o?ClientData [可选类]??? 客户端数据载体(支持类)下面的图表显示了QuickServer库的基本构造。QuickServer模块上七个辐条表示七个方法:o?java.lang.String info()o?int getServiceState()o?boolean initService(java.lang.Object[] config)o?boolean startService()o?boolean resumeService()o?boolean suspendService()o?boolean stopService()??? 与QuickServer模块相连接的四个组件中只有ClientCommandHandler是必须的。??? QuickServerConfig对象由initService()方法构建。它实现了QuickServer,在读取XML配置后,QuickServerConfig用于QuickServer配置。??? ClientHandler线程对象用于客户端缓冲池。可选的ClientData类与ClientHandler类关联,ClientHandler对 象容器参考ClientCommandHandler,ClientObjectHandler(可选),Authenticator(可选)对象包含在 QuickServer主函数中。??? 注意:上图中并未显示QSAdminServer,它是图中QuickServer的组成部分。3.?主要特点o?创建多线程、多客户端TCP服务器应用程序o?支持安全服务的创建:SSL, TLSo?清楚的分离服务、协议、验证逻辑o?GUI图形界面远程管理支持o?Command Shell对服务器的本地管理o?无须断开客户端连接的重启或延迟服务o?为线程的再利用和大多数的使用对象建立缓冲池o?完全的日志支持(Java构建)o?支持发送和接收字符串、字节、二进制、序列化Java对象o?在同样的xml中支持能够存贮指定应用数据的XML配置o?支持通过IP地址限制服务o?支持基于XML的JDBC映射o?支持服务配置模式o?支持从xml加载/重新加载用于jar包o?在QuickServer中添加处理hookso?指定允许的最大客户端连接数o?在通常的TCP连接上支持谈判安全连接o?支持鉴别和查询客户端o?附带典型例子——FTPServer, CmdServer,EchoWebServer, ChatServer4.?1.4版的新功能o?为QuickServer添加安全模式:SSL, TLSo?添加SecureManagerLoader管理安全模式o?在通常的TCP连接上添加谈判安全连接o?添加初始化服务hookso?为通信添加二进制模式o?为QsAdminServer通信添加QSAdminAPIo?为QuickServer 添加findAllClientByKeyo?添加ConnectionLostException类o?改进ClientHandler、安全配置o?新例子——XmlAdder:一个简单的xml服
文档评论(0)