Event Sourcing Neydi?
Önceden servislerimiz aşağıdaki gibi olurdu.
Bu servisimiz yüzlerce satır koddan oluşurdu. Bu karmaşadan kurtulmak için CQRS ile servislerimizi "Command" ve "Query" olmak üzere ikiye böldük. CRUD işlemlerimizi "Command" servisleri ile, sorgulama işlemlerimizi "Query" servisleri ile yaptık. Ortaya aşağıdaki gibi iki ayrı servis çıktı.
Devamını okuDocker Image'ı GCP'de Serverless Olarak Yayına Alma
1. Giriş
Serverless yaklaşımı ile birlikte yazılım geliştiricinin sunucuyu düşünme derdi ortadan kalktı. Artık kodumuzu yazıyoruz ve sağlayıcıya bunu çalıştır diyoruz. Sunucu konfigürasyonları, ölçeklendirmeleri vs. ile uğraşmıyoruz. Bir de üstüne kullandığın kadar öde. Bu büyük bir nimet.
AWS'in Lambda, GCP'in Cloud Function, Azure'un Azure Function vs. servisleri bize bu hizmeti sağlıyor. Fakat bu sefer de şöyle bir sorun ortaya çıkıyor. Bu servisler tüm dilleri desteklemiyor. İstediğimiz dili desteklese bile istediğimiz versiyonu desteklemeyebiliyor. Mesela AWS Lambda henüz .NET Core 2.1'in üstünü desteklemiyor. Bu bir problem. Kimse bizi kısıtlayamaz :)
Google'ın Knative üzerine inşa ettiği Cloud Run servisi bu sorunu tamamen ortadan kaldırıyor. Cloud Run'a docker image'ı veriyoruz ve Cloud Run bu image'dan serverless servisimizi ayağa kaldırıyor. Dolayısıyla ister PHP'de geliştirelim ister .NET Core'da geliştirelim farketmez. Dockerize edebildiğimiz müddetçe sınır yok. Bu müthiş bir şey.
Devamını okuAWS Serverless Kuyruklama Sistemi Geliştirme
1. Giriş
Bu yazı konusu, serverless yaklaşımı ile kuyruklama sistemi nasıl geliştirilir olacak. Bulut sağlayıcısı olarak AWS’yi kullanacağız. Dil olarak .NET Core'u tercih edeceğiz.
Bu bölümde senaryoyu ortaya koyacağım ve çıktının ne olacağı konusunda ön bilgilendirme yapacağım.
RESTful API endpoint’lerimiz aşağıdaki gibi olacak.
[POST] api/comments
[GET] api/comments
Aşağıdaki AWS hizmetlerini kullanacağız.
Devamını okuASP.NET Core Uygulamasını GCP Kubernetes'de Yayınlama
1. Giriş
Bu yazı serisinin konusu, ASP.NET Core ile geliştirdiğimiz API'mizi kubernetes'de nasıl yayınlayacağımız olacak. Bulut sağlayıcısı olarak GCP'yi(Google Cloud Platform) kullanacağız.
Bu bölümde senaryoyu ortaya koyacağım ve çıktının ne olacağı konusunda ön bilgilendirme yapacağım. Ayrıca kubernetes'deki bazı kavramlara kısaca değineceğim.
Tek endpoint'li bir API geliştireceğiz.
Bu API'yi dockerize edeceğiz. Bunun için dockerfile oluşturacağız.
Bu dockerfile ile oluşturacağımız image'ı GCR'ye(Google Cloud Container Registry) göndereceğiz.
Bu image'dan üç tane container ayağa kaldıracağız.
Uygulamaya gelen istekleri container'lara dağıtacak "LoadBalancer" servisini oluşturacağız.
Kubernetes'deki beş tane kavramdan kısaca bahsetmek istiyorum.
Devamını okuAWS Serverless RESTful API Geliştirme
1. Giriş
Bu yazı serisinin konusu, serverless yaklaşımı ile RESTful API nasıl geliştirilir olacak. Bulut sağlayıcısı olarak AWS’yi kullanacağız.
Bu bölümde senaryoyu ortaya koyacağım ve çıktının ne olacağı konusunda ön bilgilendirme yapacağım.
RESTful API endpoint’lerimiz aşağıdaki gibi olacak.
[POST] api/ads
[PUT] api/ads/{id}
[DELETE] api/ads/{id}
[GET] api/ads
[GET] api/ads/{id}
Aşağıdaki AWS hizmetlerini kullanacağız.
Devamını okuASP.NET Core Uygulamasını Jenkins ile IIS’de Yayınlama
Bu makalede ASP.NET Core uygulamasını Jenkins kullanarak IIS’de yayınlama konusuna değineceğim. Bu makalenin konusu pipeline hazırlamak olduğu için Jenkins kurulumu ile ilgili aşağıdaki sayfadan yardım alabilirsiniz.
Senaryomuzda deployment yapacağımız hedef makine ve Jenkins kurulu olan makine farklı olacaktır ki Jenkins için dedike bir sunucu ayarlamanız gerekmektedir. Zira job’lar çalışırken kaynaklarınızı fazlasıyla tüketebilir :)
Pipeline aşağıdaki 4 adımdan oluşacak.
Checkout : Github’dan kaynak kod çekilecek.
Build : Kaynak kod derlenecek.
Deploy : Hedef makineye deployment yapılacak.
Pipeline’ı hazırlamadan önce aşağıdaki gereksinimleri sağlamanız gerekmektedir.
Devamını okuArama
Kategoriler
- Blockchain Uygulamaları
- Bulut Uygulamaları
- Design Patterns
- Devops
- JavaScript Kütüphaneleri
- Web Uygulamaları
Etiketler
- ASP.NET Core
- AWS
- Actor Model
- Adapter Design Pattern
- Bootstrap
- CQRS
- CloudRun
- Comprehend
- Continous Integration
- Couchbase
- DDD
- Dapp
- Dapr
- Decorator Design Pattern
- Dependency Inversion Principle
- Devops
- DynamoDB
- E2E Tests
- ElasticCache
- Ethereum
- Event Sourcing
- Event Store
- GCP
- Ganache
- GeoSearch
- Infura
- Integration Tests
- JavaScript
- Jenkins
- Kubernetes
- Lambda
- Liskov Substitution Principle
- MetaMask
- Microsoft Orleans
- Node.js
- Observer Design Pattern
- Open-Closed Principle
- Rinkeby
- Serverless
- Single Responsibility Principle
- Smart Contract
- State Design Pattern
- Strategy Design Pattern
- Truffle
- Unit Tests
- VueJs
- WalletConnect
- Web3
- xUnit