Разлика между RPC и уеб услугата

RPC срещу уеб услуга

Създаването на уеб услуги, използващи протокола SOAP, изисква да се използва някоя от двете алтернативи. Човек може да следва протокола SOAP за документи или протокола за съобщения RPC SOAP. RPC се отнася до разговор за отдалечена процедура и това е протокол, който може да се използва от дадена програма за заявка за дадена услуга в друга програма, която се намира в друг отдалечен компютър. Когато използвате RPC, не е необходимо да знаете подробностите за мрежата на програмата. Дадено извикване на процедура се нарича под-рутинно повикване или дори повикване на функция.

При използването на RPC се използва интензивно моделът клиент / сървър. Програмата, която иска да бъде извършена услуга, е от страна на клиента, а компютърът, осигуряващ изпълнението на дадена програма, се казва, че е на края на сървъра. RPC действието може да се нарече синхронно, тъй като изисква програма, която иска действие, да преустанови посоченото действие до момента, в който са дадени резултатите от отдалечена процедура.



За да се гарантира, че устройството няма да отнеме твърде много време, когато има различни чакащи действия, RPC позволява обработката на множество нишки, които споделят даден адрес, и по този начин отговорите могат да бъдат дадени както идват, а не всериякъдето едно действие трябва да бъде завършено, за да започне следващото.

По този начин уеб услуга, която е създадена с помощта на SOAP контрол, може да следва стила на съобщения RPC или Document. Следователно стилът на документа може да посочва конкретния .xml документ, който може да бъде проверен спрямо дадена XML схема. Тъй като Java RPC се използва при комуникацията на платформи като EJB, подобни приложения работят на Java. Уеб услугата, от друга страна, се използва главно винаги, когато се използва приложение, което не работи на Java и се стреми да се свърже с уеб услугата.

Ефективността между RPC и уеб услугите е доста различна, като огромните вариации между уеб услугите и RPC са доста променливи. В някои случаи вариацията може да бъде доста малка, като се вземе предвид устойчивостта. RPC идва с предизвикателството да имате пренаселена сървърна среда, което ви затруднява работата с множество клиенти.

От друга страна, Web Service дава възможност за многократно внедряване на услуга, като единствената необходимост да бъде изпълнена е, че Web Service се извиква през HTTP. Това дава възможност за използване на нормалните мрежови техники за пръскане и маршрутизиране, използвани в по-големи обекти. Също така е важно да се отбележи, че Web Service не се нуждае от специално кодиране, за да функционира със сървъра или дори с клиента.

Устойчивостта както на RPC, така и на уеб услугата могат да бъдат сравнени еднакво, въпреки че е важно да се отбележи, че RPC изисква използването на посредниците да функционират според очакванията. Тук влизат в действие EE EJB и рамки като Spring. За най-доброто обслужване е препоръчително първо да работите с Java EE EJB, преди да внесете RPC среда. Излагането на Web Service на тази среда и RPC също прави конфигурацията много по-лесна.

Обобщение

RPC се отнася до разговор за отдалечена процедура.
Използването на RPC се препоръчва, когато се използва интензивно моделът клиент / сървър.
RPC позволява обработката на множество нишки, които споделят даден адрес.
RPC, използван на платформа, която използва EJB.
Уеб услуга, използвана в не-Java платформи, когато приложението иска достъп.
Уеб услугата също се използва за синхронизиране на асинхронна комуникация.