Circuit Breaker, yazılım sistemlerindeki hata durumlarını ele almak için kullanılan bir tasarım desenidir. Bir servisin istenen hizmeti sağlamaması durumunda devreyi kapatır ve belirli bir süre boyunca tekrar denemeyi engeller. Bu, hataların yayılmasını ve uygulama performansının düşmesini önler....
Read More
Daha önceki yazılarımızda genel hatlarıyla gRPC nedir ve Unary RPC Tipinde Client nasıl oluşturulur konularına değinmiştik. Kısaca gRPC'yi tekrar tanımlayacak olursak;gRPC open source olarak google tarafından geliştirlen ve ilk olarak 2015 yılında tanıtılan bir remote-procedure-call(RPC) kütüphanesidir.
Bu yazımızda ise Refund isteklerinden sonra müşteriyi notify etmek için kullanacağımız Server Streaming RPC Client türünde comm sağlayacak olan NotifyCustomer Client'ını oluşturacağız....
Read More
Bu yazımızda ise bir önceki yazımızda yapmış olduğumuz RefundService uygulamasının Refund metodu için bir client projesi oluşturup Unary RPC tipinde iki uygulamanın birbirleri arasında nasıl iletişim kurduklarını gözlemleyeceğiz.
Unary RPC kısaca; client'ın tek bir request atıp karşılığında bir response aldığı server-client arası iletişim türlerinden biridir....
Read More
gRPC open source olarak google tarafından geliştirlen ve ilk olarak 2015 yılında tanıtılan bir remote-procedure-call(RPC) kütüphanesidir. Transport için HTTP/2 prokolünü kullanır ve yine google tarafından ilk olarak şirket içi projelerde kullanılmak üzere geliştirilen bir binary serialization protocol'ü olan Protocol Buffers(protobuf) kullanarak serialize/deserialize edilmiş binary-message exchange yapabilen bir altyapı sunmaktadır....
Read More
Eureka; netflix yazlım ekibinin java tabanlı geliştirdiği bir service discovery-management tool'u dur. Çalışma mantığı olarak microservice'ler ayağa kalkarken service registry'e gidip kendi config dosyalarındaki key'lerle register olurlar ve yine herhangi bir microservice networkComm kurmak istediği service'in adresini bilmeksizin registry'e key bilgisi ile query yaparak aldığı value'u kullanarak iletişim kurmaya başlar....
Read More
Asp .Net Core hayatımıza gireli epeyce bir süre oldu ve Microsoft hızlı ve emin adımlarla declare ettiği milestone'larını geliştirmeye devam etmekte. Öncelikle v1.x ardından v2.x sürümlerini kullanmıştık ve son olarak ise en güncel kararlı sürüm olan v3.x çıktı. Yakşalık 1.5 yıldır gerek kendi projelerimde gerekse iş yerinde geliştirdiğimiz bütün projelerde 3.0'dan önceki...
Read More
Genfu; çeşitli konfigurasyonlar tanımlayarak test-data oluşturmanızı sağlayan oldukça complex dummy data oluşturma tanımlamaları yapabileceğimiz bir framework'dür....
Read More
GraphQL, Api'larınız için server-side runtime execute edebileceğiniz bir query language'dir. Dil ve teknoloji bağımsız olarak bir çok framework çin desteği bulunmaktadır (asp.net, java, nodejs etc.) ve herhangi bir database yada farklı data-storage engine'lara bağımlı olmaksızın ......
Read More
Daha önceki yazılarımızda Asp.Net Core da in-memory cache nedir nasıl kullanılır konularına değinmiştik. Bu yazımızda ise asp.net core projelerinde distributed cache nasıl uygulanır inceleyeceğiz....
Read More
Nancy .Net ve Mono için HTTP protokolü üzerinde çalışan uygulamalar geliştirmemizi sağlayan bir lightweight framework dür. Ruby de kullanılan Sinatra framework'ün den esinlenerek geliştirilmiştir ve az kaynak tüketmesinden dolayı performansıyla ön plana çıkmıştır....
Read More
Daha önceki IoC container yazılarında Ninject ve Windsor 'dan bahsetmiştik. Bu yazımızda ise 2016 benchmark'larına göre en hızlı IoC container olduğu söylenen StructureMap'i WebApi üzerinde örnek proje ile inceleyeceğiz....
Read More
Daha önceki yazılarımızda IoC nedir ve Castle Windsor Kullanarak Cache Interceptor Oluşturma konularına değinmiştik. Bu yazımızda ise yine Windsor kullanarak projelerimizde sıkça kullandığımız bir özellik olan Caching işlemini basitçe yapabilen bir interceptor oluşturacağız....
Read More
Daha önceki IoC yazılarımızda Castle Windsor dan bahsedip örnekler üzerinden kütüphaneyi incelemiştik. Bu yazımızda ise çokça yaygın olarak kullanılan IoC container'lar dan biri olan NInject'i Web APi üzerinde inceleyeceğiz....
Read More
Server-side bir geliştirme yapıyorsanız ve yazmış olduğunuz end-point'ler farklı client'lar tarafından kullanılacaksa api da bulunan end-point'lerin kullanımını açıklayıp request-response örneklerini içeren bir döküman yazmak bizler için kaçınılmaz bir iş....
Read More
Özellikle server-side geliştirme yapan kişiler için validation olmazsa olmazlardan biridir. Yazmış olduğunuz api'a client'lar belli başlı parametreler göndererek request'te bulunurlar ve sürekli bir veri alış verişi söz konusudur ve server-side geliştirici olarak asla gönderilen input'a güvenmememiz gerekir....
Read More