Comment mettre en œuvre un système de vote en ligne en utilisant le langage Go et Redis
Aperçu :
Le système de vote en ligne est un scénario d'application courant, qui peut être utilisé dans diverses occasions, telles que des élections, des questionnaires, des sélections, etc. Cet article explique comment utiliser le langage Go et Redis pour implémenter un système de vote en ligne simple. Nous utiliserons le langage Go comme langage de développement back-end et Redis comme stockage de données et cache.
package main import ( "fmt" "log" "github.com/go-redis/redis" ) func main() { // 连接到Redis服务器 client := redis.NewClient(&redis.Options{ Addr: "localhost:6379", Password: "", DB: 0, }) // 检查连接是否成功 pong, err := client.Ping().Result() if err != nil { log.Fatal(err) } fmt.Println(pong) // 设置初始投票选项及其票数 options := map[string]int{ "Option1": 0, "Option2": 0, "Option3": 0, } // 将选项及其票数保存到Redis中 for option, count := range options { err := client.HSet("votes", option, count).Err() if err != nil { log.Fatal(err) } } // 投票 option := "Option1" err = client.HIncrBy("votes", option, 1).Err() if err != nil { log.Fatal(err) } // 获取每个选项的票数 votes, err := client.HGetAll("votes").Result() if err != nil { log.Fatal(err) } // 打印投票结果 for option, count := range votes { fmt.Printf("%s: %s ", option, count) } }
Dans le code ci-dessus, nous créons d'abord un client Redis, puis nous nous connectons au serveur Redis. Si la connexion réussit, nous définissons les options de vote initiales et leur nombre de votes et les enregistrons dans la table de hachage Redis. Ensuite, nous simulons un processus de vote d'un utilisateur et ajoutons 1 au nombre de votes pour l'option. Enfin, nous utilisons la commande HGetAll pour obtenir le nombre de votes pour chaque option et imprimer les résultats du vote.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!