Node.js 파일 읽기, 쓰기 방법: 동기식 vs 비동기식

Node.js 파일 읽기, 쓰기 방법: 동기식 vs 비동기식

Node.js에서 파일 시스템 작업은 일반적인 작업 중 하나입니다. Node.js의 fs 모듈을 사용하여 파일을 읽고 쓸 때, 주로 동기식(sync)과 비동기식(async) 방식을 사용할 수 있습니다. 이 글에서는 readFile, readFileSync, writeFile, writeFileSync 메소드를 사용하여 파일을 읽고 쓰는 방법에 대해 알아보겠습니다.

비동기식 파일 읽기와 쓰기

Node.js에서 비동기 방식은 일반적으로 권장되는 방식입니다. 비동기 방식을 사용하면, 파일 시스템 작업이 백그라운드에서 실행되고, 작업 완료 시 콜백 함수를 통해 결과를 처리할 수 있습니다.

// 비동기식 파일 읽기
const fs = require('fs');

fs.readFile('/path/to/file', 'utf8', (err, data) => {
  if (err) throw err;
  console.log(data);
});

// 비동기식 파일 쓰기
fs.writeFile('/path/to/file', 'Hello World!', 'utf8', (err) => {
  if (err) throw err;
  console.log('파일이 성공적으로 쓰여졌습니다.');
});

동기식 파일 읽기와 쓰기

동기식 방식은 작업을 순차적으로 처리합니다. 동기식 메소드를 호출하면, 작업이 완료될 때까지 프로그램의 실행이 차단(block)됩니다. 따라서, 동기식 방식은 작업의 순서가 중요하거나, 간단한 스크립트에서 사용하기 적합합니다.

// 동기식 파일 읽기
const fs = require('fs');

const data = fs.readFileSync('/path/to/file', 'utf8');
console.log(data);

// 동기식 파일 쓰기
fs.writeFileSync('/path/to/file', 'Hello World!', 'utf8');
console.log('파일이 성공적으로 쓰여졌습니다.');

동기식과 비동기식 방식 중 어느 것을 사용할지 결정할 때는, 애플리케이션의 요구 사항과 작업의 복잡성을 고려해야 합니다. 대부분의 경우, 비동기식 방식이 선호되지만, 동기식 방식이 더 적합한 경우도 있습니다.

더 깊이 있는 학습을 위해 아래의 공식 문서를 참고하시기 바랍니다. 파일 시스템 작업을 효과적으로 관리하는 것은 Node.js 개발의 중요한 부분입니다.

참고 문서

관련 이전 게시글

이 글이 도움이 되셨다면 공유 부탁 드립니다.

위로 스크롤