Ay: Eylül 2022

Backend For Frontend (BFF) Nedir?

Temel Olarak Frontend ekibinin kendisi ile ilgili backend’i backending hali hazırdaki servisleri ve ürünün isterlerini kullanarak oluşturduğu backen servisleridir.

Bütün var olan servisi değil sadece kendi iş tanımına giren servisleri kullandığı için performans ve kod karmaşıklığı açısından da faydaları vardır.

BFF’ler jer platforma özel geliştirilir. Mobil için ayrı Web için ayrı Desktop için ayrı geliştirelebilir ve sadece bu kısmlarda ayrı ayrı sorumlu olan çalışanlar tarafından geliştirildiği için, veri uyumu ve test edilebilirliği çok daha fazladır.

BFF’lerde çaşitli platformlarda ortak servisler olabilir, böyle durumlarda bu servisler tek bir yerden yazılıp kullanılabilir ancak bu yönde çaba sarf edilmesi bizi, çok fazla genel servisler yazmaya itecektir ki gerçekten kullanmamızın hiç bir anlamı kalmayacak hale gelebilir.

Daha ayrıntılı bilgi için ve Kaynak olarak:

https://www.droidcon.com/2021/11/10/backend-for-frontend-the-secret-of-a-great-mobile-project/

AlmaLinux’ta Firewall ile Oynamak

AlmaLinux’ta firewall’da listelemek değişiklik yapmak ve işlemlerini görmek için firewall-cmd komutunu kullanmamız gerekmektedir. Default olarak firewall açık olarak gelmektedir ve 80 portu dahil hepsini engellemiş halde gelmektedir.

Basit şekilde firewallın çalışıp çalışmadığını görmek için:

systemctl status firewalld

Evde bildiğiniz gibi systemctl ile stop edebilirsiniz ancak önermemekteyiz. Yerine firewall’a rulelar ekleyip isteklerimizi karşılayacak hale getirebiliriz Örnek olarak 80 tcp portunu açmak için:

sudo firewall-cmd –zone=public –add-port 80/tcp –permanent

Ardından reload yaptıktan sonra kullanabilir hale gelmektesiniz:

sudo firewall-cmd –reload

Port kurallarını listelemek için:

sudo firewall-cmd –zone=public –list-ports

kullanmanız yeterlidir.

AlmaLinux komple bir şekilde, içinde podman vb olduğu halde gelmektedir. Özellikle development environmenti olarak yeni işe giren kişilere verip mümkün olduğunca zarar vermeden kullanmasını sağlayabiliriz. Benim bu tarz işler için önerdiğim distro olmaya aday gözüküyor.

Dotnet 6 Worker Service’deConfiguration ve HttpClient’i Dependency Inject Etmek

Öncelikle HttpClient’tan başlayacak olursak, Klasik olarak Microsoft.Extensions.Http’yi ekledikten sonra direkt olarak configure kısmından ekleyebilmekteyiz:

Ardından Configuration’ı inject etmek için Configure services metodunun başka bir override’ını kullanmak gereklidir:

Hostcontext üzerinden configuration çekilmekte ve sonrasında dependency inject edilebilmektedir.