내가보기 엔 node.js를위한 루트도 있습니다. 개방형 연결을 유지하면 비동기식 프레임 워크에서 잘 작동하며 Ruby는 매우 적합하지 않습니다 (그렇지만 저는 Ruby에 그다지 중요하지 않습니다).
Scramjet을 사용하면 두 사람이 열린 연결을 유지해야하므로 노드 응용 프로그램 자체는 아닙니다. 귀하의 경우 노드 응용 프로그램이 주어진 자격 증명을 사용하여 여러 장치에 대한 연결을 적극적으로 열어 주며 이러한 장치는 Twitter의 스트리밍 API와 같은 비트를 통해 끝이없는 스트림으로 응답한다는 점을 이해합니다. 조금 같이 :
new scramjet.MultiStream(devicesList.map(
(device) => request.post(device, credentials)
.pipe(new StringStream())
.split("\r?\n") // or however you'd read your messages
.parse(JSON.parse) // or however you'd parse your data
.assign({deviceId: device.id}) // you'll probably need this
))
.mux(/* optionally an ordering function */)
// above there's a single stream with all the logs from all your devices.
를이 다른 방법으로 둥글고 장치가 서버를 호출하는 경우, 다음 scramjet-http-uristream 또는 scramjet-http-post 좀 봐 - 그냥 모든 URI의 나 게시물을 스트림 간단한 단절이다 서버에 게시됩니다.
이 정보가 도움이되기를 바랍니다. :)
서버에서 장치의 데이터를 가져 와서 단일 스트림으로 멀티플렉싱하고 싶습니까? –
가능합니까? 데이터 스트리밍에 익숙하지 않습니다. 방법을 제안하십시오. 감사합니다 –
그래. Scramjet을 썼을 때 제가 생각한 사례 중 하나는 대답을 쓸 것입니다. :) –