我正在使用Python开发一个web应用程序,其中一个用例是让用户:
通过HTTP POST上传大文件,并
同时下载并显示响应,这是一个类似大小的文件的处理版本。
客户端由我们在C++中开发,但我想使用HTTP协议。服务器不需要整个文件就可以开始生成其响应,一旦到达了第一个250KB左右的数据,它就可以开始处理数据。上传开始和响应的第一部分之间的延迟应该尽可能低(例如,与原始套接字相比可能在100ms以内)
理论上最好使用分块传输编码而不是多个小的HTTP请求?总请求/响应的长度事先无法确定,但我想它可以分成多个已知大小的请求/响应,是否有Web服务器可以在上传时流式传输(而不是缓冲+传递)这些块?
我听说twisted对分块传输编码很好,但如果可能的话,我更喜欢使用更传统的Web框架,特别是对于我的应用程序的其余部分(除了这种用例外,不需要像这样的高级功能)。