compare to FCGI - noradle/noradle-protocol GitHub Wiki
FastCGI frame 组成和 noradle 比较
- version: noradle frame 没有 version,但是 noradle 打算在握手信息中增加 version,确保各个通信节点直接协议版本兼容
- type: frame 类型,noradle 有,head/body/end,响应额外还有 session。
- request ID: noradle 对应有 slot ID,只标识在途中的请求,处理完的包括异常的请求不占用ID
- padding 相关:noradle 目前没有 padding 信息,因为还不能证明存在 padding 处理会更快
- We recommend that records be placed on boundaries that are multiples of eight bytes
noradle-dispatcher 提供 FCGI 服务
其实 noradle client 和 noradle-dispatcher 之间的通信就类似 fastCGI 协议, 如果 noradle-dispatcher 就能够接受 fastCGI协议的请求,并转发到 oracle 中,就能成为标准de fastCGI 应用服务器。
- 为新的 request ID 分配 oSlotID,或者 FCGI request ID 就是 oSlotID
- 相同 request ID 下的后续包,发送到绑定好的 oSlotID
- oracle 侧可以读取一个 request ID 下先后不同类型的请求包格式
- 包括 version, type, req id, padding 等等