AI 에이전트의 경우: 문서 인덱스는 https://www.mongodb.com/ko-kr/docs/llms.txt에서 사용할 수 있으며, 모든 페이지의 마크다운 버전은 어떤 URL 경로에 .md를 추가하여 사용할 수 있습니다.
Docs Menu

네트워크 트래픽 압축

MongoDB 드라이버는 MongoDB Server 와 주고받는 메시지를 압축할 수 있습니다. 이렇게 하면 각 작업에 대해 전송되는 데이터 양이 줄어듭니다. 압축은 제한된 네트워크에서 성능을 향상시키고 MongoDB Atlas 실행 과 관련된 데이터 전송 비용을 낮출 수 있습니다.

압축은 유선 프로토콜 수준에서 작동하므로 애플리케이션 수행하는 모든 작업에 적용됩니다. 알고리즘 두 개 이상 지정하는 경우 운전자 MongoDB Server 도 지원하는 목록의 첫 번째 알고리즘 사용합니다.

MongoDB 드라이버는 다음 압축 알고리즘을 지원 .

MongoDB Atlas cloud 리전, cloud 제공자 간, 인프라와 MongoDB Atlas 간에 전송되는 데이터에 대해 요금을 부과합니다. 네트워크 압축은 애플리케이션 보내고 받는 데이터의 양을 줄여서 이러한 데이터 전송 비용을 낮출 수 있습니다. 요금에 대해 자세히 학습 데이터 전송 비용을 참조하세요.

네트워크 압축은 생산성 이점도 있습니다. 압축된 메시지는 네트워크를 통해 전송되는 데 시간이 덜 걸리므로 애플리케이션의 응답 시간을 개선할 수 있습니다. 또한 압축은 MongoDB 트래픽이 사용하는 대역폭을 줄여 동일한 네트워크의 다른 애플리케이션에서 사용할 수 있는 대역폭을 더 많이 확보합니다.

압축 알고리즘 선택할 때 다음 지침을 고려하세요.

  • 압축 효율성 과 리소스 사용량의 균형을 맞추려면 Zstandard를 사용하세요. Zstandard는 대부분의 애플리케이션에 적합한 기본값 선택입니다.

  • 최소한의 계산 오버헤드 필요한 지연 시간에 민감한 애플리케이션에는 Snappy를 사용하세요.

  • MongoDB 드라이버 및 환경 전반에서 광범위한 호환성을 위해 Zlib를 사용하세요.

팁

CPU 사용량 모니터링

압축은 네트워크 대역폭을 CPU 사용량과 맞바꾸니다. 네트워크 압축을 활성화한 후 애플리케이션의 CPU 사용률을 모니터링하여 이러한 맞바꾸이 워크로드에 도움이 되는지 확인합니다. 이러한 맞바꾸에 대해 자세히 알아보려면 MongoDB에서의 CPU 사용률 및 네트워크 압축 블로그 포스트를 참조하십시오.

Laravel 통합의 모든 버전은 각 네트워크 압축 알고리즘 지원 .

다음 표에는 각 알고리즘 에 대해 지원되는 최소 MongoDB Server 버전이 나열되어 있습니다.

압축 알고리즘
최소 서버 버전

4.2

4.2

4.2

MongoDB 연결에 네트워크 압축을 활성화 하려면 다음 단계를 수행하세요.

  • 필요한 종속성을 사용하여 MongoDB PHP 확장을 빌드합니다. 확장 프로그램은 Laravel 통합이 아닌 네트워크 압축을 처리합니다.

  • 사용할 압축 알고리즘을 지정합니다.

Laravel 통합은 MongoDB PHP 확장과 MongoDB C 드라이버 사용하여 네트워크 압축을 구현 하므로 필요한 종속성과 함께 C 운전자 설치해야 합니다. 이러한 종속성을 보려면 C 운전자 설명서에서 설치 종속성을 참조하세요.

MongoDB 인스턴스 연결 시 압축을 활성화 하려면 애플리케이션의 config/database.php 구성 파일 에서 connections 배열 업데이트 . 다음 방법 중 하나로 압축 알고리즘을 지정할 수 있습니다.

  • options 배열 에 compressors 옵션을 포함합니다.

  • dsn 연결 문자열 에 compressors 매개변수를 사용합니다.

사용 가능한 모든 압축기를 지정하는 예시 보려면 Options Array 또는 Connection String 탭 선택합니다.

'connections' => [
'mongodb' => [
'dsn' => 'mongodb+srv://mongodb0.example.com/',
'driver' => 'mongodb',
'database' => 'sample_mflix',
'options' => [
'compressors' => 'snappy,zstd,zlib',
],
],
],
'connections' => [
'mongodb' => [
'dsn' => 'mongodb+srv://mongodb0.example.com/?compressors=snappy,zstd,zlib',
'driver' => 'mongodb',
'database' => 'sample_mflix',
],
],

압축 알고리즘 중 하나로 Zlib를 지정하는 경우 zlibCompressionLevel 옵션을 사용하여 압축 수준을 지정할 수 있습니다. 이 옵션은 -1에서 9 사이의 정수 값을 허용하며 값은 다음과 같은 효과가 있습니다.

  • -1: (기본값) Zlib는 기본값 압축 6 수준(일반적으로)을 사용합니다.

  • 0: 압축하지 않습니다.

  • 1: 속도가 가장 빠르지만 압축률은 가장 낮습니다.

  • 9: 압축률은 가장 높지만 속도가 가장 느립니다.

Options Array 또는 Connection String 탭 선택하면 zlibCompressionLevel 옵션을 1로 설정하는 예시 볼 수 있습니다.

'connections' => [
'mongodb' => [
'dsn' => 'mongodb+srv://mongodb0.example.com/',
'driver' => 'mongodb',
'database' => 'sample_mflix',
'options' => [
'compressors' => 'zlib',
'zlibCompressionLevel' => 1,
],
],
],
'connections' => [
'mongodb' => [
'dsn' => 'mongodb+srv://mongodb0.example.com/?compressors=zlib&zlibCompressionLevel=1',
'driver' => 'mongodb',
'database' => 'sample_mflix',
],
],