2010-01-02 4 views
0

현재 API를 개발 중입니다. 한 가지 사실은 클라이언트가 확인을 위해 sig와 함께 요청을 보내는 gateway.cfm 페이지가 하나 있고 게이트웨이가 요청을 처리하고 요청을 호출하여 결과를 다시 보냅니다. 필요한 구성 요소.API 개발, 하나의 게이트웨이 페이지?

예를 들어 gateway.cfm? component = getBooks & sig = 232345343은 getbooks 구성 요소를 호출하고 JSON을 반환합니다.

보안 문제를 무시하면 모든 요청이 한 페이지로 이동하기 때문에이 API는 성능과 성능에 문제가 있습니까? 또는 웹 서버가 모든 요청이 동일한 페이지로 이동하는지 여부는 중요하지 않습니다.

또한 SSL로 보안 설정됩니다.

+0

@skaffman : .cfm을 사용하면 콜드 퓨전을 의미하므로이 질문에 대한 대답은 구현마다 매우 다를 수 있습니다. – bmargulies

답변

0

모든 요청이 한 페이지 또는 다른 페이지로 이동하는 경우 서버와 관련이 없습니다. 적어도 일반적인 웹 서버 (예 : Apache/IIS)에는 적합하지 않습니다.

웹 서버에 스레드 풀이 있고, 각 요청에 스레드가 할당되고 각 스레드가 작업을 수행하고 완료됩니다. 그러나 하나의 세부 사항이 있습니다. 하위 레벨에서 요청을 처리하는 스레드는 모두 동일한 바이너리/텍스트를 읽습니다 (cfm이 컴파일/해석되는지 여부는 알 수 없음). 따라서 매우 짧은 시간 동안 파일이 읽기 용으로 잠길 수 있습니다. 요청 수가 많으면 벌금이 부과 될 수 있습니다. 벤치마킹과 테스트를 통해 이것이 실제로 성능 병목 현상인지 알 수 있습니다.

하지만 SSL 핸드 셰이크를 수행하면 성능이 읽기 잠금으로 훨씬 빨라질 것이라고 생각합니다.

+0

ColdFusion에는 대기열이 있기 전에 최대 페이지 요청을 늘릴 수있는 설정이 있습니다. SSL 핸드 셰이크에 관해서는, 신용 카드 세부 사항/사용자 등록을 보내야 할 때만 https에 액세스하려고 생각했습니다. –