문제

현재 일부 PHP 4 코드를 클래식 ASP (Ask Do n't Ask)에 다시 작성하고 있으며 각 쌍을 하드 코딩하는 것보다 큰 맵을 메모리에로드하는 더 좋은 방법이 있는지 해결하려고합니다.

아이디어를 제공하기 위해 PHP에 해시 어레이 정의 (또는 그에 대한)에 약 300 개의 고유 한 키 값 쌍이 있습니다.
나는 ASP에서 다시 한 번 그렇게하고 싶은 유혹이있다 :

<%
dim map
set map = CreateObject("Scripting.Dictionary")
map.add('key','value')
map.add('key2','value2')
...
%>

이 맵이 각 통화마다 메모리에로드되면 더 빠른 다른 방법이 있습니까? 지도가 사용되는 유일한 시간은 인수가 키 중 하나까지 일치하는지 알아내는 것입니다. 그렇다면 값이 꺼내어 반환됩니다.

당신의 도움을 주셔서 감사합니다.

도움이 되었습니까?

해결책

프로젝트를 계속하기 전에 ASP의 응용 프로그램과 세션 객체를 이해해야합니다. 나는 당신이 글로벌 캐시 외부를 유지해야 할 이유가 있다고 가정했습니다 (사용자 선호도에 따라 객체의 내용을 지속적으로 업데이트해야 함).

모두 제일 좋다

다른 팁

클래식 ASP를 사용하는 경우이 개체 중 하나에 의존해야합니다. 데이터베이스 테이블 또는 XML을 사용하면 탐색 할 수있는 다른 옵션이 있습니다.

약 300 개의 항목에 이것을 사용하는 경우 계속해서 전화하지 말 것을 제안합니다.

방금 맵을 한 번 빌드 할 수있는 글로벌 ASP 캐시에 대해 알게되어 캐시에 넣으면 향후 요청이 캐시에서 단순히 가져올 수 있습니다. 캐시는 메모리 내에서 유지되므로 성능이 크게 높아져야합니다.

<%
Application.Contents(object here)
%>

건배

Schar가 말했듯이, 사전 객체를 응용 프로그램 객체에 저장하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top