[javascript] 자바스크립트에서 프로세스간 통신을 위한 바이너리 데이터 전송하기
다음은 Node.js 환경에서 두 프로세스 간에 바이너리 데이터를 전송하는 예제 코드입니다.
이 예제에서는 child_process
모듈을 사용하여 프로세스 간 통신을 시뮬레이션합니다. 또한 바이너리 데이터 전송을 위해 Buffer
클래스를 사용합니다.
const { spawn } = require('child_process');
// 부모 프로세스
const parent = spawn('node', ['child.js']);
// 바이너리 데이터 생성
const bufferData = Buffer.from('Hello, World!', 'utf-8');
// 데이터를 자식 프로세스로 전송
parent.stdin.write(bufferData);
자식 프로세스에서는 process.stdin
을 통해 데이터를 받을 수 있습니다.
// child.js
process.stdin.on('data', (data) => {
console.log('Received data in child process:', data.toString('utf-8'));
});
위 코드는 부모 프로세스에서 spawn
으로 자식 프로세스를 생성하고 바이너리 데이터를 생성하여 자식 프로세스로 전송하는 예제입니다. 자식 프로세스에서는 process.stdin
을 사용하여 데이터를 받고 콘솔에 출력합니다.
이와 같은 방식을 사용하여 바이너리 데이터를 프로세스 간에 전송할 수 있습니다. 이외에도 웹 소켓이나 원격 프로시저 호출(RPC)과 같은 기술을 사용하여 프로세스 간 통신을 구현할 수도 있습니다.
더 자세한 정보를 원하시면 아래 Node.js 공식 문서를 참고하세요. https://nodejs.org/api/child_process.html#child_process_options_stdio