Jako Darin już answered, HTTP to protokół TCP z pewnym obciążeniem, który jest dokładnie tym, co jest używane w definicji RESTful. Nie, nie można usunąć obciążenia HTTP.
Wierzę, że pytanie „Czy mogę używać TCP dla szybszego relaksującego app?” związana jest z pytaniem „Dlaczego tak wiele stron internetowych przy użyciu protokołu HTTP REST jeśli jest wolniejszy niż czysta TCP?”.
Prawda jest taka: HTTP jest istotnie mniejsza niż w czystej formie binarnego TCP, ale w najbardziej aplikacji, użytkownicy nie zauważy różnicy ponieważ koszt jest naprawdę bardzo małe i zwykle klient dokona tylko kilka wniosków na minutę.
Na przykład: GET /posts?userId=5
Jeżeli wniosek ten trwa dłużej niż kilka milisekund do wykonania, to problem nie jest w protokole HTTP. Problem z wydajnością jest związany z opóźnieniem sieci, kodem serwera i sposobem pobierania danych z bazy danych.
Z drugiej strony, jeśli kod klienta wykonuje tysiące żądań na minutę, więc ten pojedynczy klient zauważy problem z wydajnością związany z obciążeniem HTTP. W takim przypadku może być możliwe wykonanie wielu operacji wsadowych w ramach jednej operacji i zmniejszenie liczby żądań sieciowych.
Jeśli pojedynczy klient naprawdę potrzebuje tysięcy zgłoszeń na minutę, można pomyśleć o uniknięciu REST i rozpoczęcia poszukiwania innego podejścia. Pamiętaj tylko, że SOAP może używać powiązania TCP, ale żądania mają również narzuty do przetwarzania XML. Ponadto protokół SOAP jest stanowy, a protokół HTTP jest bezstanowy. Stanowe podejście jest gorsze w przypadku skalowalności.
Nigdy nie słyszałem, że "zleceniodawcy" REST mają na celu uczynienie go bardziej wydajnym. –