-
Notifications
You must be signed in to change notification settings - Fork 1.2k
/
doc.go
39 lines (35 loc) · 1.76 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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
// Copyright 2020 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
/*
Package ps contains a publisher and subscriber client for the Cloud Pub/Sub Lite
service that emulates the Cloud Pub/Sub API.
If interfaces are defined for pubsub.Topic.Publish() and
pubsub.Subscription.Receive(), the clients in this package can be used as
drop-in replacements.
As noted in comments, the two services have some semantic differences:
- Pub/Sub Lite does not support nack for messages. A custom function can be
provided for ReceiveSettings.NackHandler to handle nacked messages.
- Pub/Sub Lite has no concept of ack expiration. Subscribers must acknowledge
every message received or shut down the SubscriberClient.
- Pub/Sub Lite SubscriberClients do not wait for all messages to be
acknowledged before Receive() returns.
- Pub/Sub Lite has publish and subscribe throughput limits. Thus publishing
can be more sensitive to buffer overflow.
- Pub/Sub Lite PublisherClients can terminate when an unretryable error
occurs.
- DefaultPublishSettings and DefaultReceiveSettings should be used for default
settings rather than their empty types.
For more information about Cloud Pub/Sub Lite, see
https://cloud.google.com/pubsub/lite/docs.
*/
package ps // import "cloud.google.com/go/pubsublite/ps"