Introdução
A Chamada de Procedimento Remoto (RPC) é um dos paradigmas mais simples de API, em que um cliente executa um bloco de código em outro servidor.
Imagine que você tem um aplicativo no seu computador (Cliente) e ele precisa calcular uma fórmula complexa. Em vez de calcular isso localmente, ele chama uma função chamada CalcularImposto(). A mágica do RPC é que essa função não existe no seu computador; ela está em um servidor do outro lado do mundo.
Para fazer isso parecer local, o RPC usa um conceito chamado Stub:
- O Cliente chama o Client Stub (um pedaço de código local que finge ser a função real).
- O Stub pega os parâmetros que você passou, empacota tudo (processo chamado de Serialização) e envia pela rede.
- O servidor recebe a mensagem, passa para o Server Stub, que desempacota os dados (Desserialização) e chama a função real.
- O resultado faz o caminho inverso até chegar ao seu cliente.
O grande objetivo do RPC é esconder a complexidade da rede. O desenvolvedor apenas chama funções, sem se preocupar em montar requisições HTTP ou gerenciar conexões manualmente.
Exemplo
POST
/api/conversations.archive
HOST slack.com
Content-Type: application/x-www-form-urlencoded
Authorization:
Bearer xoxp-1650112-jgc2asDae
channel=C01234
API de Conversação do Slack
Diferente do REST, onde o verbo é passado no argumento do método HTTP, no RPC o verbo é explícito dentro da URI.
| Método | Descrição |
|---|---|
| conversations.archive | Archives a conversation. |
| conversations.close | Closes a direct message or multi-person direct message. |
| conversations.create | Initiates a public or private channel-based conversation |
| conversations.history | Fetches a conversation's history of messages and events. |
| conversations.info | Retrieve information about a conversation. |
| conversations.invite | Invites users to a channel. |
| conversations.join | Joins an existing conversation. |
| conversations.kick | Removes a user from a conversation. |
| conversations.leave | Leaves a conversation. |
| conversations.list | Lists all channels in a Slack team. |
| conversations.members | Retrieve members of a conversation. |
| conversations.open | Opens or resumes a direct message or multi-person direct message. |
United States
NORTH AMERICA
Related News
How Braze’s CTO is rethinking engineering for the agentic area
10h ago
Amazon Employees Are 'Tokenmaxxing' Due To Pressure To Use AI Tools
21h ago

Implementing Multicloud Data Sharding with Hexagonal Storage Adapters
15h ago

DeepMind’s CEO Says AGI May Be ~4 Years Away. The Last Three Missing Pieces Are Not What Most People Think.
15h ago

CCSnapshot - A Claude Code Configs Transfer Tool
21h ago