网络通信技术
文章平均质量分 77
qwerwrqwe
这个作者很懒,什么都没留下…
展开
-
为什么Nginx的性能要比Apache高很多?
为什么Nginx的性能要比Apache高很多? 这得益于Nginx使用了最新的epoll(Linux 2.6内核)和kqueue(freebsd)网络I/O模型,而Apache则使用的是传统的select模型。 目前Linux下能够承受高并发访问的Squid、Memcached都采用的是epoll网络I/O模型。 处理大量的连接的读写,Apache所采用的select网络I/O模型非常转载 2016-03-31 02:01:38 · 168 阅读 · 0 评论 -
Nginx 服务器 select 和epoll的区别
epoll为什么这么快 epoll是多路复用IO(I/O Multiplexing)中的一种方式,但是仅用于linux2.6以上内核,在开始讨论这个问题之前,先来解释一下为什么需要多路复用IO. 以一个生活中的例子来解释. 假设你在大学中读书,要等待一个朋友来访,而这个朋友只知道你在A号楼,但是不知道你具体住在哪里,于是你们约好了在A号楼门口见面. 如果你使用的阻塞IO模型转载 2016-03-31 02:07:08 · 189 阅读 · 0 评论 -
客户端到服务器端的通信过程及原理
学习任何东西,我们只要搞清楚其原理,就会触类旁通。现在结和我所学,我想总结一下客户端到服务器端的通信过程。只有明白了原理,我们才会明白当我们程序开发过程中错误的问题会出现在那,才会更好的解决问题。 我们首先要了解一个概念性的词汇:Socket socket的英文原义是“孔”或“插座”。作为进程通信机制,取后一种意思。通常也称作“套接字”,用于描述IP地址和端口,是一个通信链的句柄。(其转载 2016-03-31 02:20:28 · 1595 阅读 · 0 评论 -
Epoll模型详解
http://blog.163.com/huchengsz@126/blog/static/73483745201181824629285/ Linux 2.6内核中提高网络I/O性能的新方法-epoll I/O多路复用技术在比较多的TCP网络服务器中有使用,即比较多的用到select函数。 1、为什么select落后 首先,在Linux内核中,select所用到的FD_S转载 2016-04-01 04:18:56 · 142 阅读 · 0 评论 -
Epoll模型讲解
首先我们来定义流的概念,一个流可以是文件,socket,pipe等等可以进行I/O操作的内核对象。 不管是文件,还是套接字,还是管道,我们都可以把他们看作流。 之后我们来讨论I/O的操作,通过read,我们可以从流中读入数据;通过write,我们可以往流写入数据。现在假定一个情形,我们需要从流中读数据,但是流中还没有数据,(典型的例子为,客户端要从socket读如数据,但是服务器还没有转载 2016-04-01 04:20:02 · 167 阅读 · 0 评论 -
java 心跳检测
http://blog.csdn.net/vozon/article/details/5458341 [java] view plain copy import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; impo转载 2016-03-10 16:27:25 · 453 阅读 · 0 评论 -
C/S通信模型与B/S通信模型介绍
版权声明:本文为博主原创文章,未经博主允许不得转载。 1、客户端与服务器之间的通信模型 基于Socket连接的客户端与服务器之间的通信模型图如上图所示,整个通信过程如下所示: (1) 服务器端首先启动监听程序,对指定的端口进行监听,等待接收客户端的连接请求; (2)客户端程序启动,请求连接服务器的指定端口; (3)服务器收到客户端的连接请求后与客户端建立套接字(Socke转载 2016-03-10 12:57:17 · 328 阅读 · 0 评论 -
delphi中 socket 心跳包的实现
------转自 http://apps.hi.baidu.com/share/detail/33014978 有开发网络应用经历的人都知道,网络中的接收和发送数据都是使用WINDOWS中的SOCKET进行实现。但是如果此套接字已经断开,那发送数据和接收数据的时候就一定会有问题。可是如何判断这个套接字是否还可以使用呢? 有人一定想到使用Send函数中的返回结果来进行判断。如果返回转载 2016-03-10 16:28:30 · 937 阅读 · 0 评论