RPC at Web Service
RPC vs Web Service
Ang paglikha ng mga serbisyo sa web gamit ang SOAP protocol ay nangangailangan ng alinman sa dalawang alternatibo na dapat gamitin. Maaaring sundin ng isa ang protocol ng SOAP ng Dokumento o ang protocol ng messaging ng RPC SOAP. Ang RPC ay tumutukoy sa Remote Procedure Call at ito ay isang protocol na maaaring magamit ng isang programa upang humiling ng isang serbisyo sa isa pang programa na matatagpuan sa loob ng isa pang remote computer. Kapag gumagamit ng RPC, hindi na kailangang malaman ang mga detalye ng network ng programa. Ang isang binigay na pamamaraan ng pagtawag ay tinukoy bilang isang sub routine na tawag o kahit isang function call.
Sa paggamit ng RPC, may mabigat na paggamit ng modelo ng client / server. Ang programa na humihiling para sa isang serbisyo na gumanap ay sa client side at ang computer na nagbibigay ng pagpapatupad ng isang naibigay na programa ay sinabi na sa dulo ng server. Ang aksyon RPC ay maaaring termed kasabay, sa na nangangailangan ng isang programa na humihiling para sa pagkilos na magkaroon ng tinukoy na pagkilos na suspindihin hanggang sa isang oras kapag ang mga resulta ng isang remote na pamamaraan ay ibinigay.
Upang matiyak na ang aparato ay hindi masyadong matagal kapag may iba't ibang mga pagkilos na nakabinbin, pinapayagan ng RPC ang pagproseso ng maraming mga thread na nagbabahagi ng isang ibinigay na address, at sa gayon ang mga tugon ay maaaring ibigay habang dumarating ito, at hindi sa serye kung saan ang isang pagkilos ay dapat makumpleto para sa susunod na magsisimula.
Ang isang Serbisyong Web na nilikha gamit ang kontrol ng SOAP ay maaaring sumunod sa estilo ng pagmemensahe ng RPC o Document. Samakatuwid ipapakita ng estilo ng dokumento ang tukoy na.xml na dokumento na maaaring mapatunayan laban sa ibinigay na schema ng XML. Bilang Java RPC ay ginagamit sa komunikasyon ng mga platform tulad ng EJB ay, katulad na mga application na tumatakbo sa Java. Ang Web Service, sa kabilang banda, ay higit sa lahat na ginagamit kapag may paggamit ng isang app na hindi tumatakbo sa Java at naglalayong kumonekta sa Web Service.
Ang pagganap sa pagitan ng RPC at Web Services ay lubos na naiiba, na may malaking pagkakaiba sa pagitan ng mga serbisyo sa Web at RPC na lubos na variable. Sa ilang mga pagkakataon, ang pagkakaiba-iba ay maaaring masyadong maliit, na may pagsasaalang-alang ng katatagan pagdating sa paglalaro. Ang RPC ay may hamon na magkaroon ng isang masikip na kapaligiran sa server, na ginagawang medyo mahirap para sa iyo na gumana sa maraming kliyente.
Sa kabilang banda, nagbibigay-daan ang Web Service para sa maraming pag-deploy ng serbisyo, na ang tanging pangangailangan na matugunan na ang Web Service ay ginagamit sa isang HTTP. Pinapayagan nito ang pagsasamantala ng normal na pag-spray ng network at mga pamamaraan sa pag-route na ginagamit sa mas malaking mga site. Mahalaga ring tandaan na ang Web Service ay hindi nangangailangan ng anumang espesyal na coding upang gumana sa server o kahit na ang kliyente.
Ang katatagan ng parehong RPC at Web Service ay maaaring magkapareho kumpara, bagaman mahalagang tandaan na hinihiling ng RPC na gamitin ang mga intermediary upang gumana gaya ng inaasahan. Ito ay dito na EE EJB at frameworks tulad ng Spring dumating sa play. Para sa pinakamahusay na serbisyo, maipapayo nang una sa Java EE EJB bago dalhin ang kapaligiran ng RPC. Ang pagkakalantad sa Serbisyo sa Web sa kapaligiran na ito at ang RPC ay ginagawang mas madali ang pagsasaayos.
Buod
Ang RPC ay tumutukoy sa Remote Procedure Call. Ang paggamit ng RPC ay inirerekomenda kapag may mabigat na paggamit ng modelong client / server. Pinapayagan ng RPC ang pagproseso ng maraming mga thread na nagbabahagi ng isang ibinigay na address. Ang RPC ay nagtatrabaho sa isang platform na gumagamit ng EJB. Web Serbisyo na ginagamit sa mga platform na hindi Java kung gusto ng isang app na ma-access. Ginagamit din ang Web Service para sa pag-synchronize ng asynchronous na komunikasyon.