권장 : ASP 프로그램은 MySQL 데이터베이스에 직접 연결됩니다 온라인에서 많은 정보를 찾고, 끊임없는 노력 후에 테스트는 마침내 성공했습니다. 서버에 MySQL ODBC 3.51을 설치하고 데이터베이스 사용자 이름 및 비밀번호를 설치하고자합니다. 다음 비밀번호 만 사용합니다.
웹 페이지 디자인에 ASP 프로그램을 사용하는 경우 대부분 데이터베이스에 액세스 한 다음 데이터를 페이지에 표시해야하기 때문입니다. 데이터가 많으면 페이지의 액세스 속도가 느려집니다. 이 문제를 해결하려면 다음 기술을 사용하여 페이지의 액세스 속도를 향상시킬 수 있습니다.
팁 중 하나 : 요청 컬렉션 사용 효율성 향상
값을 추출하기 위해 ASP 컬렉션에 액세스하는 것은 시간이 많이 걸리고 자원 소비 프로세스입니다. 이 작업에는 관련 세트에 대한 일련의 검색이 포함되어 있으므로 로컬 변수에 액세스하는 것보다 훨씬 느립니다. 따라서 페이지에서 요청 수집의 값을 여러 번 사용하려는 경우 로컬 변수로 저장하는 것을 고려해야합니다.
예를 들어, 스크립트 엔진 처리 속도를 높이기 위해 코드를 다음 형식으로 작성하십시오.
| 다음은 인용 된 내용입니다. strtitle = request.form (제목) strfirstname = request.form (FirstName) strlastname = request.form (lastname) Len (strtitle)이면 strtitle = strtitle & strfirstname =이면 strfullname = strtitle & & strlastname입니다 elseif len (strfirstname) = 1 그런 다음 strullname = strtitle & strfirstname &. & strlastname 또 다른 strfullname = strtitle & strfirstname & & strlastname 끝 If |
팁 2 : 적절한 컬렉션에 직접 액세스하십시오
그렇지 않은 경우, strpage = request (page)를 사용하여 매개 변수를 얻지 마십시오. 이는 첫 번째 일치하는 값 이름이 발견 될 때까지 모든 컬렉션 (querystring, form, cookies, clientcertificate, servervarible)을 순서대로 검색하기 때문입니다. 이것은 적절한 세트에 직접 액세스하는 것보다 효율적이지 않으며이 값이 다른 세트에 나타나지 않을 것이라고 절대 보장하지 않는 한 안전하지 않습니다.
예를 들어, 클라이언트의 요청을 충족시키는 웹 서버 이름을 검색하는 것이 바람직 할 수 있으며, 이는 각 쿼리에 나타나는 regvervarables 컬렉션에서 Server_Name을 찾아 달성합니다. 그러나 다른 세트에 Server_name이라는 값 (키 이름이 경우에 민감하지 않음)이 포함 된 경우 요청 (server_name)을 사용할 때 잘못된 결과가 얻어집니다. 요컨대, 적절한 컬렉션은 가능한 한 직접 액세스해야합니다.
팁 3 : 응답을 사용하십시오
response를 사용하여 isclientConnected는 사용자가 여전히 서버에 연결되어 있고 ASP에서 생성 된 웹 페이지를로드하는지 여부를 관찰하는 유용한 방법입니다. 사용자가 다운로드를 분리하거나 중지하면 버퍼 컨텐츠가 IIS에 의해 폐기되므로 더 이상 서버의 리소스를 낭비 할 필요가 없습니다. 따라서 더 많은 리소스를 계산하거나 사용하는 데 많은 시간이 필요한 웹 페이지의 경우 각 단계에서 방문자가 오프라인 상태인지 확인하는 것이 좋습니다.
| 다음은 인용 된 내용입니다. ... 페이지의 첫 번째 부분을 만들기위한 코드 response.isclientConnected 응답. 플러시 또 다른 응답. 엔드 끝 If ... 다음 페이지의 다음 부분을 생성하는 코드 |
팁 4 : ASP에서 ADO 작업을 최적화합니다
일반적으로 데이터는 웹 사이트의 실제 내용을 구성합니다. 따라서 ASP 코드 실행 속도를 높이기 위해 ADO 작업을 최적화하는 것이 매우 유용합니다.
에이. 원하는 열만 선택하십시오. ADO 레코드 세트를 열 때 테이블 이름 (즉, 선택 *)은 모든 열이 필요하지 않은 한 자동으로 사용해서는 안됩니다. 별도의 열을 사용한다는 것은 서버로 전송되거나 가져온 데이터의 양이 줄어드는 것을 의미합니다. 모든 열을 사용해야하더라도 서버가 더 이상 해당 열의 이름을 해석 할 필요가 없기 때문에 각 열을 개별적으로 명명하면 최상의 성능을 얻을 수 있습니다.
비. 저장 절차를 가능한 한 많이 사용하십시오. 저장된 절차는 준비된 실행 계획을 포함하는 사전 컴파일 된 프로그램이므로 SQL 문보다 빠르게 실행됩니다.
기음. 적절한 커서 및 잠금 모드를 사용하십시오. 모든 작업이 완료된 경우 레코드 세트에서 데이터를 읽고 화면에 표시하는 것이면 기본 전달 전용 읽기 전용 레코드 세트가 사용됩니다. ADO가 레코드 및 잠금의 세부 사항을 유지하는 데 사용하는 작업이 적을수록 실행 성능이 높아집니다.
디. 객체 변수를 사용하십시오. 레코드 세트를 가로 질러 성능을 향상시키는 확실한 방법은 객체 변수를 사용하여 세트의 멤버를 가리키는 것입니다. 예를 들어:
| 다음은 인용 된 내용입니다. rsgc.eof는 아닙니다 응답. 프로젝트 이름 : & RSGC (GCMC) & (프로젝트 코드 : & RSGC (GCCODE) &) rsgc.movenext 향하게 하다 다시 작성하여 다음과 같이 사용하여 실행 속도를 높일 수 있습니다. GCMC 설정 설정 = RSGC (GCMC) GCCODE 설정 = RSGC (GCCODE) RSGC.EOF 응답이 아닌 동안 프로젝트 이름 : & gcmc & (프로젝트 코드 : & gccode &) rsgc.movenext 향하게 하다 |
새 코드는 객체 변수에 대한 참조를 생성하므로 실제 변수 대신 객체 변수를 사용할 수 있습니다. 즉, 세트의 인덱스 수가 줄어들므로 스크립트 엔진이 덜 작동합니다.
팁 5 : 스크립트 엔진을 혼합하지 마십시오
ASP 페이지에서 vbscript와 jscript를 모두 사용할 수 있다는 것을 알고 있습니다. 그러나 같은 페이지에서 jscript와 vbscript를 모두 사용하는 것이 좋지 않습니다. 서버가 인스턴스화하고 두 개의 스크립트 엔진을 캐시해야하므로 시스템 부담이 어느 정도 추가됩니다. 따라서 성능의 관점에서 동일한 페이지에서 여러 스크립팅 엔진을 혼합해서는 안됩니다.
당신은 그것을 시도 할 수 있습니다. 위의 방법은 ASP 페이지의 개방 속도를 효과적으로 향상시킬 수 있습니다.
공유 : Grapshot 구성 요소로 ASP 스크립트 카운터를 만듭니다 이 프로그램은 카운터 수를 액세스 데이터베이스에 배치하고 원하는 다른 ODBC 데이터 소스를 사용할 수도 있습니다. 이 프로그램은 URL의 수 정보를 읽습니다. IMG SRC = ID = MYTEST & SEQ = DEFAULT & CELLS = 7