RPC en documentopmaak zijn twee van de meest gebruikte terminologieën met betrekking tot webservices en het SOAP-protocol. Online Services Description Language (WSDL) papers worden vaak gebruikt om webservices te definiëren.
De RPC-stijl creëert een WSDL-document op basis van de methodeaanroep en de bijbehorende variabelen. Het WSDL-document heeft geen type definitie. Het type is opgenomen in de documentstijl, die kan worden gecontroleerd aan de hand van het vooraf ingestelde schema.
Key Takeaways
- RPC (Remote Procedure Call) is een communicatieprotocol waarmee een programma een subroutine kan uitvoeren op een externe server.
- Het document verwijst naar webservices in documentstijl, die gestructureerde gegevens uitwisselen in formaten zoals XML of JSON.
- RPC en webservices in documentstijl vergemakkelijken de communicatie tussen applicaties, maar RPC is meer proceduregericht, terwijl documentstijl gegevensgericht is.
RPC versus document
RPC is een protocol waarmee systemen een functie op een extern systeem kunnen aanroepen en het resultaat kunnen ontvangen, en wordt gebruikt in het gedistribueerde systeem. Op documenten gebaseerde communicatie wisselt gestructureerde documenten uit in plaats van functies aan te roepen; documentgebaseerde communicatie wordt gebruikt in webservices en RESTful API's.
RPC is een afkorting voor remote procedure calls. Het is een programmaverbindingsprotocol waarmee een programma services van een ander programma op een systeem kan zoeken zonder de fijne kneepjes van het netwerk te begrijpen.
RPC wordt gebruikt om andere processen op verre computers aan te roepen, net zoals op een lokaal systeem.
In webservices in documentstijl kunnen we een XML-bericht overbrengen als onderdeel van een SOAP-verzoek.
Webservices in documentstijl zijn het meest geschikt voor toepassingen waarin een XML-communicatie werkt als een document waarvan de inhoud kan veranderen, en het doel van de webservice is niet afhankelijk van de inhoud van het XML-bericht.
Vergelijkingstabel
Parameters van vergelijking: | RPC | Document |
---|---|---|
Betekenis | Een programma dat communicatie onderbreekt | Ook wel berichtgeoriënteerde stijl genoemd, is de standaardinstelling als SOAP-bericht |
SOAP bindstijlen | Bevat veel onderdelen | Een enkel document |
Integratie van bestanden | Sterk verbonden | Zwak gekoppeld |
Indeling serviceparameters | Geleverd als discrete waarden | Gebruikt standaard XML-formaat |
Operatie naam | Behoudt de titel van de bewerking | Verliest de titel van de operatie |
Wat is RPC?
Een Remote Procedure Call is een software-interactieprotocol waarmee een programma services kan opvragen van een ander programma op een netwerk zonder de kenmerken van het netwerk te hoeven begrijpen.
RPC wordt gebruikt om andere processen op verre computers aan te roepen, net zoals op een lokaal systeem. In sommige gevallen wordt een procedureaanroep ook wel een terugbelfunctie of een subroutineaanroep genoemd.
Het client-server-paradigma wordt gebruikt door RPC. De software die de service aanvraagt, wordt de client genoemd en het programma dat de service levert, wordt de server genoemd.
Een RPC is, net als een systeemeigen procedureaanroep, een synchrone bewerking waarbij de aanvragende toepassing moet worden gestopt totdat de resultaten van het externe proces zijn geretourneerd.
Aan de andere kant zorgt het gebruik van vederlichte processen of threads die hetzelfde netwerkadres bezetten ervoor dat meerdere RPC's tegelijkertijd kunnen worden uitgevoerd.
Wanneer programma-instructies die het RPC-framework gebruiken, worden omgezet in een uitvoerbaar programma, wordt een stub die de externe procedurecode vertegenwoordigt, opgenomen in de geproduceerde code.
Wanneer het programma wordt uitgevoerd en er een procedureaanroep wordt gedaan, accepteert de stub het verzoek en geeft het door aan een client-runtimeprogramma op de lokale computer.
Wanneer de client-stub voor het eerst wordt geactiveerd, maakt deze verbinding met een naamserver om het protocoladres van de server te verkrijgen.
Wat is een document?
De SOAP Body bestaat uit een of meer onderliggende componenten die onderdelen worden genoemd. De hoofdtekst heeft geen SOAP-formaatbeperkingen; het bevat alles waar de afzender en de ontvanger het over eens zijn. Dit staat bekend als de documentstijl.
Het bericht in de stijl Document/Literal kan altijd worden geverifieerd met behulp van elke XML-checker. Het schema definieert precies de inhoud van de SOAP-body. De documentstijl is standaard ingesteld.
Het specificeert type-informatie in het WSDL-bestand, inline of extern. Als alternatief importeert het een XSD document waarin de structuur (schema) wordt uitgelegd van de complexe gegevenstypen die worden overgedragen door die servicefuncties die losjes met elkaar zijn verbonden.
Met webservices in de vorm van documenten komen twee zakenrelaties overeen geavanceerde zakelijke documenten met een goed gedefinieerde XML-structuur uit te wisselen.
Er is geen expliciete mapping tussen document/letterlijke SOAP-berichten en scripttalen; het specificeert alleen dat het SOAP-bericht zal voldoen aan een specifiek XML-schema.
Als een partij bijvoorbeeld een document verstrekt waarin a bestelling, antwoordt de andere partij (onmiddellijk of later) met een document waarin de status van de kooporder wordt beschreven.
Het is niet nodig overeenstemming te bereiken over kleine zaken als de titel van operaties en gerelateerde parameters. De payload van het SOAP-bericht is een XML-document dat kan worden geverifieerd aan de hand van een XML-schema.
Het stijlelement op de SOAP-binding definieert het document.
Belangrijkste verschillen tussen RPC en document
- Remote procedure call (RPC) binnen JavaScript is een programma dat communicatie tussenvoegt, terwijl de documentstijl, ook wel berichtgeoriënteerde stijl genoemd, de standaardinstelling is die als een enkelvoudig "document" in de component wordt verzonden.
- De SOAP-inhoud in RPC-stijl kan vele delen bevatten, terwijl in documentstijl het SOAP-bericht als één enkel document wordt verzonden.
- De RPC is sterk gekoppeld, maar de documentstijl is zwak gekoppeld.
- De parameters in de RPC-stijl worden geleverd als afzonderlijke waarden, maar in de documentstijl verzendt de client de serviceparameters in standaard XML-indeling.
- De stijl RPC/Letterlijk behoudt de titel van de bewerking in het SOAP-bericht, terwijl de stijl Document/Letterlijk dat niet doet.
Laatst bijgewerkt: 13 februari 2024
Sandeep Bhandari heeft een Bachelor of Engineering in Computers van Thapar University (2006). Hij heeft 20 jaar ervaring op het gebied van technologie. Hij heeft een grote interesse in verschillende technische gebieden, waaronder databasesystemen, computernetwerken en programmeren. Je kunt meer over hem lezen op zijn bio pagina.
Dit was echt informatief. Bedankt voor het delen!
De uitleg over RPC versus Document in webservices is zeer uitgebreid, het opent mijn mening over de protocollen
RPC is zo jaren negentig. Documentstijl FTW!
Haha, ik ben het ermee eens. Het draait nu allemaal om documentstijl.
Ik denk dat beide stijlen hun gebruiksscenario's hebben, het is geen one-size-fits-all situatie
RPC, want wie wil er nu nog een document beheren? Het is goed om het simpel te houden.
Ben ik het niet mee eens. De documentstijl biedt meer flexibiliteit en is niet zo rigide als RPC.
Precies!
Ik denk dat de verschillen tussen RPC en documentstijl vrij subtiel zijn en dat dit verder kan worden onderzocht...
Ja, de grens tussen RPC en documentstijl is mogelijk dunner dan we denken
RPC- en documentservices zijn van cruciaal belang voor het functioneren van de huidige onderling verbonden softwaresystemen