/
doc.go
23 lines (22 loc) · 1.14 KB
/
doc.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// Copyright 2015 The Vanadium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Package rpc defines interfaces for communication via remote procedure call.
//
// Concept: https://vanadium.github.io/concepts/rpc.html
// Tutorial: (forthcoming)
//
// There are two actors in the system, clients and servers. Clients invoke
// methods on Servers, using the StartCall method provided by the Client
// interface. Servers implement methods on named objects. The named object is
// found using a Dispatcher, and the method is invoked using an Invoker.
//
// Instances of the Runtime host Clients and Servers, such instances may
// simultaneously host both Clients and Servers. The Runtime allows multiple
// names to be simultaneously supported via the Dispatcher interface.
//
// The naming package provides a rendezvous mechanism for Clients and Servers.
// In particular, it allows Runtimes hosting Servers to share Endpoints with
// Clients that enables communication between them. Endpoints encode sufficient
// addressing information to enable communication.
package rpc