Page 134 - Yazılım Teknolojileri Araştırma Bülteni 2023
P. 134

134 | REST API ve gRPC Mimari Stillerinin Karşılaştırılması





           REST API





           REST (Representational State Transfer), API tasarlamak için kullanılan belirli kısıtlamaları içeren
           modern bir mimari yaklaşımdır. Günümüzde web ve mikroservis tabanlı uygulamaların birbirleri
           ile etkileşimlerinde kullanılan en popüler mimari stildir. REST, başlangıçta internet gibi karmaşık
           bir ağdaki iletişimi yönetmek için bir kılavuz olarak oluşturulmuştur. REST tabanlı mimari yüksek
           performanslı, güvenilir ve ölçeklenebilir API’ler oluşturmak için kullanılmaktadır. Kolay uygulayabilir,
           değiştirebilir yapısı, API’lerin sezgisel olarak kolaylıkla anlaşılabilir olmasını ve platformlar arası

           kolaylıkla  taşınabilir  olmasını  sağlamaktadır.  RESTful  API’ler,  durum  bilgisiz,  ölçeklenebilir  ve
           güvenilir API’ler oluşturmak için modern web geliştirmede yaygın olarak kullanılmaktadır.

           REST kısıtlamalarına uyan sistemler RESTful olarak isimlendirilir. RESTful API’ler HTTP protokolü
           üzerine kuruludur. Kaynaklara erişmek için bir URI (Uniform Resource Indentifier), istenen işlemi
           tanımlayan bir HTTP metodu (ör. GET, PUT, POST), mesaj gövdesi ve iletilen işleme özgü üst verileri
           içeren  bir  header  alanlarına  sahiptir.  URI  erişilmek  istenen  kaynağa  ait  önceden  tanımlanmış
           adresine, HTTP metodu kaynak üzerinde gerçekleştirilmek istenen ekleme, okuma, güncelleme ve
           silme (CRUD) aksiyonlarına karşılık gelmektedir. Mesaj gövdesi alanında JSON, HTML, XML veya

           sunucu tarafından kabul edilen diğer bir veri biçiminde formatlanmış içeriği, header alanında ise
           isteği tanımlayan üst veriler yer almaktadır. JSON anahtar ve değer çiftleri içeren mesaj formatı ile
           basit, kullanımı kolay ve insanlar tarafından kolaylıkla okunabilirlik özellikleri sebebiyle en popüler
           mesaj içerik formatlarından biridir. Ancak mesaj içeriğinde bulunan özellik adlarının tekrarlanması
           mesajların gereğinden fazla büyük olmasına sebep olması sebebiyle en optimal mesaj formatı
           değildir.

           Günümüzde REST API’lerin halka açık bir şekilde yayınlanması diğer üçüncü taraf uygulamalar

           tarafından  bu  API’lerin  kullanılmasına  olanak  sağlamaktadır.  REST  için  popüler  API  yönetim
           araçları arasında Postman, Amazon API Gateway, IBM API Connect, SAP Integration Suite vb.
           bulunmaktadır.




           1. REST API Özellikleri


           Bu bölümde REST API özellikleri; tek tip arayüz, durumsuzluk, istemci sunucu ayrımı, katmanlı sistem,
           ön belleğe alınabilirlik, istek üzerine kod başlıkları altında anlatılmıştır.




           1.1. Tek Tip Arayüz


           Sınıfları bağımlılıklarından ayırmak için arayüzlerin kullanılması oldukça eski bir yöntemdir.  REST API
           de istemciyi REST hizmetinin uygulanmasından ayırmak için aynı konsepti kullanmaktadır. Böyle
           bir arayüzü tanımlamak için standartlar gereklidir. Tek tip arayüz, sunucunun bilgileri standart bir
   129   130   131   132   133   134   135   136   137   138   139