서버구축 (WEB,DB)363 아파치 ETag 이용한 정적파일 최적화 ETag는 Http1.1 에서 새롭게 등장한 header값인데 브라우져 캐쉬에 저장된 파일과 웹서버의 파일이 일치하는지를 판단하기 위한 방법중에 하나이다. 보통 ETag는 파일을 구분하기 위해 inode 값을 사용하는데 이게 여러대의 웹서버를 운영하는 환경에서는 접근하는 서버에 따라 inode 값이 다르기때문에 ETag 값도 달라기게 된다. 브라우져는 캐쉬된 파일의 갱신여부를 확인하기 위해서 수정일자와 ETag값을 사용하게 되는데 (이중에서 ETag값을 먼저 비교하고 수정일자를 나중에 비교한다.) 위와 같이 여러대의 서버를 사용하는 환경에서는 ETag값이 다르게 인식되어 다른 서버에 접근하게 되면 캐쉬를 지우고 새로 받게 된다. 많은 웹서버를 쓰는 환경에서는 캐쉬효율이 떨어져서 응답 속도가 느려질수 있다.. 2009. 5. 13. 넥슨 사이트의 성능 튜닝 출처 : http://cafe.naver.com/headstudy 안녕하세요~ 이번에 새롭게 튜닝요원으로 활동하게 된 HOONS입니다. 성능에 관한 내용들을 어떤 방식으로 진행해야 보다 재미있고 흥미롭게 다룰 수 있을지 많은 고민을 했습니다. 고민 중에 선택한 방법이 국내의 사이트를 실례로 사이트를 직접 분석해보면 보다 재밌게 내용을 다룰 수 있다는 생각이 들어서 제목을 굉장히 건방지게 잡아 보았습니다.(-_-;) 여기서 국내 사이트를 하나 선정하고 그 사이트에서 성능을 개선할 수 있는 요소들을 찾아볼 것입니다. 그리고 왜 적용해야 하고 어떻게 적용해야 하는지에 대한 내용을 살펴볼 것입니다. 이번에 다루는 내용이 서버단이 아닌 UI 단의 튜닝이기 때문에 서버 단의 언어는 무관합니다. 하지만 필자가 닷넷에.. 2009. 5. 13. MySQL 쿼리 실시간 모니터링 및 저장하기 제 목 : MySQL 쿼리 실시간 모니터링 및 저장하기 작성자 : 좋은진호(truefeel, http://coffeenix.net/ ) 작성일 : 2008.11.24(월) MySQL서버는 log 옵션(my.cnf에서 log=파일명. slow query는 log-slow-queries=파일명)을 통해서 실행된 DB 쿼리를 모두 파일로 저장할 수가 있다. 그러나 DB 서버에서 작은 사이트가 아니고선 엄청난 양의 실시간 쿼리를 모두 쌓는다는 것은 힘들다. DB 운영도중에 잠시동안 쿼리 로그를 쌓겠다고 MySQL 재실행할 수도 없는 노릇이다. MySQL 5.1에서는 재실행없이 로그를 쌓을 것인지 안할 것인지를 결정할 수 있지만, 이부분은 뒤에서 설명하기로 하고, DB 쿼리를 실시간으로 살펴보는 몇가지 방법을 소.. 2009. 4. 29. MySQL 인젝션 공격 방어하는 GreenSQL GreenSQL( http://www.greensql.net/ )은 MySQL에 대한 SQL 인젝션(Injection) 공격을 방어하는 프락시 개념의 어플리케이션이다. 웹페이지를 호출하면 DB쿼리는 먼저 GreenSQL 로 넘어겨지고, 검사한 후 정상적이면 MySQL 서버로 요청하는 과정을 거친다. GreenSQL을 설치하고 실행과정은 이렇다. MySQL 서버는 기존 그대로 실행(디폴트 3306 포트)하고, GreenSQL을 3305포트로 실행(127.0.0.1:3305)한다. 이 때 GreenSQL은 MySQL 서버로 커넥션이 이뤄진다. 웹페이지는 DB커넥션을 GreenSQL의 3305포트로 커넥션하도록 변경해주면 된다. (MySQL을 3305로, GreenSQL을 3306으로 실행할 수도 있을 것이다.. 2009. 4. 28. MySQL 사용 중 발생할 수 있는 대기 현상 장애의 원인과 대처 다음의 경우는 필자가 몇 년 동안 MySQL을 운영하면서 겪었던 장애 현상 중 대기 현상을 유발해 장애를 발생시키는 원인들을 정리한 것이다. - DDL 작업 진행 시 - Table Flush 진행 시 - mysqldump를 이용해 백업이 진행되는 경우 - Table Lock을 사용하는 경우 - Serializable Isolation Level을 사용하는 경우 위의 다섯 가지 경우를 하나씩 살펴보자. 참고로 테스트에 사용된 MySQL 버전은 MySQL Community 버전 5.0.67로, MyISAM과 InnoDB를 대부분 사용했기 때문에 여기 나온 내용은 그 사항에 특화된 것임을 밝힌다. DDL 작업 진행 시 사실 MySQL을 오랫동안 운영해본 사람이라면 MySQL에서의 DDL 작업이 쉬운 작업이 아.. 2009. 4. 23. 이전 1 ··· 58 59 60 61 62 63 64 ··· 73 다음 728x90