Rumah > Artikel > pembangunan bahagian belakang > Cara menyambung redis ke golang
Redis ialah sistem storan data nilai kunci berasaskan memori sumber terbuka yang menyokong pelbagai struktur data dan mekanisme sandaran Ia digunakan secara meluas dalam cache, baris gilir mesej, kaunter masa nyata, pengurusan sesi dan medan lain. Golang ialah bahasa pengaturcaraan sumber terbuka dengan ciri-ciri prestasi tinggi, penaipan yang kuat, kesederhanaan dan kebolehbacaan, dan keselamatan serentak Ia secara beransur-ansur menjadi bahasa popular dalam pengkomputeran awan, pengaturcaraan rangkaian, sistem teragih dan bidang lain. Artikel ini akan memperkenalkan cara menyambungkan Redis di Golang dan melaksanakan operasi membaca dan menulis data.
Mula-mula anda perlu memasang Redis dan mulakan perkhidmatan Redis. Anda boleh menggunakan arahan berikut untuk memasang di bawah sistem Ubuntu:
sudo apt-get update
sudo apt-get install redis-server
Selepas pemasangan selesai, anda boleh menggunakan arahan berikut untuk memulakan perkhidmatan Redis :
redis-server
Pada masa yang sama, anda perlu menggunakan klien Redis dalam aplikasi Golang untuk menyambung ke perkhidmatan Redis. Pelanggan Go Redis ialah pakej perisian sumber terbuka yang ditulis oleh Gary Burd yang menyediakan sokongan untuk arahan asas Redis. Ia boleh dipasang menggunakan arahan berikut:
go get github.com/go-redis/redis
Connect in Go application Perkhidmatan Redis perlu menyatakan alamat, nombor port dan kata laluan pelayan Redis (jika ada). Anda boleh menggunakan kod berikut untuk menyambung kepada perkhidmatan Redis:
import "github.com/go-redis/redis"
func main() {
klien := redis. NewClient(&redis.Options {
Addr: "localhost:6379", Password: "", // no password set DB: 0, // use default DB
})
pong, err := client.Ping().Result()
fmt.Println(pong, err)
}
Objek klien Redis dicipta di sini, alamat pelayan Redis ditentukan sebagai localhost, nombor port ialah 6379, kata laluan kosong dan DB lalai digunakan. Kemudian panggil kaedah Ping() untuk menguji sambungan dan keluarkan hasil sambungan.
Dalam aplikasi sebenar, alamat, nombor port dan kata laluan pelayan Redis perlu dinyatakan mengikut situasi sebenar.
Seterusnya, anda boleh menggunakan objek klien Redis untuk melaksanakan operasi baca dan tulis data. Berikut ialah beberapa arahan Redis biasa dan pelaksanaannya dalam Go:
3.1 Menetapkan nilai
Anda boleh menggunakan kaedah Set() untuk menetapkan pasangan nilai kunci:
err := client.Set("key", "value", 0).Err()
if err != nil {
panic(err)
}
Di mana, parameter pertama ialah nama kunci , parameter kedua ialah nilai kunci, parameter ketiga ialah masa tamat tempoh, 0 bermakna tiada tamat tempoh.
3.2 Dapatkan nilai
Anda boleh menggunakan kaedah Get() untuk mendapatkan pasangan nilai kunci:
val, err := client.Get("key") .Result()
if err != nil {
panic(err)
}
fmt.Println("key", val)
Di mana, parameter pertama ialah nama kunci dan nilai pulangan ialah nilai kunci , mengembalikan sifar jika kunci tidak wujud.
3.3 Penambahan
Anda boleh menggunakan kaedah Incr() untuk menambah nilai:
err := client.Incr("key").Err()
if err != nil {
panic(err)
}
Antaranya, parameter pertama ialah nama kunci, yang bermaksud untuk menambah nilai kunci secara automatik.
3.4 Operasi senarai
Anda boleh menggunakan kaedah LPush() untuk memasukkan elemen ke dalam kepala senarai:
err := client.LPush("mylist", "value1", "value2 ").Err()
if err != nil {
panic(err)
}
Anda boleh menggunakan kaedah LRange() untuk mendapatkan elemen senarai:
vals, err := client.LRange("mylist", 0, -1).Result()
if err != nol {
panic(err)
}
for _, val := range vals {
fmt.Println(val)
}
Antaranya, parameter pertama ialah nama senarai, parameter kedua ialah indeks permulaan, parameter ketiga ialah indeks penamat, dan pulangan nilai ialah senarai elemen.
3.5 Operasi pengumpulan
Anda boleh menggunakan kaedah SAdd() untuk menambah elemen pada koleksi:
err := client.SAdd("myset", "value1" , "value2 ").Err()
if err != nil {
panic(err)
}
Anda boleh menggunakan kaedah SMembers() untuk mendapatkan elemen set:
vals, err := client.SMembers("myset").Result()
if err != nil {
panic(err)
}
for _, val := range vals {
fmt.Println(val)
}
Antaranya, parameter pertama ialah nama koleksi, dan nilai pulangan ialah senarai elemen.
Sebelum menamatkan program, sambungan klien Redis perlu ditutup tepat pada masanya.
err := client.Close()
if err != nil {
panik(err)
}
Melalui langkah di atas, anda boleh menyambung di Golang Redis juga melakukan operasi membaca dan menulis data. Pada masa yang sama, pelanggan Go Redis juga menyediakan sokongan operasi yang lebih kaya, sila lihat dokumentasi rasmi untuk butiran.
Atas ialah kandungan terperinci Cara menyambung redis ke golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!