내가 읽은 것부터 memcached를 사용하여 한 번에 1MB 이상의 값이나 데이터를 저장할 수 없습니다. 이 경우, 배열의 파일 크기를 memcached에 제출하기 전에 알아낼 수있는 방법이 있습니까?PHP memcached에 대한 배열의 파일 크기를 알아내는 방법
답변
Memcache를 유감 다른 방법을 생각할 수 없습니다 는 키/값 저장소입니다, 따라서 '하지 않습니다 '에 대해 더 알고 "복잡한" 개체. 모듈이하는 일은 값 &을 문자열로 저장하는 것입니다. 그래서 총 크기 = strlen(serialize($value));
non-overloaded version of strlen
원하는 것을 유의하십시오!
감사합니다. 나는 '함수 오버로딩 (Function Overloading)'에 대해 전혀 알지 못했지만,이 함수의 오버로드 된 버전을 사용하는 프로는 무엇입니까? – user1448020
오버로드 된 메서드는 특히 utf8 문자열에 유용합니다. 것은, 그것은 고전적인 strlen보다 3 배 더 많은 공간에 각 캐릭터를 저장합니다. 이 스 니펫을 시도해보십시오 :'var_export (strlen ('ï'). '! =='.mb_strlen ('ï'));'. Memcache는 mb_ * 함수를 사용하여 그것들을 사용하면 잘못된 결과를 줄 것입니다;) – korko
또는 당신은 strlen(serialize($array));
가 아니면 쉬운 방법을 시도 복잡한 방법을 시도
$before = memory_get_usage();
$myarray = array(<content>);
$size = memory_get_usage() - $before;
이
그리고'memory_get_usage()'호출 사이에서 GC가 발생하면 어떻게됩니까? – hafichuk
팁 korko 주셔서 고마워요, 그 유용한 조각에 대해 알고 있지만 memcached 직렬화 된 문자열로 데이터를 저장하고 memcached 서버가 외부 컴퓨터에있을 수 있다고 생각하면 strlen (serialize ($ array)); 방법은 내가 얻으려고 노력하는 것을 위해 더 낫다. – user1448020
hafichuk, GC는 무엇을 의미합니까? – user1448020
이 질문에 직접 대답하는 것은 아니지만 필요한 경우 1MB 제한을 더 큰 값으로 변경할 수 있습니다.
참조 : http://linux.die.net/man/1/memcached
는 각 슬래브 페이지의 기본 크기를 무시 -I. 기본값은 1MB입니다. 기본값은 1m, 최소값은 1k, 최대 값은 128m입니다. 이 값을 조정하면 항목 크기 제한이 변경됩니다. 이것은 또한 개의 슬랩 (보기 위해 -v 사용)과 memcached의 메모리 사용량이 증가합니다.
또한 압축을 활성화하여 값의 크기를 줄일 수도 있습니다. 참조 : http://ca.php.net/manual/en/memcache.setcompressthreshold.php
- 1. MySQL에서 색인의 크기를 알아내는 방법
- 2. memcached에 대한 PHP-memcache 세션 페일 오버
- 3. 배열의 크기를 확인하는 방법
- 4. 동적으로 TCP 버퍼 크기를 알아내는 방법
- 5. PHP : 개체/배열의 크기를 킬로바이트 단위로 측정 하시겠습니까?
- 6. PHP에서 memcached에 대한 영구 연결
- 7. 배열의 크기를 얻는 C++
- 8. PHP 배열의 요소에 대한 참조
- 9. php-memcached에 로컬 캐싱 버퍼가 있습니까?
- 10. 배열의 크기를 할당 초기화
- 11. mailchimp에 대한 $ email 배열의 형식화 방법
- 12. 배열의 크기를 결정
- 13. 증가 배열의 크기를 동적으로
- 14. 하늘의 배열의 크기를 확인
- 15. 배열의 크기를 변경하려면 어떻게해야합니까?
- 16. 리디렉션 URL을 알아내는 방법
- 17. Perl에서 해시 배열의 크기를 찾으십시오.
- 18. 통계/분석을 위해 memcached에 대한 트래픽 차단하기
- 19. Memcached에 대한 linq 개체를 serilize 어쨌든 있습니까?
- 20. memcached에 대한 ORM과 비슷한 래퍼가 있습니까?
- 21. NSCollectionView에 대한 바인딩을 알아내는 것을 도와주세요
- 22. PHP 방법 출력 배열의 내용
- 23. 언젠가는 평일인지를 알아내는 방법
- 24. 숯의 위치를 알아내는 방법
- 25. 모델명을 알아내는 방법
- 26. 블루투스가 끊긴시기를 알아내는 방법
- 27. 사용자 로그인을 알아내는 방법
- 28. 매크로가있는 C 배열의 크기를 확인하십시오.
- 29. PHP 파일 보안 방법
- 30. 배열의 2 배열에 대한 PHP array_dif()
배열의 파일 크기는 무엇을 의미합니까? – ajreal
나는 op가 '배열의 크기'를 의미한다고 가정한다 ... 왜냐하면 파일 크기가 실제로이 컨텍스트에서는 의미가 없기 때문이다. – Wrikken
어떤 압축 수준을 사용하고 계십니까? – ajreal