성능 최적화: 간단히 말해서, 시스템 작동의 정확성에 영향을 주지 않으면서 시스템을 더 빠르게 실행하고 특정 기능을 완료하는 데 더 적은 시간이 걸리도록 하는 것입니다
http:하이퍼텍스트 프로토콜
최상위 계층은 애플리케이션 계층, 전송 계층, 네트워크 계층 및 물리 계층입니다.
요청 정보: 요청 라인, 요청 헤더, 빈 라인, 메시지 본문
응답 정보: 상태 줄 및 상태 코드
값 유형의 ToString 메소드 사용:
문자열을 연결할 때 " " 기호는 문자열에 직접 숫자를 추가하는 데 자주 사용됩니다. 이 방법은 간단하고 올바른 결과를 얻을 수 있지만 관련된 데이터 유형이 다르기 때문에 숫자를 문자열에 추가하기 전에 박싱 작업을 통해 참조 유형으로 변환해야 합니다. 그러나 박싱 작업은 성능에 더 큰 영향을 미칩니다. 왜냐하면 이러한 유형의 처리를 수행할 때 새 개체가 관리되는 힙에 할당되고 원래 값이 새로 생성된 개체에 복사되기 때문입니다. 값 유형의 ToString 메서드를 사용하면 박싱 작업을 방지하여 애플리케이션 성능이 향상됩니다.
html 컨트롤을 선택해 보세요.
클라이언트에서 구현할 수 있는 기능을 클라이언트에서 구현(JavaScript에 능숙)하여 서버에 대한 부담을 줄입니다. 데이터 컨트롤 선택 순서: Repeater, DataList, DataGrid.
데이터베이스 연결을 설정한 후 실제로 작업이 필요한 경우에만 연결을 열고 사용 후 즉시 닫아 데이터베이스 연결이 열려 있는 시간을 최소화하고 연결 제한을 초과하지 않도록 하세요.
문자열 연산 성능 최적화
(1) 값 유형의 ToString 메서드를 사용합니다.
문자열을 연결할 때 " " 기호는 문자열에 직접 숫자를 추가하는 데 자주 사용됩니다. 이 방법은 간단하고 올바른 결과를 얻을 수 있지만 다양한 데이터 유형이 포함되므로 숫자를 문자열에 추가하기 전에 박싱 작업을 통해 참조 유형으로 변환해야 합니다. 그러나 박싱 작업은 성능에 더 큰 영향을 미칩니다. 왜냐하면 이러한 유형의 처리를 수행할 때 새 개체가 관리되는 힙에 할당되고 원래 값이 새로 생성된 개체에 복사되기 때문입니다. 값 유형의 ToString 메서드를 사용하면 박싱 작업을 방지하여 애플리케이션 성능이 향상됩니다.
(2) StringBuilder 클래스 사용
String 클래스 객체는 변경할 수 없습니다. String 객체를 재할당하면 본질적으로 String 객체가 다시 생성되고 해당 객체에 새 값을 할당하는 것은 성능을 크게 향상시키지 않습니다. 문자열 작업을 할 때는 .NET 네임스페이스가 System.Text인 StringBuilder 클래스를 사용하는 것이 가장 좋습니다. 이 클래스는 새로운 객체를 생성하지 않고 Append, Remove, Insert 등의 메소드를 통해 문자열에 직접 연산을 수행하고, ToString 메소드를 통해 연산 결과를 반환합니다.
불필요한 서버 왕복을 피하세요
불필요한 왕복 처리를 피하려면 Page.IsPostBack을 사용하세요.
Web Forms 페이지 프레임워크의 시간 및 코드 절약 기능을 활용하고 싶지만 ASP.NET 서버 컨트롤 및 포스트백 이벤트 처리를 사용하는 것이 부적절한 경우가 있습니다. 일반적으로 데이터를 검색하거나 저장할 때 서버 왕복을 시작하기만 하면 됩니다. 대부분의 데이터 작업은 이러한 왕복 중에 클라이언트에서 수행될 수 있습니다.
js 압축
다른 파일이 캐시되지 않도록 페이지에서 js 호출의 경우 일관성을 유지해야 합니다. 페이지의 js를 사용할 수 있는 경우 단위 파일로 작성하고 호출합니다. 사진에 JPEG를 적게 사용하고 gzip을 사용하여 웹 페이지를 압축하여 페이지 표시 속도를 높입니다.
호출하는 js를 최대한 페이지 하단에 작성하고, viewstate도 페이지 하단에 다시 작성하거나, viewstate를 압축할 수 있습니다. 조건은 viewstate를 사용해야 한다는 것입니다.