Rumah >pembangunan bahagian belakang >Golang >Bolehkah gRPC Menstrim Data dari Pelayan ke Pelanggan dalam Corak Pub/Sub?
Soalan:
Bolehkah seseorang menggunakan gRPC untuk menolak data daripada pelayan kepada pelanggan? Pertimbangkan corak pub/sub dengan aliran respons yang tidak terhingga pada pelayan dan rutin yang tidak berkesudahan pada pelanggan yang sentiasa membaca daripada strim ini.
// Service proto service Service { rpc RegularChanges (Void) returns (stream Change) {} } // Server implementation func (self *MyServiceImpl) RegularChanges(in *pb.Void, stream pb.Service_RegularChangesServer) error { for { stream.Send(&pb.Change{Name:"toto", Description:"status changed"}) time.Sleep(d) } return nil } // Client for { change, err := streamChanges.Recv() if err != nil { // Handle error } else { // Process change } }
Jawapan:
gRPC direka untuk penggunaan sedemikian, memudahkan corak penerbitan/langganan antara pelanggan dan pelayan. Walau bagaimanapun, pertimbangan tertentu harus ditangani:
Atas ialah kandungan terperinci Bolehkah gRPC Menstrim Data dari Pelayan ke Pelanggan dalam Corak Pub/Sub?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!