묻고답하기
apc랑 MEMCACHED 랑 혼용해도 되나요?
2015.05.14 17:04
추가로 MEMCACHED를 적용해볼까하는데
오브젝트는 MEMCACHED를 쓸까하고요
$db_info->use_object_cache = 'memcache://localhost:11211';
$db_info->user_template_cache = 'APC';
위에 저런식으로 APC memcached 를 혼용해서 같이 써도 될까요?
그런데 apc가 속도향상 되서 좋긴한데
자주 첨부파일이 한번에 바로되는게아니고
몇번시도해야 되는 잘 안되는 문제가 좀 있습니다
이건 왜그런거죠?
혹시 이런 첨부파일이 잘안되는 경험있스셔서 대책을 세우신분있스시다면 조언좀 부탁합니다
댓글 5
-
AJKJ
2015.05.14 17:25
-
color77
2015.05.14 19:52
AJKJ님 먼저 답변 감사하고요
좋다면 memcache를 제가 언급한 오브젝트 캐시에 적용하면될까요?
밑의 이런식으로 쓰면되나요?$db_info->use_object_cache = 'memcache://localhost:11211';
$db_info->user_template_cache = 'APC';
그런데 말씀하신조언중에
혹시 db부하 php부하 언급하셨는데 그런 세밀한 어떤게 부하걸리는지 아는방법이
아신다면 어떤식으로 검사해보면될까요?
-
AJKJ
2015.05.14 20:13
template cache도 memcache로 설정하시고. user_template_cache 가 아닌 use_template_cache로 해 보세요.(오타인것 같네요.
추가적으로 php.ini에서 세션까지 memcache로 설정하시면 좋습니다.
https://www.xpressengine.com/devlog/22674444
$db_info->use_object_cache = 'memcache://localhost:11211';
$db_info->use_template_cache = 'memcache://localhost:11211';
그리고 APC나 xcache는 xe에서 설정하는게 아니라 php.ini에서 설정 해야 하는것으로 알고 있습니다. ubuntu 사용하시면 apt-get install php5-xcache를 입력하시고, 아니면 pecl install xcache를 통해서 xcache를 설치해보세요.
개인적으로 php부하가 아닐까 생각하는 이유는 50x 에러입니다.... DB에서 문제가 생긴다면, XE에서 DB접속 에러 메시지가 나야 하는데, 50x 에러는 웹서버단에서 php 쪽으로 처리를 요청했는데, 그게 정상적으로 처리가 안되었다는 에러로 알고있어요.
웹서버쪽 에러 메시지 한번 확인해 보시고, 각종 로그 툴 등을 통해서 웹서버 및 php의 cpu 메모리 점유율을 한번 확인해 보세요.
-
color77
2015.05.14 22:30
다시한번 답변 감사합니다
네 제가 오타가있었네요
그래서 xcache까지 설치해봤는데
전 xcache는 별로 체감이 별로인듯합니다
apc가 더효과있는듯하고요
일단 현재 PHPINFO 로 xache/ apc /memcache 모두 설치 다 잘나옵니다
그런데 xcache같은경우는 소스다운받아서 설치해야되네요
저같은경우엔 apc memcache설치이후에 xcache를
yum으로 바로 설치는 에러가나더라고요
그런데
https://www.xpressengine.com/devlog/22674444
여기에 보면
$db_info->use_object_cache = 'memcache://localhost:11211';
$db_info->use_template_cache = 'memcache://localhost:11211';
또는
$db_info->use_object_cache = 'APC';
$db_info->use_template_cache = 'APC';
를 권장했는데
저같은경우 처음엔
$db_info->use_object_cache = 'APC';
$db_info->use_template_cache = 'APC';
로 효과를 봤습니다속도가 빨라지는걸 체감했었거든요그래서 이번에 memcache를 추가설치하고이걸 어떤식 접목할지를 좀더 정확하게 알고싶었던건데요현재 점유율은
cpu는 최대치 35프로 밖에안되고
메모리는 최대치가 95프로정도 됩니다
-
AJKJ
2015.05.14 22:38
메모리 점유율이 과도하고 높은것 같네요. 메모리 점유율이 왜 높은지 확인해 보세요... 메모리가 부족하면 memcach고 apc고 정상작동하지 않을것 같습니다.... php에러도 날 수 있고요.
memcache는 세션 및 XE자체의 캐시이고 APC는 PHP실행 속도를 캐싱합니다. 두개 다 동시 이용하면 좋습니다. 예전에 apc는 문제가 있었다는 글을 본적이 있네요.. apc를 사용하시가 문제가 발생하시면 xcache로 바꿔보세요. (물론 가장 좋은 방법은 php5.5 이상으로 업그레이드 하는 것입니다.)
추가적으로 웹서버에서 500번대 에러가 난다면, PHP부하 상태도 한번 점검해 보세요.. DB부하는 적은데 PHP 부하가 심하다면, PHP서버를 분리하는것도 고려해볼 필요가 있을것 같네요.