Documentation
¶
Overview ¶
Example ¶
This example demonstrates starting a Memcache container, connecting via gomemcache, and performing SET/GET operations.
package main
import (
"context"
"fmt"
"time"
memcacheCli "github.com/bradfitz/gomemcache/memcache"
"github.com/teran/go-docker-testsuite/applications/memcache"
)
func main() {
ctx, cancel := context.WithTimeout(context.Background(), 2*time.Minute)
defer cancel()
app, err := memcache.New(ctx)
if err != nil {
fmt.Printf("error: %v (is Docker running?)\n", err)
return
}
defer func() { _ = app.Close(ctx) }()
addr, err := app.GetEndpointAddress()
if err != nil {
fmt.Printf("error getting address: %v\n", err)
return
}
fmt.Println("memcache endpoint:", addr)
cli := memcacheCli.New(addr)
defer func() { _ = cli.Close() }()
if err := cli.Set(&memcacheCli.Item{
Key: "greeting",
Value: []byte("Hello, Memcache!"),
}); err != nil {
fmt.Printf("error setting key: %v\n", err)
return
}
fmt.Println("key set")
item, err := cli.Get("greeting")
if err != nil {
fmt.Printf("error getting key: %v\n", err)
return
}
fmt.Printf("key value: %s\n", string(item.Value))
}
Output:
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
Click to show internal directories.
Click to hide internal directories.