??
IO复用
I/O复用使得程序能同时监听多个文件描述符,通常网络程序在下列情况下需要使用I/O复用技术:
客户端程序要同时处理多个socket
客户端程序要同时处理用户输入和网络连接
TCP服务器要同时处理监听socket和连接socket,这是I/O复用使用最多的场合
服务器要同时处理TCP请求和UDP请求。比如本章将要讨论的会社服...
分类:
系统相关 时间:
2014-07-02 08:35:51
阅读次数:
399
高级I/O函数
pipe函数
pipe函数用于创建一个管道,实现进程间的通信。
#include
int pipe(int pipefd[2]);
通过pipe函数创建的文件描述符fd[0]和fd[1]分别构成管道的两端,往fd[1]写入的数据可以从fd[0]读出,不能反过来。管道内部传输的数据时字节流,和TCP字节流概念相同,但有区别,管道本身拥有一个...
分类:
系统相关 时间:
2014-07-01 08:27:12
阅读次数:
339
??
Linux网络编程基础API
详细介绍了socket地址意义极其API,在介绍数据读写API部分引入一个有关带外数据发送和接收的程序,最后还介绍了其他一些辅助API。
socket地址API
主机字节序和网络字节序
字节序分为大端字节序和小端字节序。小端字节序又被称为主机字节序,大端字节序被称为网络字节序。大端字节序是指一个整数的高位字节存储在内存的低地址处,低...
在页游行业扎职3年了,经历了3个项目,不说成功,也不能说失败,从刚刚毕业时只懂黑框框编程,到现在了解各式各样的开发框架,要是一直还这样下去,用着先人的框架,得过且过,感觉自己的水平也会这样得过且过,不上不下。从以前项目的单进程架构到现在项目的多进程架构,感觉多进程架构在页游、手游这种最高同时在线不太...
分类:
其他好文 时间:
2014-06-20 17:24:57
阅读次数:
173
再高并发的编程中,多个服务器并发的协作工作中,只有好的均衡协调各自的负载才能充分利用各个服务器的资源负载均衡的一个目标是:让资源丰富的某些设备的负载更大一些,否则就小,根据设备特性,合理分配负载这里的这个方法是让资源越丰富,那么每当有新的负载来到,被分配到其上的概率就更大首先,实时统计各个设备资源剩...
分类:
其他好文 时间:
2014-05-30 21:18:57
阅读次数:
270
序
僵死(zombie)进程简而言之就是:子进程退出时,父进程并未对其发出的SIGCHILD信号进行适当处理,导致子进程停留在僵死状态等待其父进程为其收尸,这个状态下的子进程就是僵死进程。
因为并发服务器常常fork很多子进程,子进程终结之后需要服务器进程去wait清理资源。对于某些进程,特别是服务器进程往往在请求到来时生成子进程处理请求。如果父进程不等待子进程结束,子进程将成为僵尸进程(zo...
分类:
系统相关 时间:
2014-05-25 06:12:34
阅读次数:
313
响应式编程(Reactive programming)
响应式编程是指确保程序对事件或输入做出响应的做法。在这一节,我们将专注于图形界面方面的响应式编程,图形界面总量响应式的。然而,其他网格的编程也需要考虑响应式编程,例如,运行在服务器上的程序总是需要保持对输入作出响应,即使是在它处理其他需要长时间运行的任务期间。我们将在第十一章实现聊天服务器时,会看到在服务器编程方面也要用到这里讨论的一...
分类:
其他好文 时间:
2014-05-15 05:47:25
阅读次数:
455
重定向dup和dup2函数[cpp] view
plaincopyprint?#includeintdup(intfile_descriptor);intdup2(intfile_descriptor_one,intfile_descriptor_two);dup创建一个新的文件描述符,
此描述符和...
分类:
系统相关 时间:
2014-05-14 22:34:09
阅读次数:
479
今天给大家带来的是LAMP的构架一、LAMP简介LAMP(Linux-Apache-MySQL-PHP)网站架构是目前国际流行的Web框架,该框架包括:Linux操作系统,Apache网络服务器,MySQL数据库,Perl、PHP或者Python编程语言,所有组成产品均是开源软件,是国际上成熟的架构框架,很多流行的商业应..
分类:
系统相关 时间:
2014-05-05 12:38:59
阅读次数:
579
最近正在开发一个基于指纹的音乐检索应用,算法部分已经完成,所以尝试做一个Android App。Android与服务器通信通常采用HTTP通信方式和Socket通信方式。由于对web服务器编程了解较少,而且后台服务器已经采用原始socket实现与c客户端通信,这就要求Android客户端也采用socket实现。所以在开发Android app时采用了原始socket进行编程。
由于算法是用C语言...
分类:
编程语言 时间:
2014-04-30 22:31:38
阅读次数:
408