通过stat()读取指定文件状态, 然后通过宏测试struct stat的st_mode成员得到文件类型. stat函数有3个版本, 它们的区别是stat参数需要一个文件路径, fstat需要一个已打开文件描述符, lstat不跟随符号链接(当文件是符号链接时, 获得符号链接自身文件状态, 而不是获 ...
分类:
系统相关 时间:
2021-05-24 10:17:48
阅读次数:
0
在生产上部署的Ocelot,,ESTABLISHED到达3000后会不间断出现内部服务器错误及too many file等类似字样错误,经排查,因最近进行了服务器迁移,导致部文件描述符部分没有进行配置,进行配置后,故障恢复。整理如下: 一、系统最大文件描述符 查看系统最大文件描述符 cat /pro ...
分类:
其他好文 时间:
2021-05-24 06:29:41
阅读次数:
0
TCP协议的通讯流程 基于TCP/IP协议的服务器和客户端程序的一般流程,如下图所示: 1、服务器初始化——LISTEN (1)调用socket函数创建文件描述符。 (2)调用bind函数将当前的文件描述符和ip/port绑定在一起。如果这个端口已经被其他进程占用了,就会bind失败。 (3)调用l ...
分类:
其他好文 时间:
2021-05-24 01:03:52
阅读次数:
0
'''1.描述符是什么:描述符本质就是一个新式类,在这个新式类中,至少实现了__get__(),__set__(),__delete__()中的一个,这也被称为描述符协议__get__():调用一个属性时,触发__set__():为一个属性赋值时,触发__delete__():采用del删除属性时, ...
分类:
其他好文 时间:
2021-05-03 12:03:08
阅读次数:
0
I/O处理单元 I/O模型 阻塞I/O:阻塞的文件描述符称为阻塞I/O,针对阻塞I/O执行的系统调用可能因为无法立即完成而被操作系统挂起,直到等待的事件发生为止。针对非阻塞的I/O执行的系统调用总是立即返回,而不管事件是否已经发生。所以,只有在事件已经发生的情况下操作非阻塞I/O,才能提高程序的效率 ...
分类:
其他好文 时间:
2021-04-27 14:12:41
阅读次数:
0
select #include<sys/select.h> int select(int nfds, fd_set* readfds, fd_set* writefds, fd_set* exceptfds, struct timeval* timeout); // 被监听的文件描述符的总数,可读、 ...
分类:
其他好文 时间:
2021-04-24 13:30:52
阅读次数:
0
【Redis,Netty,Nginx 等实现高性能IO的核心原理】 I/O 输入输出(input/output)的对象可以是文件(file), 网络(socket),进程之间的管道(pipe)。在linux系统中,都用文件描述符(fd)来表示。 I/O 多路复用(multiplexing) I/O ...
分类:
Web程序 时间:
2021-04-24 13:10:34
阅读次数:
0
什么是文件描述符 对于内核而言,所有打开的文件都通过文件描述符(file descriptor)引用。通常也写作 fd。 文件描述符是一个非负整数。 当打开一个现有文件或者创建一个新文件时,内核向进程返回一个文件描述符。 文件描述符是跟进程相关联的。 按照惯例,UNIX 系统将 fd 0 对应进程的 ...
分类:
其他好文 时间:
2021-04-23 11:55:25
阅读次数:
0
IO是计算机上最慢的部分,先不看磁盘IO,针对网络编程,自然是针对网络IO。网络协议对网络IO影响很大,当下,TCP/IP协议是毫无疑问的主流协议。 文件IO中使用了文件描述符的概念。但是并不是所有操作系统都提供文件描述符这样抽象的机制。因此 文件IO 的那一套函数,可以在类unix系统下使用。但是 ...
分类:
系统相关 时间:
2021-04-16 12:18:46
阅读次数:
0
/dev/null 空设备,是一个特殊的设备文件,它丢弃一切写入其中的数据(但报告写入操作成功),读取它则会立即得到一个EOF。等价于一个只写文件,并且所有写入它的内容都会永远丢失,而尝试从它那儿读取内容则什么也读不到。然而, /dev/null对命令行和脚本都非常的有用。 0 是一个文件描述符,表 ...
分类:
系统相关 时间:
2021-04-15 12:33:11
阅读次数:
0