Asp 성능향상 팁
Asp 성능향상 팁 1. Option Explicit를 명시한다. 2. 배열사용 시 배열 재할당은 최대한 피한다. 3. 배열 사용이 빈번할 시 Dictionary 객체를 이용하여 가독성을 높인다. 4. Stored Procedure를 사용한다. (일반 ASP자체 쿼리보다 최고 30% 성능 향상.) 5. 뷰테이블 사용 시 뷰테이블 자체에서 정렬을 해야 한다. 이미 만들어진 뷰테이블을 이용하여 Asp 코드에서 정렬하면 속도가 크게 떨어진다. 6. Query를 사용할 때 꼭 필요한 컬럼만 명시하여 불러오거나 이용해야 한다. 7. Recordset 객체 보다는 Command 객체를 이용하는 것이 빠르다. 8. Recordset 객체 사용시 CursorLocation를 적절한 것을 사용해야 한다. (1, 서버, 3. 클라이언트) 속도의 차이가 클 수 있다. CursorType도 영향을 미친다. 반드시 테스트 필요. 9. 1000글자가 넘어가는 문장의 경우는 변수에 담아서 한번에 Response.Write 하는 것보다는 한줄한줄 직접 뿌려주는 것이 빠르다. <%= %>를 이용해 직접 뿌리는 것이 가장 빠르다. 10. 사용한 객체는 반드시 Close, Nothing 해준다. 11. 다중레코드를 이용할 시에는 Do until, Rs.MoveNext 구문보다는 GetRows() 함수를 이용하는 것이 빠르다.(Stored Procedure와 함께 사용시 최고 40% 성능 향상, 단독으로 사용시 최고 20% 성능 향상.) 12. 사용자 Function을 만들어 쓰는 것이 디버깅 등에 좋다. 13. ADODB 객체 사용보다 OBJECT 객체를 사용하여 컨넥션, 레코드셋을 연다. 잘못알려진 내용들 1. Inlcude를 많이 시키면 속도가 느려진다고 일반적으로 알려져 있지만 실제로는 속도차이가 전혀 없다. 2. 긴문장이나 Html과 Asp 태그를 혼합해서 많이 쓰면 느려진다고 알려져 있으나 실제로는 차이가 없거나 혼합해서 쓰는 것이 오히려 빨랐다. 3. 뷰테이블에 아무리 많은 테이블, 컬럼들을 Join 해도 단일 테이들의 같은 수의 컬럼을 사용하는 속도와 동일하다.
머 이미 다 알고 계실지 모르지만 책들보고 의문나는 것들을 직접 튜닝및 실행시간 테스트를 하며 정리한 것입니다. 많은 분들이 도움이 되었으면 좋겠네요^^ 테스트, 튜닝을 해보면서 느낀건데, 우리 주위에는 너무 잘못알려진 것들이 많습니다. 아무리 유명한 책이라도 맹신하지 말고 직접 테스트 해보는 습관을 기릅시다^^ 저도 이것들 테스트하면서 그동안 알던 것들과 너무 틀린 것이 많아 놀랐다는 ~.~ 위에 것만 잘 활용하셔도 어디 가서 사이트 느리다거나 서버 잘죽는다는 소리는 안들으실겁니다^^ ========================================= 출처 : 데브피아 ASP 강좌 게시판 |