programing

asp.net 웹 방식과 wcf 서비스의 차이점은 무엇입니까?

closeapi 2023. 9. 28. 08:24
반응형

asp.net 웹 방식과 wcf 서비스의 차이점은 무엇입니까?

처음입니다.그물을 치고 그 차이를 이해하지 못합니다.누가 제게 올바른 방향을 가르쳐 주실 수 있나요?

ASP.NET 웹 서비스는 HTTP를 통한 SOAP(Simple Object Access Protocol)를 사용하여 메시지를 주고 받는 응용 프로그램을 구축하기 위해 개발되었습니다.

WCF는 활성화를 위한 것입니다.다른 소프트웨어 엔티티와 메시지를 교환하는 NET Framework 응용 프로그램.SOAP는 기본적으로 사용되지만 메시지는 어떤 형식이든 사용할 수 있으며 전송 프로토콜을 사용하여 전달됩니다.

ASP를 볼 수 있습니다.WCF 서비스의 하위 집합으로서 NET 웹 서비스.

여기 두 프레임워크를 비교한 링크가 있습니다.

차이점을 아는 것은 꽤 쉽습니다.

ASP.NET Web Method를 ASMX라고 합니다. [파일 확장자 때문에] (이것에 대해 4GuysFromRolla를 확인해보세요. 좋은 튜토리얼이 있습니다.)

이 기술은 웹 서비스로서의 기능을 노출시켜 어디서나 연결하여 사용할 수 있게 해줍니다.그렇지만.....서버와 클라이언트 간의 데이터를 보호할 없고, 대용량 파일을 전송할 수 있으며, 무슨 일이 일어났는지 등을 알 수 있습니다.

[주] 인증서를 사용하여 웹 서비스에 대한 접근을 보호할 수 있지만 복잡하지만 ASMX에서는 사용자 이름 / 비밀번호를 사용합니다.

WCF에서, 당신은 웹 서비스에 관해 다른 세계에 있고, 이것은 최고의 기술입니다.서비스를 노출하는 NET(차이를 알 수 있습니까?)웹 서비스가 아닌 서비스), WCF는 IIS를 실행할 필요가 없으며 서버에서 콘솔 앰비언트(명령줄 등)를 사용하여 시스템 서비스로 실행할 수 있으므로 WCF는 웹 서비스가 아닌 서비스라고 할 수 있습니다.ASMX가 실행하려면 IIS가 필요합니다.

WCF에서는 SSL을 사용하여 통신을 암호화할 수 있습니다(ASMX에서는 WSE - Web Services Enhancements를 사용해야 함). 대용량 파일을 안전하게 보낼 수 있습니다(ASMX에서는 MTOM - Message Transmission Optimization Mechanism을 사용해야 함).

한줄의 코드만 바꿔도 전송 기본 설정을 할 수 있고 보안이 훨씬 높아집니다 :)

이것으로 더 나은 개괄적인 개요를 얻으시길 바라지만, 더 많은 것이 있습니다.

결론: 보호할 필요가 없는 웹 서비스를 노출하려면 ASMX를 사용하면 됩니다. 문제가 없습니다. 그러나 통신을 어떻게 보호해야 한다면 WCF에서 수행하십시오!

링크: 여기에서 두 서비스 간의 성능 비교를 읽을있습니다.

그것들은 글쓰기 서비스를 위한 두 가지 다른 프레임워크입니다.WCF는 일반적으로 보다 유연하며 사용되는 프로토콜, 서비스 호스팅 방법 및 다양한 보안 옵션에 대해 구성 가능한 옵션을 제공합니다.ASMX는 SOAP 기반 서비스를 제공합니다.일반적으로 WCF도 더 성능이 뛰어납니다.일반적으로 ASMX는 사용이 더 쉽고 일반적으로 학습 곡선이 적습니다.

다음은 이 주제에 대한 MSDN 포럼 토론입니다.ASMXWCF의 시작 페이지입니다.

WCF는 위의 응답 외에 대체할 수 있도록 만들어졌습니다.NET 원격 설치.NET 3.0 이상.다양한 형식(예: XML 및 JSON)의 SOAP, REST, POX 등의 웹 서비스 외에도 WCF는 MSMQ 및 Named Pipes를 제공합니다.ASMX는 전술한 바와 같이 SOAP 기반 XML 웹 서비스만을 제공합니다.

당신은 자세히 조사해야 할 것입니다.다른 유형의 통신 프로토콜을 위한 NET 원격.자세한 내용은 Pro C# 2008과 를 확인해 보시기 바랍니다.NET 3.5 프레임워크.좋은 자료이고, 이전 책에서 다룬 장들을 얻을 수 있습니다.NET Remote 및 기타 대체 기능.

여기에 새로운 큰 차이점이 있습니다.마이크로소프트는 이제 ASMX 웹 서비스를 "레거시(legacy)" 기술로 간주합니다."ASP를 사용하여 작성된 XML서비스"를 참조하십시오.NETXML서비스 클라이언트".

웹 서비스

  1. HTTP를 통해서만 액세스할 수 있습니다.
  2. 상태 비저장 환경에서 작동합니다.

WCF

WCF는 다양한 유형의 응용 프로그램에서 서비스를 호스팅할 수 있기 때문에 유연합니다.다음은 WCF 서비스를 호스팅하는 몇 가지 일반적인 시나리오를 나열합니다.

  • IIS
  • 이었다
  • 셀프호스팅
  • 관리되는 Windows 서비스

그것들은 모두 함께 다른 두 가지입니다.WCF는 하나의 서비스 유형 구성 요소를 작성하고 다양한 방식으로 배포할 수 있는 보다 일반적인 프레임워크입니다(Asp로도 가능).넷 웹 서비스).

다음은 이 http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/2d6a7ff2-f15c-4599-a389-a81cfffcc852/ 에 대한 간단한 스레드입니다.

저도 같은 문제가 있었습니다.

Microsoft Windows Communication Foundation의 Step by Step이라는 책이 정말 좋다는 것을 알았습니다.

WCF를 사용하여 기존의 웹 서비스를 수행하고자 한다면, 이 책의 1장에서 이를 수행하는 방법에 대해 정확하게 설명합니다(쓰기 서비스, 테스트, 배포, 서비스 사용).

VS2005용으로 작성되어 있지만, VS2008을 사용하고 있는데 훨씬 더 쉬워졌습니다.

WCF에는 더 많은 것이 있지만, 그 책은 좋은 출발입니다.

웹 서비스와 WCF의 주요 차이점은 다음과 같습니다.

웹 서비스 : 웹 서비스는 인터넷을 통해 다른 응용 프로그램과 직접적으로 상호 작용하도록 설계된 응용 프로그램입니다.

1) [WebService] 및 [WebMethod] 속성은 웹 서비스 및 메소드를 정의합니다.
2) HTTP를 통해서만 액세스할 수 있습니다.
3) IIS에서 호스트됨.
4) 보안 서비스를 지원합니다.
5) 다중 스레드를 사용할 수 없습니다.
6) 사용된 Soap 또는 XML만 사용됩니다.
7) 시스템.Xml.serialization 이름 공간이 serialization에 사용됩니다.

WCF:Windows Communication Foundation(코드명 인디고)은 네트워크 분산 서비스를 구축, 구성 및 배포하기 위한 프로그래밍 플랫폼 및 런타임 시스템입니다.

1) [ServiceContract] 및 [OperationContract] 속성은 웹 서비스 및 방법을 정의합니다.
2) HTTP, TCP, MSMQ, P2P, 명명된 파이프를 통해 액세스
3) IIS, 자체 호스팅, WAS 및 Windows 서비스에서 호스팅됩니다.
4) 서비스 동작 클래스를 통해 다중 스레드화할 수 있습니다.
5) 시스템.런타임.직렬화 네임스페이스가 직렬화에 사용됩니다.
6) BasicHttpBinding, WSHttpBinding 등 다양한 종류의 바인딩을 지원합니다.WSDualHttp 바인딩 등.
7) 보안 서비스, 안정적인 메시징, 트랜잭션, AJAX 및 REST 지원

언급URL : https://stackoverflow.com/questions/216931/what-is-the-difference-between-an-asp-net-web-method-and-a-wcf-service

반응형