피드로 돌아가기
Node.js 8.7.0 (Current)
Node.js BlogNode.js Blog
Backend

Node.js 8.7.0이 dgram 버퍼 크기 설정, O_DSYNC 파일 열기 상수, async_hooks 기능 확장으로 저수준 네트워크·파일시스템·비동기 실행 제어 강화

Node.js 8.7.0 (Current)

2017년 10월 11일5intermediate

Technical Solution

  • dgram 소켓 버퍼 크기 설정 지원 추가: 네트워크 대용량 데이터 처리 시 버퍼 오버플로우 제어 가능
  • fs 모듈에 O_DSYNC 파일 열기 상수 지원: 파일 메타데이터 동기화 없이 데이터만 즉시 디스크 기록
  • async_hooks에서 execution_async_id 사용자 전달 지원: 비동기 작업의 실행 컨텍스트를 애플리케이션에서 직접 제어
  • PromiseWrap 생성자 추가: Promise 기반 비동기 작업의 후킹 및 추적 개선
  • libuv 1.15.0 업그레이드: 이벤트 루프 기반 I/O 처리 성능 및 안정성 개선
  • crypto 모듈 X509V3_EXT_d2i 및 SSL_SESSION_get_id 함수 도입: OpenSSL 최신 표준 API 적용으로 암호화 기능 강화
  • macOS 설치 프로그램 배포: 플랫폼별 설치 환경 개선
  • Python 3 시스템 빌드 지원: 빌드 도구체인의 호환성 확장
  • 비동기 후킹 테스트 CI 통합: async_hooks 기능에 대한 자동화된 검증 추가

Node.js를 사용하는 백엔드 서비스에서 dgram 소켓 버퍼 크기를 애플리케이션 요구사항에 맞게 설정하면 UDP 기반 대용량 메시지 손실을 방지할 수 있고, async_hooks의 execution_async_id 전달 기능으로 분산 트레이싱 및 요청 컨텍스트 추적 구현이 간소화된다.

원문 읽기