Enyim.Caching이 포함 된 .NET Couchbase Client API를 사용하고 있습니다. 나는 약 55 메가의 DataTable을 가지고 있고 캐시되지 않는다. 아이템 크기가 20 meg 인 경우 "최대"소프트가 있음을 이해합니다.기본 Couchbase 항목 크기를 변경하려면 어떻게해야합니까?
이 개체를 캐시하려면 어떻게 기본 최대 항목 크기를 변경할 수 있습니까?
Enyim.Caching이 포함 된 .NET Couchbase Client API를 사용하고 있습니다. 나는 약 55 메가의 DataTable을 가지고 있고 캐시되지 않는다. 아이템 크기가 20 meg 인 경우 "최대"소프트가 있음을 이해합니다.기본 Couchbase 항목 크기를 변경하려면 어떻게해야합니까?
이 개체를 캐시하려면 어떻게 기본 최대 항목 크기를 변경할 수 있습니까?
당 MikeW :
이 자신 카우치베이스 주식회사 소스 코드와 건물에 일정한 수정이 필요합니다.
주위를 둘러 볼 수없는 것처럼 보입니다. 도와 주셔서 감사합니다.
Memcached 버킷 또는 Couchbase 버킷을 사용하고 있습니까? Memcached 버킷을 사용하는 경우 1MB 제한을 초과 할 가능성이 큽니다. 빠른 샘플 프로그램 :
var config = new CouchbaseClientConfiguration();
config.Urls.Add(new Uri("http://127.0.0.1:8091/pools/default"));
config.Bucket = "memcached";
config.BucketPassword = "qwerty";
var client = new CouchbaseClient(config);
var size = 1000000;
var sb = new StringBuilder();
for (int i = 0; i < size; i++) { sb.Append("z"); };
var data = sb.ToString();
var result = client.Store(StoreMode.Set, "foo", data);
Console.WriteLine(data.Length + ": " + result);
size
변수는 result
사실이다, 1000000로 설정됩니다. size
이 MB보다 약간 큰 값, 예를 들어 1100000으로 설정되면 result
은 false가됩니다. 대신 Couchbase 버킷을 사용하는 경우 size
을 20000000으로 설정하고 result
을 true로 설정할 수 있습니다. 그러나 size
을 21000000으로 설정하면 Store
작업이 실패하게됩니다.
Memcached 버킷을 사용하지 않는 경우 나에게 알려주십시오 ... 또한이 샘플에서는 1.8 서버와 함께 .NET 1.0 클라이언트를 사용하고 있습니다.
- 존
카우치베이스 주식회사 포럼 포스트 here에서응답을 감사하지만 원래 바이트를 잘못 계산했기 때문에 실제로 질문을 변경했습니다. 나는 55 megs가 아니라 55 megs를 저장하려고 시도했는데, 이는 내 문제를 변화시켰다. Couchbase v1.8을 .NET Couchbase Client API와 함께 사용하고 있습니다. – DougJones
Memcached 버킷을 사용할 때 1MB 제한을 초과하는 방법이 있습니까? –
개체가 20MB 미만인 경우 상태 코드 3은 E2BIG가 아닙니다. 크기를 다시 확인하고 코드를 게시 할 수 있습니까? – mikewied
수정 된 질문입니다. 나는 십진법을 틀린 장소에 넣었다. 이 항목은 5.5 megs 대신 55 megs입니다. 도와 주셔서 감사합니다! – DougJones