本文转载自 http://blog.csdn.net/cutesource/article/details/6192016 如何正确使用NIO来构架网络服务器一直是最近思考的一个问题,于是乎分析了一下Jetty.Tomcat和Mina有关NIO的源码,发现大伙都基于类似的方式,我感觉这应该算是NIO构架网络服务器的经典模式,并基于这种模式写了个小小网络服务器,压力测试了一下,效果还不错.废话不多说,先看看三者是如何使用NIO的. Jetty Connector的实现 先看看有关类图: 其中: S…
如何正确使用NIO来构架网络服务器一直是最近思考的一个问题,于是乎分析了一下Jetty.Tomcat和Mina有关NIO的源码,发现大伙都基于类似的方式,我感觉这应该算是NIO构架网络服务器的经典模式,并基于这种模式写了个小小网络服务器,压力测试了一下,效果还不错.废话不多说,先看看三者是如何使用NIO的. Jetty Connector的实现 先看看有关类图: 其中: SelectChannelConnector负责组装各组件 SelectSet负责侦听客户端请求 SelectChannelE…
转载 http://blog.csdn.net/cutesource/article/details/6192163 最后我们再看看NIO方面最著名的框架Mina,抛开Mina有关session和处理链条等方面的设计,单单挑出前端网络层处理来看,也采用的是与Jetty和Tomcat类似的模式,只不过它做了些简化,它没有隔开请求侦听和请求处理两个阶段,因此,宏观上看它只分为两个阶段. 先看看它的类图: 其中: SocketAcceptor起线程调用SocketAcceptor.Work负责新连接侦…
本文转载自 http://blog.csdn.net/cutesource/article/details/6192145 下面再来看看Tomcat是如何使用NIO来构架Connector这块的. 先看看Tomcat Connector这块的类图: 其中: NioEndpoint负责组装各部件 Acceptor负责监听新连接,并把连接交给Poller Poller负责监听所管辖的channel队列,并把请求交给SocketProcessor处理 SocketProcessor负责数据处理,并把请…
直接在文件夹地址栏输入 %userprofile%\documents\iisexpress\config\applicationhost.config 会打开上边的配置文件 将 <siteDefaults><logFile logFormat="W3C" directory="%IIS_USER_HOME%\Logs" /><traceFailedRequestsLogging directory="%IIS_USER_HO…
Tomcat的作用 平时写完web程序都是直接点击启动,就可以在本机浏览器访问了.但是仔细想想,我们似乎都没有写过浏览器与servlet通信的代码,也没有写过创建request.reponse的代码.实际上,这些都是由Tomcat完成的,它的主要作用如下: 1. 完成服务的与客户端的数据收发,即通信功能. 2. 完成请求的映射功能. 3. 管理servlet的生命周期. Tomcat的工作模型(图片来源于网络): connector用于处理连接相关的事情,并提供Socket与Request和Re…
深入理解NIO(二)—— Tomcat中对NIO的应用 老哥行行好,转载和我说一声好吗,我不介意转载的,但是请把原文链接贴大点好吗 Tomcat大致架构 先贴两张图大致看一眼Tomcat的架构 Tomcat中只有一个Server,一个Server可以有多个Service,一个Service可以有多个Connector和一个Container: Service 是对外提供服务的: Connector用于接受请求并将请求封装成Request和Response来具体处理: Container用于封装和…
2.1 从App业务逻辑中提炼API接口 业务逻辑思维导图 功能-业务逻辑思维导图 基本功能模块关系 功能模块接口UML(设计出API) 在设计稿标注API 编写API文档 2.2 设计API的要点 根据对象设计API API的命名 API的安全性 API所返回的数据:禁止返回Null值 图片的处理:图片数据库保存原图,在App客户端本地缓存图片不存在时,按图片尺寸向服务端请求动态生成. 返回的提示信息:给用户看的提示和给程序员看的提示. 在线API测试文档:使用Swagger-UI搭建,按TD…
Eclipse安装好m2e插件,使用Maven构建项目后,启动web项目就行就非常简单了,如下所示. 操作步骤: 1.右键你的项目 -> Run As -> Run Configurations… 2.双击左侧的Maven Build,会出现一个New_configuration 3.配置Maven Build中的参数,如jetty / tomcat 4.VM配置信息:-Xms512m -Xmx512m -XX:MaxNewSize=128m -XX:MaxPermSize=128m 5.Ap…
将图片部署在tomcat/iportWork/uploadFiles中 1.在将运行的tomcat目录下创建个二级目录iportWork\uploadFiles,如下图:…