mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-11-14 14:49:32 +01:00
d77176912b
* Migrate to go modules * make vendor * Update mvdan.cc/xurls * make vendor * Update code.gitea.io/git * make fmt-check * Update github.com/go-sql-driver/mysql * make vendor
37 lines
1.1 KiB
Markdown
37 lines
1.1 KiB
Markdown
# A smart client for couchbase in go
|
|
|
|
This is a *unoffical* version of a Couchbase Golang client. If you are
|
|
looking for the *Offical* Couchbase Golang client please see
|
|
[CB-go])[https://github.com/couchbaselabs/gocb].
|
|
|
|
This is an evolving package, but does provide a useful interface to a
|
|
[couchbase](http://www.couchbase.com/) server including all of the
|
|
pool/bucket discovery features, compatible key distribution with other
|
|
clients, and vbucket motion awareness so application can continue to
|
|
operate during rebalances.
|
|
|
|
It also supports view querying with source node randomization so you
|
|
don't bang on all one node to do all the work.
|
|
|
|
## Install
|
|
|
|
go get github.com/couchbase/go-couchbase
|
|
|
|
## Example
|
|
|
|
c, err := couchbase.Connect("http://dev-couchbase.example.com:8091/")
|
|
if err != nil {
|
|
log.Fatalf("Error connecting: %v", err)
|
|
}
|
|
|
|
pool, err := c.GetPool("default")
|
|
if err != nil {
|
|
log.Fatalf("Error getting pool: %v", err)
|
|
}
|
|
|
|
bucket, err := pool.GetBucket("default")
|
|
if err != nil {
|
|
log.Fatalf("Error getting bucket: %v", err)
|
|
}
|
|
|
|
bucket.Set("someKey", 0, []string{"an", "example", "list"})
|