Node.js Request.pipe()JPEG流

Node.js Request.pipe()JPEG流,node.js,mjpeg,nodejs-stream,Node.js,Mjpeg,Nodejs Stream,我正在开发一个nodejs应用程序,它是ZoneMinder的中间件。简而言之,我的目标是屏蔽所有ZoneMinder api,以便客户机不知道我是否在使用ZM 一切都很好,但有一件事让我很烦。ZM中有一个流式api,它提供了一个流式JPEG(MJPEG),您可以将其放入img标记中。现在我正在使用pipe()将此流传输到客户端。大概是这样的: app.get('/stream', async (req, res) => { let url = 'do stuff here to

我正在开发一个nodejs应用程序,它是ZoneMinder的中间件。简而言之,我的目标是屏蔽所有ZoneMinder api,以便客户机不知道我是否在使用ZM

一切都很好,但有一件事让我很烦。ZM中有一个流式api,它提供了一个流式JPEG(MJPEG),您可以将其放入
img
标记中。现在我正在使用
pipe()
将此流传输到客户端。大概是这样的:

app.get('/stream', async (req, res) => {
    let url = 'do stuff here to get ZM url'
    request(url).pipe(res);
})

这很有效。我想知道的是,这个
pipe()
将如何影响我的机器的性能。注意,我在同一台机器上运行ZM和nodejs应用程序。
pipe()
会使我的系统有效地承受双倍的流负载吗?有没有比这更好的解决方案,给出了期望的结果?

数据进来,数据出去。就这样。可能需要一些缓冲,但它非常轻量级。不过,您并不需要Node.js来完成此操作。。。看起来像任何普通的代理服务器都会这样做,如果这是你的代码所做的。@Brad我还有一些事情需要处理,这只是应用程序的一个功能。但谢天谢地,数据进来了,数据出去了。就这样。可能需要一些缓冲,但它非常轻量级。不过,您并不需要Node.js来完成此操作。。。看起来像任何普通的代理服务器都会这样做,如果这是你的代码所做的。@Brad我还有一些事情需要处理,这只是应用程序的一个功能。但是谢谢