HTTP/2
kullanır. Arayüz tanımlama dili olarak protokol tamponları (buffers)
kullanır. Kimlik doğrulama, Çift yönlü akış, engelleme ve engelleme olmayan bağlantılar, iptal ve zaman aşımı işlemleri için kullanılır.protoc
'yi bilgisayarımıza kuralım.protoc.exe
dosyamız C:\\protoc\bin
klasörü içerisinde olsun.protoc.exe
'nin konumunu ekleyelim.protoc
çalıştırılabilir dosyamızı örnek olarak Home (Ev)
dizinine atmış olalım.~/protoc/bin
olsun..bashrc
dosyamızın en altına şunları ekleyelim..bashrc
dosyasını kaydettikten sonra komut satırına source ~/.bashrc
yazarak dosyada yaptığımız değişimi onaylayalım.protoc
'nin versiyonuna bakalım.Protoc
'ye Golang desteğini eklemek için aşağıdaki paketleri kuralım.C:\\Users\isim\go\bin
klasörünü ekli değilse ortam değişkenlerine ekleyelim. Unix-like sistemler için ~/go/bin
'i path'e ekleyelim.chat
uygulamasını yazmak için aşağıdaki gibi bir proje yapımız olacak.chat.proto
dosyamız şöyle olsun.chat.proto
dosyasını Go koduna dönüştürelim. Bunun için proje dizinindeyken aşağıdaki komutu yazalım.protoc --go_out=plugins=grpc:chat chat.proto
chat.pb.go
dosyamız oluşacak. Bu dosyanın en başında yorum olarak düzenleme yapmamızın uygun olamayacağı yazıyor. O yüzden bu dosyayla çok uğraşmamakta fayda var.chat
klasörümüzdeki chat.go
dosyasını oluşturalım.go mod init github.com/ksckaan1/grpcOrnek
chat
paketini kullanabileceğiz. Bu komuttan sonra proje dizinimizde go.mod
dosyası oluşacak. Böylece chat klasörünü paket olarak diğer yerlerde de kullanabileceğiz.server.go
dosyamızı oluşturalım.go run server.go
komutunu yazarak test edelim. Eğer çıktı vermiyorsa ve program kapanmıyorsa server dinleniyor demektir. Yani şuana kadar başarılıyız.client.go
dosyamız aşağıdaki gibi olsun.9080
portunu belirlediğimiz protokol sözleşmesine (chat.proto) göre dinliyor.Client.go
dosyamız çalıştırılınca server'a mesaj yolluyor.