<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>sade.dev</title><description>Backend, sistem tasarımı, PostgreSQL, Redis, Laravel ve AI-destekli mühendislik üzerine Türkçe notlar ve geliştirici araçları.</description><link>https://sade.dev/</link><language>tr-TR</language><item><title>Ardışık Numara Üretiminde Race Condition ve Gap: JIT Rezervasyon</title><link>https://sade.dev/tr/systems/ardisik-numara-uretiminde-race-condition-ve-gap/</link><guid isPermaLink="true">https://sade.dev/tr/systems/ardisik-numara-uretiminde-race-condition-ve-gap/</guid><description>Yasal olarak ardışık ve boşluksuz numaraları paralel worker&apos;larla üretmek: race condition ile gap&apos;i birlikte çözen JIT rezervasyon kalıbı.</description><pubDate>Wed, 03 Jun 2026 00:00:00 GMT</pubDate><category>architecture</category><category>production</category><category>concurrency</category><category>queue</category><category>idempotency</category><category>System</category><author>info@muhammetsafak.com.tr (Muhammet Şafak)</author></item><item><title>Mikroservise Ne Zaman Geçerim?</title><link>https://sade.dev/tr/journal/mikroservise-ne-zaman-gecerim/</link><guid isPermaLink="true">https://sade.dev/tr/journal/mikroservise-ne-zaman-gecerim/</guid><description>Monolitten dağıtık mimariye geçişi haklı çıkaran ölçülmüş sinyaller — ve geçiş için henüz erken olduğunu söyleyen yaygın yanlış gerekçeler.</description><pubDate>Sat, 30 May 2026 00:00:00 GMT</pubDate><category>architecture</category><category>microservices</category><category>decisions</category><category>opinion</category><category>Journal</category><author>info@muhammetsafak.com.tr (Muhammet Şafak)</author></item><item><title>Gitflow mu, GitHub Flow mu? Neye Göre Seçiyorum?</title><link>https://sade.dev/tr/journal/gitflow-mu-github-flow-mu/</link><guid isPermaLink="true">https://sade.dev/tr/journal/gitflow-mu-github-flow-mu/</guid><description>Branch stratejisi seçimini ürün modeli, sürüm sayısı ve deploy ritmine göre yapmanın pratik kriterleri — ve iki modelin yanlış yerde nasıl kırıldığı.</description><pubDate>Sat, 23 May 2026 00:00:00 GMT</pubDate><category>git</category><category>workflow</category><category>branching</category><category>decisions</category><category>opinion</category><category>Journal</category><author>info@muhammetsafak.com.tr (Muhammet Şafak)</author></item><item><title>Projelere Neden Modüler Monolit ile Başlıyorum?</title><link>https://sade.dev/tr/journal/projelere-neden-moduler-monolit-ile-basliyorum/</link><guid isPermaLink="true">https://sade.dev/tr/journal/projelere-neden-moduler-monolit-ile-basliyorum/</guid><description>Mikroservislere atlamadan önce tek deploy edilebilir bir uygulamada net modül sınırları kurmanın gerekçesi — ve bu kararı ne zaman bıraktığım.</description><pubDate>Sat, 23 May 2026 00:00:00 GMT</pubDate><category>architecture</category><category>modular-monolith</category><category>decisions</category><category>opinion</category><category>Journal</category><author>info@muhammetsafak.com.tr (Muhammet Şafak)</author></item><item><title>Trunk-Based Development&apos;a Ne Zaman Geçiyorum?</title><link>https://sade.dev/tr/journal/trunk-based-ne-zaman-geciyorum/</link><guid isPermaLink="true">https://sade.dev/tr/journal/trunk-based-ne-zaman-geciyorum/</guid><description>Yüksek frekanslı deploy yapan ekiplerde release branch&apos;lerinin neden kırıldığı ve trunk-based&apos;in ne kadarının disiplin olduğu — geçtiğim ve geçmediğim eşikler.</description><pubDate>Sat, 23 May 2026 00:00:00 GMT</pubDate><category>git</category><category>workflow</category><category>deploy</category><category>decisions</category><category>opinion</category><category>Journal</category><author>info@muhammetsafak.com.tr (Muhammet Şafak)</author></item><item><title>Veri Yoğunluklu Sistemlerde Ölçek Kırılma Noktaları</title><link>https://sade.dev/tr/systems/veri-yogunluklu-sistemler-kirilma-noktalari/</link><guid isPermaLink="true">https://sade.dev/tr/systems/veri-yogunluklu-sistemler-kirilma-noktalari/</guid><description>Veri yükü arttıkça boring mimari nerede kırılır? Working set, read replica, partitioning, yazma yükü ve ayrı veri katmanı — sıralı kırılma noktaları ve her birinin maliyeti.</description><pubDate>Wed, 20 May 2026 00:00:00 GMT</pubDate><category>postgresql</category><category>architecture</category><category>production</category><category>scaling</category><category>replication</category><category>System</category><author>info@muhammetsafak.com.tr (Muhammet Şafak)</author></item><item><title>Neden Boring Architecture&apos;ı Tercih Ediyorum</title><link>https://sade.dev/tr/journal/neden-boring-architecture/</link><guid isPermaLink="true">https://sade.dev/tr/journal/neden-boring-architecture/</guid><description>Yeni teknoloji peşinde koşmak yerine kanıtlanmış aletleri seçmenin pragmatik gerekçesi. Bu bir korkaklık değil, bir bütçe kararı.</description><pubDate>Fri, 15 May 2026 00:00:00 GMT</pubDate><category>architecture</category><category>decisions</category><category>opinion</category><category>Journal</category><author>info@muhammetsafak.com.tr (Muhammet Şafak)</author></item><item><title>Shared Redis Kullanırken Namespace İzolasyonu</title><link>https://sade.dev/tr/notes/shared-redis-namespace-izolasyonu/</link><guid isPermaLink="true">https://sade.dev/tr/notes/shared-redis-namespace-izolasyonu/</guid><description>Tek bir Redis instance birden çok proje arasında paylaşılırken key collision ve TTL kazalarından korunmak için kullandığım örüntü.</description><pubDate>Tue, 12 May 2026 00:00:00 GMT</pubDate><category>redis</category><category>production</category><category>architecture</category><category>Note</category><author>info@muhammetsafak.com.tr (Muhammet Şafak)</author></item><item><title>AI-Assisted Engineering Workflow&apos;um</title><link>https://sade.dev/tr/journal/ai-assisted-engineering-workflow/</link><guid isPermaLink="true">https://sade.dev/tr/journal/ai-assisted-engineering-workflow/</guid><description>Claude Code ve benzeri ajanları üretim kodunda güvenle kullanmak için takip ettiğim yedi kural — bir alaycı değil, bir disiplin manifestosu.</description><pubDate>Sun, 10 May 2026 00:00:00 GMT</pubDate><category>ai-workflow</category><category>productivity</category><category>opinion</category><category>Journal</category><author>info@muhammetsafak.com.tr (Muhammet Şafak)</author></item><item><title>pgBackRest ile PostgreSQL Backup Stratejisi</title><link>https://sade.dev/tr/notes/pgbackrest-postgresql-backup-stratejisi/</link><guid isPermaLink="true">https://sade.dev/tr/notes/pgbackrest-postgresql-backup-stratejisi/</guid><description>pg_dump tek başına yedek değil. pgBackRest ile PITR destekli, sıkıştırılmış, doğrulanabilir yedek mimarisi.</description><pubDate>Fri, 08 May 2026 00:00:00 GMT</pubDate><category>postgresql</category><category>backup</category><category>production</category><category>pgbackrest</category><category>Note</category><author>info@muhammetsafak.com.tr (Muhammet Şafak)</author></item><item><title>Laravel Queue Production&apos;da Neden Yavaşlar?</title><link>https://sade.dev/tr/notes/laravel-queue-production-yavaslama/</link><guid isPermaLink="true">https://sade.dev/tr/notes/laravel-queue-production-yavaslama/</guid><description>Laravel queue işçileri yerelde mükemmel, production&apos;da yavaş. Geliştiricilerin gözden kaçırdığı en yaygın beş neden.</description><pubDate>Sun, 03 May 2026 00:00:00 GMT</pubDate><category>laravel</category><category>queue</category><category>production</category><category>redis</category><category>Note</category><author>info@muhammetsafak.com.tr (Muhammet Şafak)</author></item><item><title>Tek VPS Üzerinde Çoklu Proje Mimarisi</title><link>https://sade.dev/tr/systems/tek-vps-coklu-proje-mimarisi/</link><guid isPermaLink="true">https://sade.dev/tr/systems/tek-vps-coklu-proje-mimarisi/</guid><description>Bir VPS, birden fazla bağımsız uygulama. Kubernetes yerine bilinçli minimalizm: kullanıcı izolasyonu, ayrı PHP-FPM pool, paylaşılan PostgreSQL/Redis, sade deploy.</description><pubDate>Thu, 30 Apr 2026 00:00:00 GMT</pubDate><category>vps</category><category>architecture</category><category>nginx</category><category>postgresql</category><category>redis</category><category>System</category><author>info@muhammetsafak.com.tr (Muhammet Şafak)</author></item><item><title>Nginx + PHP-FPM Pool Ayrımı</title><link>https://sade.dev/tr/notes/nginx-php-fpm-pool-ayrimi/</link><guid isPermaLink="true">https://sade.dev/tr/notes/nginx-php-fpm-pool-ayrimi/</guid><description>Aynı VPS üzerinde birden fazla PHP uygulaması çalıştırırken, tek bir PHP-FPM pool yerine uygulama başına ayrı pool tanımlamanın somut faydaları.</description><pubDate>Sun, 26 Apr 2026 00:00:00 GMT</pubDate><category>nginx</category><category>php-fpm</category><category>production</category><category>vps</category><category>Note</category><author>info@muhammetsafak.com.tr (Muhammet Şafak)</author></item><item><title>Laravel Production Stack</title><link>https://sade.dev/tr/systems/laravel-production-stack/</link><guid isPermaLink="true">https://sade.dev/tr/systems/laravel-production-stack/</guid><description>Nginx + PHP-FPM + Redis + PostgreSQL + Supervisor + Horizon ile production-grade bir Laravel kurulumu. Her bileşenin işi ve değiştirildiğinde ne kaybedileceği.</description><pubDate>Wed, 22 Apr 2026 00:00:00 GMT</pubDate><category>laravel</category><category>php</category><category>production</category><category>architecture</category><category>System</category><author>info@muhammetsafak.com.tr (Muhammet Şafak)</author></item><item><title>pgBouncer auth_query ile Çoklu DB Kullanıcısı</title><link>https://sade.dev/tr/notes/pgbouncer-auth-query/</link><guid isPermaLink="true">https://sade.dev/tr/notes/pgbouncer-auth-query/</guid><description>pgBouncer kullanırken `userlist.txt` yerine `auth_query` ile dinamik kullanıcı doğrulamasının pratik yapılandırması.</description><pubDate>Sun, 19 Apr 2026 00:00:00 GMT</pubDate><category>postgresql</category><category>pgbouncer</category><category>production</category><category>Note</category><author>info@muhammetsafak.com.tr (Muhammet Şafak)</author></item></channel></rss>