• Facebook
  • 트위터
  • 유튜브
  • 라인드인
  • RSS
  • 기술 문서
  • 비교
  • 블로그
  • 다운로드
  • 문의하기
다운로드
목차 표시/숨기기

직렬화 형식

NCache 직렬화를 사용하여 객체를 네트워크 통신 및 저장을 위한 전송 가능한 형식으로 변환합니다. 다음 중에서 선택합니다. JSON 이진 직렬화를 사용하면 애플리케이션의 아키텍처 요구 사항에 따라 고속 로컬 처리, 크로스 플랫폼 호환성 또는 메모리 효율성을 위해 캐시를 최적화할 수 있습니다.

네트워크를 통해 캐시 데이터를 전송할 때는 직렬화해야 합니다. 직렬화된 데이터가 전송되거나 수신된 후에는 역직렬화 과정을 통해 데이터를 읽고 원래의 객체 또는 데이터 구조를 복원합니다. 이러한 직렬화/역직렬화 과정 전체에는 시간, 메모리, 성능과 같은 요소들이 영향을 미칩니다. 따라서 직렬화 형식을 선택할 때는 이러한 요소들을 반드시 고려해야 합니다.

에서 제공하는 직렬화 형식에는 두 가지 유형이 있습니다. NCache:

  • JSON 직렬화
  • 이진 직렬화
중대한

바이너리 직렬화는 다음에서 구성할 수 없습니다. NCache 5.3.7 이후 버전에서도 마찬가지입니다. 또한 ASP.NET 5.0 이상 버전을 사용하는 경우 JSON 직렬화를 사용하는 것이 좋습니다. 자세한 내용은 여기를 클릭하세요. 여기에서 확인하세요.

JSON 직렬화

JSON JSON은 데이터를 저장하고 교환하기 위한 텍스트 기반 구문입니다. 기계가 구문 분석하기 쉽고 사용자가 이해하기도 쉽습니다. JSON 직렬화를 사용하면 객체는 직렬화될 때 JSON 형식으로 변환되고, 역직렬화될 때 다시 원래의 사용자 정의 객체로 변환됩니다.

.NET을 고려하십시오 프로덕트 제품 데이터를 포함하는 클래스입니다. 여기에는 다양한 속성이 포함되어 있습니다. 예: 상품명, ProductID예산 및 제품만료등

Product product = new Product();
product.Name = "Apple";
product.Expiry = new DateTime(2008, 12, 28);
product.Sizes = new string[] { "Small" };

이 데이터는 다음 JSON 문자열로 직렬화됩니다.

 {
   "Name": "Apple",
   "Expiry": "2008-12-28T00:00:00",
   "Sizes": 
    [
     "Small"
    ]
 }

사용된 시리얼라이저는 뉴턴소프트 타사 직렬화 도구를 사용하는 것이 데이터의 간결하고 편리한 직렬화에 더 적합한 접근 방식일 수 있습니다. 아래는 사용자 정의 직렬화 도구의 예입니다. Account 클래스 Password 해당 속성은 직렬화에서 제외되도록 표시되었습니다.

public class Account
{
    public string FullName { get; set; }
    public string EmailAddress { get; set; }

    [JsonIgnore]
    public string Password { get; set; }
}

이제 생성 Account 모든 속성에 대한 값을 가진 객체:

Account account = new Account
{
    FullName = "Joe User",
    EmailAddress = "joe@example.com",
    Password = "VHdlZXQgJ1F1aWNrc2lsdmVyJyB0byBASmFtZXNOSw=="
};

이후 Password 해당 속성은 다음과 같이 표시됩니다. [JsonIgnore]직렬화된 JSON 출력에는 포함되지 않습니다.

{
    "FullName": "Joe User",
    "EmailAddress": "joe@example.com"
}
주의 사항

JSON 직렬화가 특정 사용자 지정 유형을 제대로 처리하지 못하는 경우 외부 Newtonsoft를 구성할 수 있습니다. JsonConverter 해당 유형에 대한 자세한 내용은 다음을 참조하십시오. 외부 Newtonsoft JsonConverter 지원.

이진 직렬화

바이너리 형식에서 사용자 객체는 다음과 같습니다. Product 객체는 캐시로 전송되기 전에 클라이언트 측에서 직렬화됩니다. NCache 서버는 항목을 직렬화된 바이너리 형태로 저장합니다. 항목을 가져오면 서버는 저장된 바이너리 데이터를 클라이언트로 반환하고, 클라이언트는 이를 역직렬화하여 원래 객체 유형으로 복원합니다.

바이너리 형식은 애플리케이션이 주로 클라이언트 측에서 완전한 객체를 저장하고 검색할 때 유용합니다. JSON과 마찬가지로, 일반적인 추가 및 가져오기 작업을 위해 서버에 데이터를 직렬화된 형태로 저장합니다. 그러나 JSON과 달리 바이너리 형식은 이진 표현을 사용하므로 일반적으로 텍스트 기반 JSON보다 압축률이 높으며, 데이터가 사람이 읽을 수 있는 형식일 필요가 없거나 JSON으로 처리될 필요가 없을 때 더 적합합니다.

바이너리 형식은 대부분의 처리가 클라이언트 측에서 이루어질 때, 특히 다음과 같은 작업에 유용합니다. 첨가, 업데이트, 가져 오는 중예산 및 제거 캐시의 데이터. 예를 들어, 직렬화된 경우 Product 객체는 캐시에서 가져와 내용을 표시하며, 서버는 저장된 바이너리 데이터를 반환하고 클라이언트는 이를 로컬에서 역직렬화합니다.

마찬가지로, ~할 때 Product 객체는 바이너리 형식을 사용하여 캐시에 추가됩니다. 네트워크를 통해 전송되기 전에 직렬화되고, 캐시에도 동일한 직렬화된 형태로 저장됩니다. 따라서 바이너리 형식은 주로 완전한 객체를 다루고 캐시 데이터를 읽기 쉬운 JSON 형식으로 저장할 필요가 없는 애플리케이션에 적합합니다.

도 참조

로컬 캐시 동적 클러스터
WAN 복제용 브리지

문의하기

전화

+1 214-619-2601   (미국)

+44 20 7993 8327   (UK)

 
이메일

sales@alachisoft.com

support@alachisoft.com

NCache
  • 판 비교
  • NCache 아키텍처
  • 벤치 마크
다운로드
가격
놀이터를 사용해보십시오

배포
  • 클라우드(SaaS 및 소프트웨어)
  • 온 프레미스
  • Kubernetes
  • 도커
기술 사용 사례
  • ASP.NET 세션
  • ASP.NET 코어 세션
  • 게시/구독 메시징
  • 실시간 ASP.NET SignalR
  • 사물의 인터넷 IOT ()
  • NoSQL 데이터베이스
  • 스트림 처리
  • 마이크로 서비스
리소스
  • 잡지 기사
  • 제XNUMX자 기사
  • 기사
  • 비디오
  • 백서
  • 쇼
  • 회담
  • 블로그
  • 기술 문서
고객 사례 연구
  • 환자 후기
  • 고객
고객 지원
  • 데모 예약
  • 포럼(Google 그룹스)
  • Tips
회사
  • Leadership
  • 파트너
  • ​뉴스
  • 이벤트
  • 채용 정보
문의하기

  • 영어중국어 (간체)프랑스어독일 사람이탈리아 사람일본제한국어포르투갈어스페인어

  • 문의하기
  •  
  • 사이트 맵
  •  
  • 이용 약관
  •  
  • 개인정보 처리방침
© 저작권 Alachisoft 2002 - . 판권 소유. NCache 는 Diyatech Corp.의 등록상표입니다.
맨 위로