포럼
memcache 사용시 글/댓글 사라짐 문제
2013.01.02 10:15
memcache 사용시에 방금 업데이트된 글이나 댓글이 실제로 나타나지 않는 문제가 있는거 같습니다.
memcache flush 혹은 캐시파일 재생성(관리자메뉴) 를 해주게 되면 나오네요.
짧게는 수분, 길게는 수시간동안도 업데이트가 되지 않는거 같습니다;;
특정 이벤트가 발생하면 업데이트가 되긴하는데,
속도 문제로 memcache 를 끌수도 없고, 켜자니 데이타 동기화에 문제가 있는거 같네요.
예전부터 있던 문제인데 그냥 저냥 그런가보다 하고 써왔는데,
이번데 사이트 재정비를 다시 하고있는데, 짚고 넘어가려고 하다보니,
문제 해결 방법에서 막히네요 ㅜㅜ
경험 있으시거나, 팁 아시는분 계실지요?
workaround 라도....
부탁드립니다~
모두 새해 복 많이 받으시고요~
댓글 13
-
XE러버
2013.01.02 21:41
-
데미갓
2013.01.02 23:18
갈수록 문제가 심각해지는 느낌이라 우선 저도 memcache 사용을 중단했습니다. 예전에는 어쩌다 한두번 꼴이었는데, 엇그제 부터는 글쓰는 족족 사라져버려서요 ㅜㅜ
-
XE러버
2013.01.03 14:08
template 캐시는 문제가 없는데 object 캐시 적용시(memcached,apc를 불문하고)
글이 사라졌다가 나타나는, 즉 밀리는 현상이 나타나네요.
심지어 apc는 설치시에 xe가 오류가 나기도 하네요
-
Haru™
2013.01.03 21:26
훔.. 맴캐시 쓰면서 아직 아무런 문제를 느껴보지 못했습니다. XE 1.5.4 입니다.
-
데미갓
2013.01.04 00:05
우선 이지데브님이 말씀주신대로 멤캐시에서 apc 세팅으로 변경하였으며,
현재 약 1시간가량 보고있는데 문제 발생없었습니다.
다른분들께 테스트 요청했었는데, 한분정도가 문제를 겪은거 같네요. 약 10여분중에..
좀더 지켜봐야겠지만요~ 의견 및 정보 감사드립니다.
-
데미갓
2013.01.04 11:03
아직까지 쾌적한듯하네요.
다른얘기지만,
이후 디스크 아이오부분을 덜기위해 캐쉬쪽을 tmpfs쪽으로 옮기고 있습니다. min cache 만으로도 성능향상이 꽤 크네요. 기타 crop 이미지 파일캐시까지도 tmpfs 까지 두게되면 상당할듯하네요.
물론 서버 메모리가 충분해야합니다. -
XE러버
2013.01.06 13:11
xe google project에 보면 file object cache를 사용하여도 동일 증상이 일어난다는 이슈가
있네요. file,memcached,apc 모두 object_cache시에 동일 증상이 있는 것으로 보아
xe core 문제거나 공통적으로 쓰는 모듈 또는 애드온으로 인한 문제가 아닐까 싶네요
-
XE러버
2013.01.08 00:27
[추가]
저 같은 경우에는 글이 사라지지는 않는데 댓글들이 사라지는군요
혹시나 글이 사라지나 싶어서 테스트 삼아 글을 20개 연속 등록하여도 사라지지 않았고
회원들 중에도 글이 사라졌다는 사람은 아직까지 없네요
사라진 댓글은 해당 글에 새로운 댓글을 하나 더 쓰면 사라졌던 댓글이 살아나면서 보이는군요
-
XE러버
2013.01.08 00:32
[추가2]
file cache 사용중 동일 현상(댓글 입력 및 삭제에 미반응)을 겪는 분의 google project 이슈
http://code.google.com/p/xe-core/issues/detail?id=1952&can=1&q=cache
==============================================
./modules/comment/comment.controller.php의 insertComment와 deleteComment의 캐시콘트롤 부분에
$object_key = 'object:'.$document_srl;
$oCacheHandler->delete($object_key); 를 추가해서 삭제해주면 정상적으로 동작합니다.
=====================================================
라는 내용의 해결방법을 적어두셨었네요
-
데미갓
2013.01.08 00:51
오 좋은 팁이군요. 더불어 댓글 추천시에도 오브젝트 캐시가 리프레쉬 되지 않더군요. 해당부분에도 위 내용을 적용하면 될거같습니다. 정보감사합니다. -
데미갓
2013.01.08 22:52
결국 object cache 는 꺼두었습니다 ㅡㅜ;
코멘트 추가 삭제는 잘되는거 같은데, 글 추천과 댓글 추천은 캐시 구조를 잘 이해하지 못하고서는 수정이 어렵네요;;
http://code.google.com/p/xe-core/wiki/ClassCacheHandler#Properties
위 링크를 봐도 제한적인 수정밖에 되지 못하고 완벽히 이해하지 못해 추천쪽 (updateVotedComment) 부분에서,
캐시 삭제 부분이 잘 동작하도록 수정하는데 실패했습니다.
시스템 성능을 좀 모니터링하면서 두고 봐야할듯 합니다. 물론 memory 쪽에서 데이터를 불러오는것이,
속도, 성능 측면에서 당연히 좋겠지만, 시스템 성능이 충분한 상태에서,
여러 cache layer 를 거쳐야 한다면, 오히려 단일 cache 구조가
더 빠를수도 있겠다는 생각이 들기도 하네요.
object cache 만 꺼두니, 디비 업데이트가 바로바로 되서 속이 다 뻥뚫린 기분이네요 ㅜㅜ;;
그런데 apc 와 memcache, file cache 등 object cache 를 그 외 많은 분들이 쓰고계시리라 생각이되는데,
다른 분들은 모두, 글, 댓글, 글추천, 댓글추천 등의 업데이트에 있어서 캐시가 올바르게 동작하시는건가요?
이부분은 서버 설정의 문제라기 보다, xe 코딩/구조적인 버그로 봐야하지 않나 싶어서요.
사이트 손님이 많아서 캐시 hit ratio가 떨어지고, 캐시 삭제가 빈번히 일어난다면,
이러한 문제점이 덜 노출될수 있겠지만, read 성 work load 가 많은 사이트라면,
이런 문제점이 보다 많이 나올수 있을거 같다는 생각입니다.
지식이 허접하니, 문제 해결을 스스로 해내지 못하는군요 ㅜㅜ;
-
XE러버
2013.01.09 02:04
코멘트 추가/삭제 지연문제는 해결하신건가요?
해결하셨다면 어떻게 수정하신건가요?
아무튼 XE Core 버그가 확실한 듯 합니다.
-
XE러버
2013.01.09 02:06
구글 프로젝트에 종합적으로 올렸습니다
http://code.google.com/p/xe-core/issues/detail?can=2&start=200&num=100&q=&colspec=ID%20Type%20Status%20Priority%20Milestone%20Owner%20Summary&groupby=&sort=&id=2798
저도 이래서 memcached 사용을 중단했습니다;;