2008-10-07 2 views

답변

5

JSON은 XML보다 작고 간단합니다. JSON을 구문 분석하는 것이 더 빠르다.

YAML이 더 빠를 것입니다.

+0

YAML이 JSON의 상위 집합이라고 생각했기 때문에 JSON을 구문 분석하는 것이 적 으면 빠를까요? –

+0

http://yaml.org/를 참조하십시오. YAML은 JSON과 다릅니다. 표현력이 풍부하고 JSON을 구문 분석하기가 더 쉽습니다. –

+0

http://redhanded.hobix.com/inspect/yamlIsJson.html 참고 모든 JSON은 유효한 YAML이므로 YAML은 JSON의 상위 집합으로 간주 될 수 있습니다. –

1

XML은 꺾쇠 괄호와 추가 정보로 인해 JSON보다 약간 더 오버 헤드가 많습니다. 좋은 파서는 JSON을 XML보다 빠르게 구문 분석 할 수 있어야합니다.

+1

"조금 더"? 그것은 자선 단체입니다. 나는 "보트로드 더 많은 것"이 더 정확하다는 것을 안다. 아마도 난 심각하게 나쁜 XML을보고있을뿐입니다. –

+0

당신이 맞다고 생각합니다. – Seibar

+1

실제로, 핵심 xml 1.0에는 _parsing_에 대한 중요한 문제가 없습니다. DTD를 사용하는 경우 네임 스페이스, 라인 피드 정규화 및 DTD 엔티티 처리 (실제로 큰 문제)입니다. 다른 모든 것 (선택 사항) xml cruft가 복잡해집니다. XML 스키마, DTD, XSLT 등을 사용하는 경우 – StaxMan

2

속도가 실제로 문제가된다면 Groovy의 구현에 의존하는 것보다 원하는 것을 구문 분석하기 위해 자바 라이브러리를 사용하고 싶습니다.

2

동일한 스키마와 동일한 정보의 경우 메모리 사용량은 거의 동일합니다. 성능은 두 가지 사이에서 무시할 수 있어야합니다.

2

스키마와 데이터가 동일 할 경우 성능 차이가 프로파일 러 이외의 항목에서 감지되지 않을 것이라고 생각합니다. 그것은 잘못된 XML 파서를 사용했다면 큰 차이를 볼 수 있다고했습니다. 즉, SAX 구현은 JSON 구문 분석과 쉽게 일치하거나 능가 할 수 있습니다. cinsider에는 많은 외부 요인이 있습니다. 실제 이야기에서 추가 논리가없는 동일한 데이터/스키마에서 JSON 및 SAX 파서를 모두 throw하려는 경우 큰 절약은 구문 분석을 해석하는 데 사용되는 논리에서 비롯됩니다. SAx가 지나치게 복잡한 비 성능 솔루션을 유발하는 반면 req를 기반으로 DOM 또는 풀 파서를 사용하는 것이 더 간단 할 수 있습니다. 또한 파서간에 눈에 띄는 차이가 있습니다. 파일 크기 변수를 추가하면 실제 측정 범위를 빠르게 잃어 버릴 수 있습니다. 또 다른 예로 XML에 DTD 설명과 엔티티 참조가 포함되어 있고 네트워크 연결에서 대기 시간이 길다면 JSON으로 개선 된 것을 볼 수 있습니다. 그것 모두는 당신이 정말로하려고 노력하고있는 것으로 귀결됩니다.