Details

Napredne funkcije protokola gRPC v jeziku Go
ID Sitar, Jurij (Author), ID Lotrič, Uroš (Mentor) More about this mentor... This link opens in a new window, ID Šter, Branko (Comentor)

.pdfPDF - Presentation file, Download (1,21 MB)
MD5: 75DA140E5118FAD5929699A6E6503B1F

Abstract
gRPC je odprtokodno ogrodje za izvajanje klicev oddaljenih funkcij. V diplomski nalogi smo ogrodje gRPC razčlenili na njegove komponente. V jeziku go smo z ogrodjem gRPC nato implementirali preprosto računalo. To računalo smo nadgradili z enosmernimi in dvosmernimi tokovi, preprostimi prestrezniki in z mehanizmi za nadzor poteka (s prekinitvami, roki za izvajanje in z mirno zaustavitvijo). Odjemalcu računala smo dodali sposobnost porazdeljevanja bremena med večimi strežniki. Predstavili smo koncept ščitenja zahtev, kot ga ponuja ogrodje gRPC v nekaterih knjižnicah. Storitev računala smo nato zavarovali s protokolom TLS. Na storitvi računala smo z orodjem grpcurl demonstrirali protokol refleksije in kako olajša delo razvijalcem porazdeljenih sistemov.

Language:Slovenian
Keywords:gRPC, go, napredne funkcije gRPC, porazdeljeni sistemi
Work type:Bachelor thesis/paper
Typology:2.11 - Undergraduate Thesis
Organization:FRI - Faculty of Computer and Information Science
Year:2025
PID:20.500.12556/RUL-173281 This link opens in a new window
COBISS.SI-ID:253580803 This link opens in a new window
Publication date in RUL:15.09.2025
Views:157
Downloads:31
Metadata:XML DC-XML DC-RDF
:
Copy citation
Share:Bookmark and Share

Secondary language

Language:English
Title:Advanced Features of the gRPC Protocol in the Go Language
Abstract:
gRPC is an open-source framework for performing remote procedure calls. In this thesis, we analyzed the gRPC framework by breaking it down into its components. Using the Go language and the gRPC framework, we then implemented a simple calculator. We extended this calculator with unidirectional and bidirectional streams, simple interceptors, and flow control mechanisms (including cancellations, execution deadlines, and graceful shutdown). We added load-balancing capabilities to the calculator’s client, enabling it to distribute requests across multiple servers. We introduced the concept of request hedging, as provided by the gRPC framework in some of its libraries. We then secured the calculator service with the TLS protocol. Finally, we demonstrated the reflection protocol on the calculator service using the grpcurl tool, showing how it facilitates the work of distributed systems developers.

Keywords:gRPC, Go, advanced gRPC functions, distributed systems

Similar documents

Similar works from RUL:
Similar works from other Slovenian collections:

Back