2012-05-29 2 views
-2

저는 서비스 계층에 기반한 복잡한 아키텍처를 사용하는 대규모 프로젝트에서 수석 디자이너이자 사용자 경험 전문가로 일하고 있습니다. Oracle 데이터베이스, 데이터 액세스 레이어, Buisness Layer,보고 서비스 레이어, Validation 서비스 레이어, Audit 서비스 레이어 및 마지막으로 Presentation 레이어가 있습니다.복잡한 아키텍처 용 XML 대신 JSON

모든 계층은 현재 XML로 통신하고 있습니다. 데이터 액세스 계층에는 XML 쿼리에 의해 호출되는 데이터베이스 함수가 ​​포함되어 있습니다.

페이지에 착륙 할 때마다 프레젠테이션 레이어에서 유효성 검사 서비스로 메시지가 전송되어 유효한 사용자인지 여부를 확인한 다음 데이터 액세스로 이동하고 정보를 검색하고 비즈니스 서비스로 돌아옵니다 계산 및 변환을 수행하고 모든 단계에서 감사 서비스가 정보를 얻습니다. 마지막으로 정보는보고 서비스 (원형 차트 작성을 담당)를 거친 후 페이지에 표시되고 마스터 페이지, CSS 및 Javascript 재미있는 프레젠테이션 레이어로 끝납니다.

검색된 데이터가 상당히 큽니다. 우리는 Base64를 사용자의 프로필 사진으로 사용합니다 (실제 사진이 아니라 사진 임). 우리는 검색된 데이터로부터 원형 차트와 데이터 테이블을 생성하고 계산 등을 수행합니다. 아키텍처의 목표는 가능한 모든 서비스가 소비 할 수있을만큼 유연하도록하는 것입니다. 따라서 회사는 안전하고 유연해야하는 귀중한 정보가 포함 된 시스템을 사용하고자합니다.

JSON이 모바일 장치에서 실제로 잘 작동한다는 것을 알고 있습니다. JSON은 데이터 교환 및 모바일 애플리케이션에 가장 적합하다는 연구 결과가 나왔습니다. 분명히 트위터는 JSON으로 완전히 바뀌었다. 그러나 JSON이 더 큰 데이터 처리 성능을 상실한다는 사실을 보여주는 그래픽으로 누군가의 블로그에 빠졌습니다. Edward's blog.

Google 시스템이 회사의 태블릿에서 클라이언트의 대량 데이터를 사용한다고 이미 말할 수 있습니다. 큰 의미는 100 가지 이상의 질문이있는 양식을 작성하고 사진과 메모를 찍는 것입니다.

우리는 C#을 사용하여 도움을

감사를 ASP.NET을 사용하고 모호한 것에 대해 미안하지만 난 정말이 프로젝트 자체에 대한 세부 정보를 제공 할 수 없습니다. 나는 가능한 한 많은 질문에 답할 수있다.

업데이트 죄송합니다. 나는 실제 상황을 설명하는 것을 잊어 버렸습니다. 유연성, 모바일 사용 및 성능을 염두에 둔 대형 시스템의 경우 JSON과 XML 사이의 최선의 선택은 무엇입니까?

+2

무엇이 질문입니까? –

답변

1

글쎄, 내 대답을 뒷받침 할 데이터가 많지는 않지만, 다음과 같은 이유로 JSON을 사용하면 더 낫습니다.
1. 일반적으로 서버 및 클라이언트 측 개발자가 객체를 처리하고 있습니다. 어떤 언어에서 json 객체로 객체를 직접 매핑하는 반면에 XML을 사용하는 경우에는 직렬화 및 직렬화 해제와 같은 작업이 필요합니다.
2. 메모리 사용량이 적습니다 (메모리에 메시지가 남아있을 때를 가정).
3.Json을 객체로 파싱하는 클라이언트 쪽에서 XML을 파싱하기 위해 일부 자바 스크립트 라이브러리를 사용하는 것과 비교하여 더 빠르고 자동적입니다.
4. 경험이 풍부한 개발자가 한 번 JSON과 XML 구조의 가독성을 구분하지 않는 것으로 보입니다.
마침내 JSON은 XML보다 빠릅니다.

+0

XML에서 JSON으로 함수를 변환하기가 어렵습니까? 논리는 특정 노드에 포함 된 문자열을 원할 경우 XML을 사용하는 것과 같은 방식으로 노드를 호출합니다. – MrJinPengyou

+1

대신 코드를 변경해야한다고 생각합니다. serializer/deserializer를 사용하여받은 JSON을 직접 aC# 개체로 변환 한 다음 간단한 C# 개체를 사용하면됩니다. 쉬운. –

0

분명히 json. 항상.

아니요, 농담입니다. 그것은 당신이 성취하고자하는 것에 정말로 달려 있습니다. 그것은 가능한 한 Google 프로토콜 버퍼 또는 bson 가능한 효율적으로 데이터를 전송하는 경우 CPU 시간이 문제가되지 않는다면 gzipped xml (좋은 아이디어가 아닙니다 .-)), 모든 데이터 전송을위한 단일 형식을 유지하려는 경우 javascript 포함), json으로 이동, 원격 기능 호출에 대한 자세한 내용은 Windows 통신 기초를 참조하십시오. 거기에 옵션이 hundereds 및 가장 가능성이 가장 적은 하나는 최소한의 개발 노력을 일으키는 것입니다. 하드웨어는 저렴합니다.

관련 문제