Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Video 大文件IO的优化设计_Video_File Io_Operating System_Filesystems_Hard Drive - Fatal编程技术网

Video 大文件IO的优化设计

Video 大文件IO的优化设计,video,file-io,operating-system,filesystems,hard-drive,Video,File Io,Operating System,Filesystems,Hard Drive,假设有一个程序运行在Linux服务器上,它读取磁盘上的一个大文件(例如)一个原始视频,并根据一些用户输入生成输出 服务器将接收来自该程序的许多请求的请求,因此文件读取在每个请求过程中都是重复的 有没有一种方法可以跨请求进行一些优化?系统看起来将被IO绑定 更具体的例子,, 系统将获取用户文本,并在示例视频的每一帧上渲染文本,然后保存到另一个输出视频。每个用户都有自己的输出视频。 示例视频是一个静态文件,只读,保存在服务器的HDD上 因此,如果什么也不做,所有请求(即进程)都会打开自己的文件IO并

假设有一个程序运行在Linux服务器上,它读取磁盘上的一个大文件(例如)一个原始视频,并根据一些用户输入生成输出

服务器将接收来自该程序的许多请求的请求,因此文件读取在每个请求过程中都是重复的

有没有一种方法可以跨请求进行一些优化?系统看起来将被IO绑定

更具体的例子,, 系统将获取用户文本,并在示例视频的每一帧上渲染文本,然后保存到另一个输出视频。每个用户都有自己的输出视频。 示例视频是一个静态文件,只读,保存在服务器的HDD上


因此,如果什么也不做,所有请求(即进程)都会打开自己的文件IO并读取巨大的原始视频。所以想知道是否有任何优化可以帮助减少磁盘带宽?内存映射文件有帮助吗?

显然,这样的优化是可能的,操作系统可以实现它们。服务器使用的是CentOS/Linux。是否已经有一些已知的操作系统功能可以提供帮助?