오늘 저희는 2.1.0 및 2.1.1의 후속 릴리스에 다차원 스케일링(MDS) 지원 및 수많은 버그 수정이 포함된 Couchbase Server 4.0 베타를 출시합니다! 이 글에서는 MDS가 무엇이며 왜 Couchbase Server 4.0에서 이 기능을 활용해야 하는지 설명하겠습니다! 2.1.3은 단일 버그 수정이 포함된 2.1.2입니다. 2.1.2를 사용 중이라면 2.1.3으로 업그레이드하는 것을 적극 권장합니다!
다차원 스케일링(MDS)
다차원 확장은 클러스터를 확장 및 축소할 수 있는 Couchbase Server 4의 새로운 기능입니다.
4.0 이전에는 서비스가 서버 전체에서 균일하게 확장되었지만, 이제 특정 노드를 쿼리 노드, 데이터 노드, 인덱스(또는 둘 다 또는 세 가지 모두, 다양한 옵션)로 지정한 다음 더 많은 CPU가 필요한 노드에서 더 강력한 하드웨어로 해당 노드를 확장할 수 있습니다. 반면에 더 저렴한 하드웨어로 데이터 노드를 확장하려는 경우에도 쉽게 확장할 수 있습니다. 특정 워크로드에 맞게 클러스터를 최적화하는 데 유용한 기능입니다.
애플리케이션이 이를 활용하려면 클라이언트는 쿼리(N1QL)를 위해 지정된 노드와 키/값 CRUD(데이터 노드)와 같은 서비스를 담당하는 노드를 알고 있어야 합니다. 이번 릴리즈에서는 노드를 특정 작업(데이터, 인덱스, 쿼리 등)을 전담하는 특정 컬렉션으로 분할하여 MDS를 지원합니다. 외부적인 관점에서는 차이가 없지만, 내부적으로는 '서비스'를 인식하는 클라이언트만 4.0 클러스터에서 작동합니다. 그러나 이전 버전과의 호환성을 위해 이 SDK(및 향후 버전)는 Couchbase Server 3.0 및 2.5에서 계속 작동할 것입니다.
2.1.3 버그 수정
- [NCBC-932] - 수신 버퍼에서 읽기를 시도할 때 BodyLength는 0입니다.
2.1.2의 버그 수정, 작업 및 개선 사항
기술 작업
- [NCBC-901] - IServer 구현이 NodesExt에 정의된 서비스를 인식하도록 합니다.
- [NCBC-902] - 서버 선택 "서비스 인식" 설정
- [NCBC-903] - 멤캐시드 버킷에 대한 k/v 요청이 데이터 노드를 사용하도록 합니다.
- [NCBC-904] - 서비스를 지원하는 노드에서 작업을 시도할 때 올바른 오류 또는 예외를 반환합니다.
버그
- [NCBC-823] - .NET SDK 2.0을 사용한 장애 조치 중 IndexOutOfRangeException .NET SDK
- [NCBC-886] - 잘못된 문서를 반환하는 카우치베이스 클라이언트
- [NCBC-895] - BufferAllocator는 연결당 생성됩니다.
- [NCBC-908] - 멤캐시드 버킷 폐기 시 연결 누수 수정
- [NCBC-911] - IViewQuery.ConnectionTimeout의 문서화 버그
- [NCBC-912] - 클라이언트가 멤캐시된 본문이 비어있을 때 역직렬화를 시도합니다.
- [NCBC-913] - SDK에서 다운 노드 하트 비트가 1000초라고 잘못 표시됨
- [NCBC-917] - 대량 작업 중 수집 수정 오류
- [NCBC-918] - 멤캐시드 버킷에서 rb2out으로 처리량이 복원되지 않습니다.
- [NCBC-924] - 클러스터 맵에서 NodeExt를 찾을 수 없는 경우 포트 기본값은 0입니다.
개선 사항
- [NCBC-891] - Common.Logging을 버전 3.1로 업데이트하기
- [NCBC-899] - MaxAcquireIterationCount의 기본값을 변경하고 지연을 추가합니다.
- [NCBC-919] - app.config의 글로벌 연결 풀 설정
새로운 기능
- [NCBC-833] - CB 4.0 베타용 nodesext for n1ql 서비스에 대한 지원 추가
작업
- [NCBC-922] - 장애 조치 중 응답 상태로 없음(0xffffffff)을 수신 중입니다.
Couchbase .NET SDK를 얻는 방법
SDK는 NuGet을 통해 직접 다운로드하거나 Github 리포지토리를 복제하여 가져와서 사용할 수 있습니다: