2009-10-19 1 views
7

질문이 있습니다. WCF에서 제공하는 일련의 서비스를 제공하고 싶습니다. 서비스를 사용하는 클라이언트도 .NET with WCF입니다. 빠른 액세스, 빠른 응답, 작은 데이터 계약 (기본 .net 기본 데이터 형식) 전송 매체를 갖고 싶습니다. 배포판은 인터넷을 통해 제공 될 예정이며 안정성, 가용성 및 기본 보안을 찾고 있습니다.인터넷을 통해 WCF NetTCP 바인딩

내 유일한 클라이언트가 .net을 기반으로하기 때문에 WsHttp를 사용하고 싶지 않으며 서비스를 요청하는 클라이언트가 거의 150 개가됩니다.

제본 용으로 어떤 것을 사용 하시겠습니까? 어떤 단점, 위험 등이 있습니까?

미리 감사드립니다.

답변

0

시나리오에 따르면 NetTcpBinding은 원하는 바인딩입니다. 클라이언트가 WCF가 될 것이라 확신하므로 상호 운용성이 필요 없습니다.

보십시오 here in Programing WCF Services book.

방화벽에 대한 유일한 확신이 없습니다. 논문의 트로피를 얻어야한다면 WS 바인딩이 더 적절할 수 있습니다.

+0

귀하의 답변에 Philippe에게 감사드립니다. 나는 상호 운용성을 갖지 않을 것이다. 어떻게 이런 일이 발생하면 여러 바인딩이 서비스를 구성 할 수 있을까? 지금까지는 .net Windows 양식 앱에 의해서만 소비 될 예정이며, 채널은 인터넷이 될 것입니다. 우리는 방화벽을 가지고 있지만 Telco 사용자는 특정 IP에서 액세스 할 포트를 구성 할 수 있습니다. 지사에는 전용 인터넷 연결이 있으므로 보안은 주요 관심사가 아닙니다. 그 책을 살펴 보겠습니다. –

6

여기 쥬발 로이하여 바인딩을 선택하는 방법에 대한 좋은 기사가있다 :

http://www.code-magazine.com/article.aspx?quickid=0605051&page=3

일반적으로 조언을 인터넷을 통해 바인딩 순 TCP를 사용하지 않는 것입니다. 그것을하는 사람은 들어 보지 못했습니다. 포트가 항상 열려 있고 아무도 통화를 차단하지 않으면 작동 할 수 있습니다.

nettcp로 테스트하십시오. 작동하지 않는 경우 구성을 변경해야합니다.

가장 중요한 것은 보안 요구 사항을 고려하는 것입니다. 당신은 단지 가리킨 다음 SSL을 통해 basichttp 지점을해야합니까. end-to-end가 필요하고 메시지 암호화가있는 wshttp가 필요합니다.

+0

Thanks Shiraz 지금까지는 .net Windows 양식 앱에서만 사용할 예정이며 채널은 인터넷입니다. 우리는 방화벽을 가지고 있지만 Telco 사용자는 특정 IP에서 액세스 할 포트를 구성 할 수 있습니다. 지사는 전용 인터넷 연결을 가지고 있으므로 보안이 주요 관심사는 아닙니다. –

+0

IP 주소가 쉽게 스푸핑 될 수 있으며 이는 매우 취약합니다. 중간 공격에 남자. 데이터가 중요한 경우 인터넷을 통해 암호화하십시오. 전용 회선이없는이 문제점에 대한 저렴하고 간단한 솔루션은 VPN을 사용하는 것입니다. –

8

간략한 유형과 작은 데이터 계약을 사용하려는 경우 사용하는 바인딩은 인터넷을 통해 도입 된 대기 시간과 거의 무관합니다. 따라서 올바른 대답은 이며 가장 관리하기 쉬운 것이고 가장 안전한 것은입니다.

IIS에서 응용 프로그램을 호스팅하고 wsHttpBinding을 사용하고 함께 관리되는 모든 관리 효율성을 고려하는 것이 좋습니다. 상호 운용성도 생겨나 고 오늘은 관련성이 없지만 무료입니다. 왜 그렇지 않습니까?

그리고 서비스의 세부 수준을 고려하십시오. 당신은 당신의 고객을 더 잘 압니다. 그러나 활짝 열려있는 인터넷에서, 일이 일어납니다. 인터넷을 통한 왕복 시간은 가변적이며 제어가 불가능하기 때문에 밀리 초 또는 초가 걸릴 수도 있고 전혀 도달하지 못할 수도 있습니다. 가능한 한 더 많은 페이로드를 가진 여행을 줄이고 모든 종류의 캐싱 및 비동기 작업을 사용하여 앱을 "빠르게"보이게해야합니다.