2009-09-02 5 views
13

Google의 "A well earned retirement for the SOAP Search API"이 SOAP API를 최근에 삭제했다는 발표에 이어 2009 년에 커뮤니티에서 SOAP에 대해 어떻게 생각하는지 궁금합니다. 원격 처리와보다 자세한 클라이언트 - 서버 비 상태 유지 통신에 대한 사용법을 볼 수 있지만 좀 더 일반화 된 [Ajax] 웹 사용량이 이제는 과다합니까?SOAP의 끝이 가까이 있습니까?

SOAP 및 그 종류의 웹 서비스가 필요없는 REST URL을 제거 했습니까?

+0

이 질문에 2 분 후에 투표가 취소 된 이유는 무엇입니까? –

+0

@chris : 주관적인 질문입니다. –

+6

그래서 위키로 만들려면 2 분이 남았습니까? –

답변

13

SOAP이 여기에 있습니다. - 그렇습니다.

기업 환경에서 자체 기술 서비스 (WSDL의 도움으로), 트랜잭션 사용 능력 및 신뢰성있는 메시징과 같은 것들이 무엇보다 중요합니다. 그들은 "오늘의 격찬"이후의 달리기보다 훨씬 중요합니다.

REST는 잘 사용되지만 이 SOAP을 완전히 대체 할 수 없으며, 그렇지 않아도됩니다. REST는 트위터 링 등의 경량 통신에 적합합니다. 그러나 SOAP에 대해 알고 있고 알만한 좋은 이유가 있습니다.

SOAP은 현재 대부분의 환경에서 훨씬 향상된 툴링 지원을 제공합니다. REST가 비슷한 점이 있기까지는 다소 시간이 걸릴 것입니다.

SOAP는 기계 가독 서비스 설명 및 서비스 검색을 허용합니다. REST는 이와 비슷한 것이 아니며 REST 서비스가 문서화 될 수도 있고 아닐 수도 있습니다. REST 서비스를 문서화 한 영어 산문의 품질은 크게 다릅니다.

네, REST가 지금 당장 분노하고 있습니다. 많은 재미있는 시나리오를 훨씬 쉽게 처리 할 수 ​​있습니다. 그러나 "황금 시간대, 엔터프라이즈 급"사용을 위해 준비가되었다고는 생각하지 않습니다. 어쩌면 언젠가는 - 그러나 오늘은 아닙니다.

+7

XML이 갑자기 변했을 때 SOAP이 발명 된 것처럼 보였으므로 사람들은 대다수 상황에서 XML이 필요 없다는 것을 깨달았습니다. REST URL에 ID 또는 몇 가지 인수를 게시 할 수 있습니다. REST는 근본적으로 HTTP가 무엇인가에 관한 것으로서, 거대한 XML의 거대한 덩어리가 아닌 서버에 동사와 일부 인수를 게시합니다. –

+2

@ 크리스 : 나는 둘 다 그들의 위치를 ​​가지고 있다고 생각합니다. 나는 SOAP의 죽음에 대한 소식이 크게 과장되어 있다고 생각합니다. 예. 물론 많은 경우 REST가 정상적으로 작동합니다. 하지만 다른 경우에는 REST보다 SOAP를 선택하게 될 것입니다. 예 : REST에서 보안 (암호화 된) 메시지 전송을 수행하는 방법 ?? SSL을 사용하여 연결하는 것뿐만 아니라 실제 ** 메시지 암호화 **. 꽤 까다 롭습니다 ..... –

+15

그리고 정확히 HTTPS를 사용하는 것과는 반대로 메시지를 암호화하는 요령은 무엇입니까? –

5

SOAP 만 죽으면 오. 일부 회사는 가능한 한 빨리 SOAP 기반 RPC 전략을 추구하고 있음을 확신 할 수 있습니다.

4

이미 말했듯이 REST는 자세한 사례를 처리 할 수 ​​없습니다.

URL 길이 제한을 두지 않고 RESTful 웹 서비스를 통해 임의의 수의 복잡한 인수를 취하는 방법을 알 수 있다면 그 정보를 듣고 싶습니다.

과학적 데이터의 복잡한 쿼리의 경우 위치 매개 변수 또는 키/값 쌍 이외의 것이 필요합니다.

필자의 예측에 따르면 SOAP은 COBOL과 Fortran 언젠가 끝날 때까지 죽지 않을 것이라고 예측했다.

+6

URL에 맞는 매개 변수보다 많은 매개 변수가있는 분산 서비스 끝 점이있는 경우 더 나은 디자인 솔루션이있을 수 있습니다. –

+0

Google지도와 빙지도는 둘 다 URL의 긴 경로에 문제가있어이 문제를 해결하지 못했습니다. –

9

복잡한 요청을 보낼 필요가있을 때 양식 POST 필드를 사용하여 데이터를 PUT 할 수 없다는 REST에는 아무것도 없습니다. 가능한 한 SOAPy로 만들려고한다면 커다란 XML 블록을 게시 할 수도 있습니다.

IMHO SOAP는 처음에는 필요하지 않은 래퍼 만 제공합니다. 나를 위해 그것을 죽인 점은 Axis과 다른 엔진이 WSDL의 스텁을 코드로 컴파일 한 다음 WSDL에 무언가를 추가 할 때마다 모든 것이 이전 버전과 호환되도록 설계된 경우에도 소비자를 손상시킵니다. 영원히 벗어나 라.

+1

SOAP은 단순한 래퍼가 아닙니다 !! 그것은 그 요점을 놓치고! SOAP는 전송에 독립적 인 데이터 컨테이너입니다. 예를 들어, WS-Security와 같은 데이터 요청에 메타 데이터를 첨부 할 수있는 모든 다른 WS- * 표준은 고유 한 장점을 제공합니다. 나머지에는 확장 개념이 없으며 메타 데이터 개념이 없습니다. 나머지는 가벼운 SOAP이며 복잡한 비즈니스 환경에서는 그 특성이 필요합니다. – Jon

+10

"enterprisey"라고 소리 치십시오. 내가 "엔터프라이즈"애플리케이션을 작성하는 것을 본다. 그런 헛소리는 필요 없다. 왜 "WS-Security"가 필요한가요? 단순 HTTP 인증 또는 인증서 기반 인증에 문제가 있습니까? 모든 것이 모든 가능한 문제에 대답해야하는 이유는 무엇입니까? SOAP은 불필요한 부풀림에 불과합니다. REST는 현대의 CORBA에 영원히 묶이지 않고 필요한 모든 것을 할 수 있습니다. 아쉽게도 SMTP를 통해 SOAP을 사용할 수 있습니다. 그게 사인이 아니라면 설계가 끝났습니다. 뭔지 모르겠군요. – ryber

+0

"왜 WS 보안이 필요한가요?"라는 질문을 던지셨습니까? !!!! 왜 우리는 보안이 필요합니까? – Jon

관련 문제