[Twisted-Python] reactor for Linux io_uring

Glyph glyph at twistedmatrix.com
Thu Jan 7 13:23:44 MST 2021



> On Jan 7, 2021, at 3:24 AM, Ian Haywood <ian at haywood.id.au> wrote:
> 
> For async file I/O my plan would be to export a new IFilesystem (which is closely based on conch.interfaces.ISFTPServer) apps would be have to be written to use it, conch could with minimal tweaking,  and unsurprisingly the SMB server will. 
> 
> Apps can fallback to thread-based or aio(7) based implementations that already  exists as PoC:https://github.com/twisted/twisted/pull/1420 <https://github.com/twisted/twisted/pull/1420>  
> 

The mess of ctypes stuff seems somewhat irrelevant to the "asynchronous filesystem" part of this PR - do you think you could do a smaller version of this which decouples it from smb and ctypes?  It would be very nice for twisted.web.static.File to be able to use this as well.  And it would be much easier to review in isolation.  (And also easier to review as concrete "clear asynchronous file I/O interface" functionality, rather than tying it to the term "VFS" which has a fairly checkered past within Twisted :)).

(It would also be nice to have an interface that acts as an IProducer to integrate more natively with Twisted's support for backpressure rather than only having a custom readChunk method.  I think readChunk is still necessary for completeness since you need to be able to seek and offset, though.)

-g
-------------- next part --------------
An HTML attachment was scrubbed...
URL: </pipermail/twisted-python/attachments/20210107/7d615a78/attachment.htm>


More information about the Twisted-Python mailing list