<?xml version="1.0" encoding="utf-8"?>
<Gradivo ID="173281" NadgradivoID="0" NRID="27647432" OceID="0" DomainUrl="https://repozitorij.uni-lj.si/" IzpisPolniUrl="https://repozitorij.uni-lj.si/IzpisGradiva.php?lang=slv&amp;id=173281" StOgledov="562" StPrenosov="156" StOcen="0" VsotaOcen="0" DatumIzvoza="2026-10-08 13:24:31" OcenaSkupna="0" StPodgradiv="0" StudijskiProgramEvsID="1000468" JeIndeksirano="0" JeVecAvtorjev="0" DovoliZahtevkeZaDostop="0">
  <PID Url="http://hdl.handle.net/20.500.12556/RUL-173281">20.500.12556/RUL-173281</PID>
  <Naslov>Napredne funkcije protokola gRPC v jeziku Go</Naslov>
  <Podnaslov></Podnaslov>
  <TujJezik_Naslov>Advanced Features of the gRPC Protocol in the Go Language</TujJezik_Naslov>
  <TujJezik_Podnaslov></TujJezik_Podnaslov>
  <Opis>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.</Opis>
  <TujJezik_Opis>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.</TujJezik_Opis>
  <KljucneBesede>
    <Beseda>gRPC</Beseda>
    <Beseda>go</Beseda>
    <Beseda>napredne funkcije gRPC</Beseda>
    <Beseda>porazdeljeni sistemi</Beseda>
  </KljucneBesede>
  <TujJezik_KljucneBesede>
    <Beseda>gRPC</Beseda>
    <Beseda>Go</Beseda>
    <Beseda>advanced gRPC functions</Beseda>
    <Beseda>distributed systems</Beseda>
  </TujJezik_KljucneBesede>
  <Potrjeno>true</Potrjeno>
  <JeZaklenjeno>false</JeZaklenjeno>
  <JeRecenzirano>false</JeRecenzirano>
  <Zaloznik></Zaloznik>
  <Izvor></Izvor>
  <Jezik ID="1060" ISO639-3="slv">Slovenski jezik</Jezik>
  <TujJezik ID="1033" ISO639-3="eng">Angleški jezik</TujJezik>
  <Povezave></Povezave>
  <Pokrivanje></Pokrivanje>
  <CasovnoPokritje></CasovnoPokritje>
  <AvtorskePravice></AvtorskePravice>
  <VrstaGradiva ID="mb11" DRIVER="info:eu-repo/semantics/bachelorThesis">Diplomsko delo/naloga</VrstaGradiva>
  <DatumVstavljanja>2025-09-15 12:40:12</DatumVstavljanja>
  <DatumObjave>2025-09-15 12:40:15</DatumObjave>
  <DatumSpremembe>2025-11-07 03:53:43</DatumSpremembe>
  <DatumTrajnegaHranjenja>0000-00-00 00:00:00</DatumTrajnegaHranjenja>
  <LetoIzida>2025</LetoIzida>
  <LetoIzidaDo>0</LetoIzidaDo>
  <KrajIzida></KrajIzida>
  <LetoIzvedbe>0</LetoIzvedbe>
  <KrajIzvedbe></KrajIzvedbe>
  <Opomba></Opomba>
  <StStrani></StStrani>
  <StevilcenjeNivo1></StevilcenjeNivo1>
  <StevilcenjeNivo2></StevilcenjeNivo2>
  <Kronologija></Kronologija>
  <Patent_Stevilka></Patent_Stevilka>
  <Patent_DatumVeljavnosti>0000-00-00</Patent_DatumVeljavnosti>
  <VerzijaDokumenta>NiDoloceno</VerzijaDokumenta>
  <StatusObjaveDrugje>NiDoloceno</StatusObjaveDrugje>
  <VrstaStroskaObjave>NiDoloceno</VrstaStroskaObjave>
  <DatumPoslanoVRecenzijo>0000-00-00</DatumPoslanoVRecenzijo>
  <DatumSprejetjaClanka>0000-00-00</DatumSprejetjaClanka>
  <DatumObjaveClanka>0000-00-00</DatumObjaveClanka>
  <EmbargoDo></EmbargoDo>
  <VrstaEmbarga ID="1" Naziv="Takojšnja javna objava" OpenAIREDostop="openAccess"></VrstaEmbarga>
  <Osebe>
    <Oseba ID="149777" Ime="Jurij" Priimek="Sitar" AltIme="" VlogaID="70" VlogaNaziv="Avtor" ConorID="" Afiliacija="" ArrsID="0" ORCID=""></Oseba>
    <Oseba ID="23454" Ime="Uroš" Priimek="Lotrič" AltIme="U. Lotrič; Uros Lotric" VlogaID="991" VlogaNaziv="Mentor" ConorID="4360291" Afiliacija="" ArrsID="16109" ORCID=""></Oseba>
    <Oseba ID="22400" Ime="Branko" Priimek="Šter" AltIme="Branko Ster; Branko Ter" VlogaID="994" VlogaNaziv="Komentor" ConorID="4005219" Afiliacija="" ArrsID="14300" ORCID=""></Oseba>
  </Osebe>
  <Identifikatorji>
    <Identifikator ID="16" Sifra="VisID" Naziv="VisID" URL="">38208</Identifikator>
    <Identifikator ID="3" Sifra="CobissID" Naziv="COBISS_ID" URL="https://plus.cobiss.net/cobiss/si/sl/bib/253580803">253580803</Identifikator>
  </Identifikatorji>
  <Relacije>
  </Relacije>
  <VerzijeGradiva>
  </VerzijeGradiva>
  <Datoteke>
    <Datoteka ID="217533" DatotekaNRID="14450611" NamenDatotekeID="2" NamenDatoteke="Predstavitvena datoteka" FormatDatotekeID="2" FormatDatoteke=".pdf" MIME="application/pdf" IkonaFormata="pdf.png" IkonaFormataPolniUrl="https://repozitorij.uni-lj.si/teme/rulDev/img/fileTypes/pdf.png" VelikostDatoteke="1267689" VelikostDatotekeKratko="1,21 MB" DatumVstavljanja="2025-09-15 12:40:16" JeZbrisana="false" JeJavnoVidna="true" JeIndeksirana="true" JeVidno="true" VidnoOd="01.01.1970" Zaporedje="0">
      <Naziv>Sitar_Jurij_-_Napredne_funkcije_protokola_gRPC_v_jeziku_go.pdf</Naziv>
      <OrgNaziv>Sitar_Jurij_-_Napredne_funkcije_protokola_gRPC_v_jeziku_go.pdf</OrgNaziv>
      <URL></URL>
      <Opis></Opis>
      <OpisTujJezik></OpisTujJezik>
      <UrlObdelave></UrlObdelave>
      <FrekvencaAzuriranjaID>1</FrekvencaAzuriranjaID>
      <Verzija></Verzija>
      <MD5>75DA140E5118FAD5929699A6E6503B1F</MD5>
      <SHA256>f4f24b7b535e2359d75296494b8572455f4b3ef9cca20026a4bccf55f265b9ba</SHA256>
      <UUID>323764ea-9220-11f0-9328-0050569b8976</UUID>
      <PID></PID>
      <PrenosPolniUrl>https://repozitorij.uni-lj.si/Dokument.php?lang=slv&amp;id=217533</PrenosPolniUrl>
      <Vsebine>
        <Vsebina TipVsebine="GoloBesedilo" JezikID="1060" Oznaka="" Dolzina="77112"></Vsebina>
      </Vsebine>
    </Datoteka>
  </Datoteke>
  <Organizacije>
    <Organizacija OrganizacijaID="25" Kratica="FRI" ZavodEvsID="0000066" Logo="" LogoPolniUrl="https://repozitorij.uni-lj.si/teme/rulDev/img/logo/">Fakulteta za računalništvo in informatiko</Organizacija>
  </Organizacije>
  <OrganizacijeVira>
  </OrganizacijeVira>
  <MetodeZbiranjaPodatkov>
  </MetodeZbiranjaPodatkov>
  <TipologijaDela ID="2.11" Koda="2.11" Naziv="Diplomsko delo" SchemaOrg="Thesis"></TipologijaDela>
  <Ostalo>
    <StIrodsDatotek>0</StIrodsDatotek>
    <StDatotekPodTrajnimEmbargom>0</StDatotekPodTrajnimEmbargom>
    <StDatotekZOmejenimDostopom>0</StDatotekZOmejenimDostopom>
  </Ostalo>
</Gradivo>
