// 1. 페이지의 에서 최대한 위에 이 코드를 붙여넣으세요. // 아래의 메타 태그를 복사해 사이트 홈페이지의 섹션에 붙여 넣어주세요. //2. 여는 태그 바로 뒤에 코드를 붙여넣으세요.

새소식

반응형
Javascript/성능

JSON 성능 최적화

  • -
반응형

JSON은  웹 개발에 널리 채택되고 있지만 속도 문제가 없는 것은 아닙니다. 이 형식은 사람이 읽을 수 있는 특성으로 인해 데이터 페이로드(전송되는 '순수한 데이터')가 커지고 처리 시간이 느려질 수 있습니다. 그럼 JSON을 더 빠르고 효율적으로 만들기 위해 어떻게 최적화할 수 있을까요?

이제 JSON이 애플리케이션의 속도와 효율성을 유지할 수 있도록 JSON의 성능 향상 방법을 알아봅시다.

 

1. 데이터 크기 최소화:

  • 짧고 설명적인 키 사용: 간결하지만 의미 있는 키 이름을 선택하여 JSON 개체의 크기를 줄입니다.
// 비효율적 
{ 
  "customer_name_with_spaces" :  "John Doe" 
} 


// 효율적 
{ 
  "customerName" :  "John Doe" 
}
  • 가능한 경우 약어 사용: 명확성을 유지하면서 키나 값에 약어를 사용하는 것을 고려하세요.
// 비효율적 
{ 
  "transaction_type" :  "purchase" 
} 


// 효율적 
{ 
  "txnType" :  "purchase" 
}

 

2. 배열을 사용하세요:

  • 중첩 최소화 : 깊게 중첩된 배열은 JSON 구문 분석 및 탐색의 복잡성을 증가시킬 수 있으므로 피합니다.
// 비효율적 
{ 
  "order" :  { 
    "items" :  { 
      "item1" :  "product A" , 
      "item2" :  "product B" 
    } 
  } 
} 


// 효율적 
{ 
  "orderItems" :  [ "product A" ,  "product B" ] 
}
반응형

3. 숫자 표현 최적화:

  • 가능한 경우 정수 사용: 값을 정수로 표현할 수 있는 경우 부동 소수점 숫자 대신 정수를 사용합니다.
// 비효율적 
{ 
  "수량" :  1.0 
} 


// 효율적 
{ 
  "수량" :  1 
}

 

4. 중복 제거:

  • 반복적인 데이터 방지 : 공유된 값을 참조하여 중복된 데이터를 제거합니다.
// 비효율적 
{ 
  "product1" :  { 
    "name" :  "product A" , 
    "price" :  10 
  } , 
  "product2" :  { 
    "name" :  "product A" , 
    "price" :  10 
  } 
} 


// 효율적 
{ 
  "product" :  [ 
    { 
      "name" :  "product A" , 
      "price" :  10 
    } , 
    { 
      "name" :  "product B" , 
      "price" :  15 
    } 
  ] 
}

 

5. 압축을 사용하세요:

  • 압축 알고리즘 적용: 해당하는 경우 Gzip 또는 Brotli 와 같은 압축 알고리즘을 사용하여 전송 중에 JSON 페이로드의 크기를 줄입니다.
// Gzip 압축을 위해 zlib를 사용하는 Node.js 예제 

const zlib = require ( 'zlib' ); 

const jsonData = { 
  // 여기에 JSON 데이터가 있습니다
}; 


zlib. gzip ( JSON . stringify (jsonData), ( err,pressedData ) => { 
  if (!err) { 
    // 네트워크를 통해 압축된 데이터 보내기
   } 
});

 

6. 서버측 캐싱을 사용합니다.

  • JSON 응답 캐시: JSON 응답을 효율적으로 저장하고 제공하기 위해 서버 측 캐싱을 구현하여 반복적인 데이터 처리 필요성을 줄입니다.

 

7. 프로파일링 및 최적화:

  • 성능 프로파일링: 프로파일링 도구를 사용하여 JSON 처리 코드의 병목 현상을 식별한 다음 해당 섹션을 최적화합니다.
반응형

'Javascript > 성능' 카테고리의 다른 글

JSON 대체재(성능 향상을 위한 대체재)  (0) 2024.03.17
JSON 속도 최적화 향상 사례(실화)  (0) 2024.03.17
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.