본문 바로가기
프로그래밍 놀이터/안드로이드, Java

[android] JSON lib 비교

by 돼지왕 왕돼지 2017. 7. 21.
반응형

 [android] JSON lib 비교


http://www.developer.com/lang/jscript/top-7-open-source-json-binding-providers-available-today.html

https://dzone.com/articles/be-lazy-productive-android

Android, api level, deserialize, DOM, flexjson, genson, google-gson, GSON, Jackson, jsckson, JSON, json lib compare, json lib comparison, json lib 비교, json-io, json-lib, jsonij, JSONObject, jsonreader, libsize, Memory, Mobile, org.json, Read, SAX, Serialize, write, [android] JSON lib 비교, 고용량, 그래프, 비효율


-

실험 그래프는 위의 링크를 참조하길..

여기서는 결과만 정리!!



-

JSON 관련 유명한 Library 종류는..

Jackson

Google-gson

JSON-lib ( 기본 )

Flexjson

json-io

genson

JSONiJ



-

약 300KB 정도 용량을 read(deserialize)/write(serialize) 했을 때는

Flexjson 과 Gson 이 가장 빠른 편이었다.


-

100MB 이상의 고용량 데이터를 read/write 했을 때는

Jackson 이 월등한 성능을 보여주었다.



-

Lib size 측면에서는 Jackson 이 꽤나 높은 size 를 보여준다.



-

총체적으로 보았을 때 mobile 환경에서는 gson 이 가장 최적으로 보인다.



-

org.json 즉, 기본으로 제공되는 JSONObject 와 JSONArray 는 DOM 방식의 parsing 을 제공한다.

즉 모든 것을 memory 에 올린 다음 data 에 접근하도록 한다.

이는 일반적인 JSONObject 사용방식을 보았을 때 비효율적이다.



-

JSONReader 라는 녀석이 있는데, 이 녀석은 API Level 11 이상에서 android 기본으로 사용될 수 있는 녀석이다.

이 녀석은 SAX 방식으로 작동한다.

이 녀석은 GSON 과 같은 방식인데, API Level 11 미만에서도 지원이 된다.



-

dzone.com 링크에 따르면 Jackson 은 현재까지 알려진 가장 빠른 JSON lib 으로 알려저 있다.

해당 페이지에서 소스코드를 공개하지 않았지만, parsing ( deserialization ) 측면에서 Jackson 이 가장 빠르다는 결과를 보여준다.


-

https://github.com/bluelinelabs/LoganSquare

실험결과는 Open Source 를 만든 친구들이 제공한 것이긴 하지만,

일반적으로 가장 빠르게 여겨지는 jackson 과 gson 보다 훨~~씬 빠른 결과를 보인다..

테스트해볼만 할 정도로 성능이 탁월하다.




반응형

댓글