그림자밟기

캐쉬 적용 타임에 대해서 시간분배는 어떻게들 이용하시는지 궁금합니다~!

최신글이나 댓글, 전체글 등의 부분을 DB 캐쉬를 적용하여 사용하고 있습니다만,

생각해보니 캐쉬타임을 같게 주면 캐쉬가 생성되는 시점이 거의 동일하게 되어

부하가 있는 부분들이 동시에 캐쉬 생성을 하게 되면 여전히 부하가 걸리겠더라구요.


그래서 캐쉬 타임을 다르게 주고 사용을 하는데

초당으로 계산을 할 때

예를 들자면 3초, 7초, 13초 처럼

소수를 이용해서 캐쉬 타임을 주고자 합니다.


이렇게 하면 캐쉬타임이 겹쳐지는 시간이(캐쉬타임의 최소공배수?) 짝수초 보다는 훨씬 적어질 것 같네요.

영향은 미미하겠지만 캐쉬타임도 이런식으로 주는게 좋지 않을까요? 해서 한 번 글을 적어봅니다.
|

댓글 7개

별 효과 없을 거 같은데요.

현재 캐쉬라는 것이
한 사용자에게 딜레이를 줘서 (디비를 불러오고)
대신 다른 사용자가 그 정보를 재 사용해서 빠르게 로딩이 되는건데

디비 불러오는데 긴 시간이 걸리는 것도 아닐 뿐더러
3, 7, 13초로 세팅해 두어도 사용자가 20초후에 접속한다면 셋다 로딩이 걸리므로 그게 그겁니다.
즉 초대형 사이트가 아닌 이상 현재를 유지하는게 나을 것 같습니다.
답변이 많이 늦었습니다.
3,7,13초야 예시에 불과했던 시간입니다. 그리고 사용자가 20초 정도에 한 번 접속하는
사이트 같은 경우 굳이 캐쉬가 필요할까? 라는 생각이 듭니다.
컨텐츠가 많은 경우에야 접속자가 적어도 캐쉬를 쓰는게 좋겠지만
그렇지 않은 경우에는 캐쉬가 없어도 문제없지 싶네요.

대형사이트가 아니라도 동접수가 늘 10~20명인 경우 필요한 부분이라고 생각이 듭니다.
사용자가 캐쉬파일을 생성하면 생성하는 도중에 뻗습니다.
만료된 파일은 새로 생성하는 도중에 다른 사용자가 접속하면 또 요청을 하게 됨으로 계속 반복됨에 따라 뻗죠.
따라서 기간은 넉넉히 잡고 수분에서 수십분 사이로 크론이 돌면서 덮으면 됩니다.
그건 말이 안되죠.

보통 slow-query 가 2초인데 그 2초동안 A, B가 경쟁해서 로딩에 들어간다면
결과물이 파일로(디비로) 저장되어질 때 둘중에 하나가 0.001초라도 먼저 끝날겁니다.
A가 먼저 끝났다고 가정하면 A캐쉬가 저장되고 B캐쉬가 덮어쓰기 합니다.

이렇듯 사용자가 캐쉬파일을 생성하는 도중에 새로운 사용자가 들어와서 캐쉬를 생성하려하면 둘이 동시에 생성이 되는것이죠. (캐쉬파일은 순차적 덮어쓰기)

즉 최악에 상황은 캐쉬를 안하는 것과 같은 효과가 나는 것이지 뻗지 않아요.
확실히 대형사이트에서 딜레이가 긴 부분은 캐쉬르 생성하다가
사이트가 뻗는 현상이 난 적이 있습니다.
크론으로 돌리는게 좋겠지만, 호스팅을 받는 입장에선 크론을 사용할 수가 없으니
차선책을 찾아봐야겠지요. ^^
전 게시물 쓰기가 완료되면 해당 그룹 메인페이지를 캐쉬로 저장합니다.
진서기님 말을 보고 새로 작업을 했습니다.
확실히 메인페이지에서 캐쉬생성을 하는 것 보다 그게 편하더군요.
몇가지 게시물은 그냥 생성타임을 주고 캐쉬를 생성하고
나머지 부분에서는
1. 게시물 쓰기 -> 캐쉬생성
2. 코멘트 쓰기 -> 최근게시물에 들어가는 부분일 경우 캐쉬생성(코멘트 갯수가 변하므로)
3. 게시물 삭제 -> 캐쉬생성
이런식으로 작업을 했습니다.
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

태그 필터 (최대 3개) 전체 개발자 소스 기타 mysql 팁자료실 javascript php linux flash 정규표현식 jquery node.js mobile 웹서버 os 프로그램 강좌 썸네일 이미지관련 도로명주소 그누보드5 기획자 견적서 계약서 기획서 마케팅 제안서 seo 통계 서식 통계자료 퍼블리셔 html css 반응형 웹접근성 퍼블리싱 표준화 반응형웹 홈페이지기초 부트스트랩 angularjs 포럼 스크린리더 센스리더 개발자톡 개발자팁 퍼블리셔톡 퍼블리셔팁 기획자톡 기획자팁 프로그램강좌 퍼블리싱강좌
+
제목 글쓴이 날짜 조회
14년 전 조회 4,373
14년 전 조회 2,743
14년 전 조회 1,065
14년 전 조회 748
14년 전 조회 1,379
14년 전 조회 1,661
14년 전 조회 1,429
14년 전 조회 857
14년 전 조회 1,848
14년 전 조회 3,162
14년 전 조회 1,316
15년 전 조회 1,237
15년 전 조회 1,061
15년 전 조회 881
15년 전 조회 722
15년 전 조회 795
15년 전 조회 1,962
15년 전 조회 1,041
15년 전 조회 1,396
15년 전 조회 3,570
15년 전 조회 1,300
15년 전 조회 1,446
15년 전 조회 1,164
15년 전 조회 1,162
15년 전 조회 1,745
15년 전 조회 1,517
15년 전 조회 1,065
15년 전 조회 1,425
15년 전 조회 1,408
15년 전 조회 1,581
15년 전 조회 1,412
15년 전 조회 1,205
15년 전 조회 1,788
15년 전 조회 1,049
15년 전 조회 1,011
15년 전 조회 988
15년 전 조회 1,152
15년 전 조회 1,445
15년 전 조회 1,223
15년 전 조회 1,526
15년 전 조회 1,415
15년 전 조회 3,948
15년 전 조회 1,662
15년 전 조회 1,205
15년 전 조회 1,283
15년 전 조회 3,982
15년 전 조회 1,859
15년 전 조회 1,012
15년 전 조회 1,428
15년 전 조회 915
15년 전 조회 1,498
15년 전 조회 1,166
15년 전 조회 2,942
15년 전 조회 817
15년 전 조회 1,162
15년 전 조회 2,973
15년 전 조회 999
15년 전 조회 1,038
15년 전 조회 1,271
15년 전 조회 1,284
15년 전 조회 951
15년 전 조회 2,465
15년 전 조회 1,008
15년 전 조회 1,404
15년 전 조회 515
15년 전 조회 1,263
15년 전 조회 1,230
15년 전 조회 1,309
15년 전 조회 3,091
15년 전 조회 755
15년 전 조회 1,018
15년 전 조회 1,071
15년 전 조회 1,595
15년 전 조회 1,519
15년 전 조회 2,526
15년 전 조회 1,938
15년 전 조회 1,485
15년 전 조회 1,694
15년 전 조회 3,283
15년 전 조회 1,926
15년 전 조회 1,420
15년 전 조회 1,507
15년 전 조회 1,222
15년 전 조회 1,092
15년 전 조회 1,051
15년 전 조회 1,431
15년 전 조회 1,007
15년 전 조회 1,401
15년 전 조회 1,110
15년 전 조회 955
15년 전 조회 1,208
15년 전 조회 1,332
15년 전 조회 1,064
15년 전 조회 1,575
15년 전 조회 1,279
15년 전 조회 1,607
15년 전 조회 1,306
15년 전 조회 1,207
15년 전 조회 1,292
15년 전 조회 3,764