我正在构建一个用于学习目的的小型Web服务器。
对于每个传入的POST请求,我打算将内容附加到文件中。
我正在使用ZeroMQ套接字与文件追加过程进行通信。我是否需要特别注意文件操作(fopen,fseek)?
考虑到典型的Amazon EC2实例并且每个请求最多1kb,我的服务器每秒可处理多少文件追加操作?
谢谢!
答案 0 :(得分:-1)
应遵循基本问题,如果运行多个进程并接收消息会发生什么。如果磁盘空间不足或写入失败会发生什么?
您是在同步写入磁盘还是缓冲后,还是可以接受日志损坏? fopen
和朋友被缓冲,考虑open
和朋友的非缓冲写入。
性能与您是否可以批量写入,使用缓冲或希望同步写入磁盘有关。我认为亚马逊提供了一些IOPS细节,当然其他开发者已经公布了结果: