对于一款应用程序,首先需要了解其功能,要知道这款程序是用来做什么的?然后怎么用?Nginx的功能:1.静态资源的web服务器2.支持对于HTTP,SMYP,POP3,IMAP协议的反向代理3.支持FastCGI,uwSGI等协议与应用程序服务器结合Nginx的特性(为什么要选择Nginx):1.基于事件驱动IO模型..
分类:
其他好文 时间:
2016-03-30 16:44:19
阅读次数:
156
本文以磁盘IO为例:首先了解一下IO类型:同步和异步:理解关键点:同步和异步的着眼点在于被调用者(内核)是否有消息通知机制同步:当被调用者发起调用请求,被调用者直接返回最终结果异步:当被调用者发起调用请求,被调用者理解返回结果,但不是最终结果,当最终结果准备完..
分类:
其他好文 时间:
2016-03-30 11:08:53
阅读次数:
98
一、阻塞 概念:在执行设备操作时,不能获取资源,则进程挂起。直到满足条件,再进行操作。挂起时,进程休眠,被从调度器的运行队列移走。 1、阻塞机制实现:睡眠 a、简单睡眠 b、手动睡眠 2、简单睡眠机制实现:等待队列 API: 1)定义等待队列头:wait_queue_head_t readq; 2)
分类:
其他好文 时间:
2016-03-09 12:34:25
阅读次数:
154
1、五种IO模型 2、select int select(int maxfdp1, fd_set *restrict readfds, fd_set *restrict writefds, fd_set *restrict exeptfds, struct timeval *restrict tim
分类:
其他好文 时间:
2016-03-06 15:40:12
阅读次数:
132
服务器端编程经常需要构造高性能的IO模型,常见的IO模型有四种: (1)同步阻塞IO(BlockingIO):即传统的IO模型。 (2)同步非阻塞IO(Non-blockingIO):默认创建的socket都是阻塞的,非阻塞IO要求socket被设置为NONBLOCK。注意这里所说的NIO并非Jav
分类:
其他好文 时间:
2016-03-02 19:54:19
阅读次数:
213
IO复用是Linux中的IO模型之中的一个,IO复用就是进程预先告诉内核须要监视的IO条件,使得内核一旦发现进程指定的一个或多个IO条件就绪,就通过进程进程处理。从而不会在单个IO上堵塞了。Linux中。提供了select、poll、epoll三种接口函数来实现IO复用。 1、select函数 #i
在上一篇博文中讲述了几种IO模型,现在我们开始进入Java NIO编程主题。NIO是Java 4里面提供的新的API,目的是用来解决传统IO的问题。本文下面分别从Java NIO的几个基础概念介绍起。 以下是本文的目录大纲: 一.NIO中的几个基础概念 二.Channel 三.Buffer 四.Se
分类:
编程语言 时间:
2016-02-15 21:20:47
阅读次数:
282
https://m.oschina.net/blog/132361 实现原理 说道实现原理,还要从操作系统的IO模型上了解 按照《Unix网络编程》的划分,IO模型可以分为:阻塞IO、非阻塞IO、IO复用、信号驱动IO和异步IO,按照POSIX标准来划分只分为两类:同步IO和异步IO。如何区分呢?首
分类:
编程语言 时间:
2016-02-01 14:43:19
阅读次数:
219
说起IO操作我们最先想到的就是读写文件。其实python中对有三种IO操作,打开文件,使用socket进行网络连接和系统的标准输入输出sys.stdin和sys.stdout。我们先来看一段socket服务端的代码:importsocket
ip_port=(‘127.0.0.1‘,9999)
sk=socket.socket()
sk.bind(ip_port)
sk.lis..
分类:
编程语言 时间:
2016-01-08 15:57:27
阅读次数:
320