Teknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor HaberleriTeknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor HaberleriTeknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor Haberleri
Yazı Tipi BoyutlandırıcıAa
  • Anasayfa
  • Teknoloji
    • Siber Güvenlik
    • Yapay Zeka
    • Donanım
    • Bilim
  • Yazılım
  • Savunma & İstihbarat
  • Oyun
  • Yaşam
    • Finans
    • Sinema
    • Dünyadan Haberler
  • İş Birliği
Okuma: Özelleştirilmiş Özellik Kapama: Özellik Engelleme Modelinin Plan Temelli Sisteme Geçirilmesi
Paylaş
Yazı Tipi BoyutlandırıcıAa
Teknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor HaberleriTeknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor Haberleri
Ara
Bizi Takip Et
  • Hakkımızda
  • Gizlilik politikası
  • Tanıtım Yazısı ve Backlink Hizmeti
© 2026 Teknomers. All Rights Reserved.

Anasayfa » Özelleştirilmiş Özellik Kapama: Özellik Engelleme Modelinin Plan Temelli Sisteme Geçirilmesi

Yazılım

Özelleştirilmiş Özellik Kapama: Özellik Engelleme Modelinin Plan Temelli Sisteme Geçirilmesi

teknomers
Son güncelleme: 8 Temmuz 2026 05:38
teknomers
Paylaş
Paylaş



Özet

  • Bir SaaS uygulamasını à-la-carte özellik abonelikleri (özellik başına ödeme) modelinden planlar-only (katmana göre ödeme, özelliklerini al) modeline geçirdi.
  • Bunu dört aşamada gerçekleştirdi, böylece hiçbir şey ortada kalmadı: planları ekle → planlara geçiş → organizasyonları migrate et → eski yapıyı kaldır.
  • Ders: model migrasyonları, büyük bir değişiklik değil, genişlet, migrate et, daralt şeklinde yapılır; bir anda değiştirmekten daha güvenlidir.



Sorun

Eski faturalama sistemi, bir organizasyonun bireysel özelliklere à la carte olarak abone olmasına izin veriyordu. Kağıt üzerinde esnek, pratikte acı verici: hak sahibi(logika) mantığı, iki doğru kaynağa (özellik başına abonelik ve dolaylı bir plan) sahipti ve her kuralın her iki kontrolü de kontrol etmesi gerekiyordu. Tek bir modele düşürme zamanı geldi – bir plan satın alıyorsunuz, plan özellikleri taşır.

Bu tür değişikliklerdeki tuzak, eski sütunları bir anda sökmek isteği. Bunu yaparsanız, her aktifteki abonelik, her kural kontrolü ve eski dili konuşan her webhook anında bozulur.



Aşamalı Plan

Bunu dört aşamada yönettim. Her aşama kendi başına dağıtılabilir ve uygulamayı çalışır durumda bırakır.

AşamaYaptığı İşNeden Bu Sıra
F1Planları ön koşul zincirine ekleYeni model, hiçbir şey okumadan önce mevcut olmalıdır
F2Özellikleri plan üzerinde kontrol et, değil özellik aboneliğiOkumalar geçiş yaparken yazma işlemleri hala çift çalışır
F3Mevcut organizasyonları plana geçirEski modelde kimse kalmaması
F4À-la-carte yapılarını kaldırDarlık – yalnızca F3’ten sonra güvenli

Bu, bir alan modeline uygulanan genişlet/daralt kalıbıdır, sadece bir şemaya değil. Genişlet (F1) yeni şeyi eskisinin yanına ekler. Migrate et (F2–F3) okumaları ardından veriyi taşır. Daralt (F4), artık ona işaret eden hiçbir şey kalmadığında eski şeyin silinmesini sağlar.

  F1 seed        F2 gate on plan     F3 backfill orgs    F4 drop features
 ┌────────┐     ┌──────────────┐    ┌──────────────┐    ┌──────────────┐
 │ plans  │ --> │ reads: plan  │ -> │ every org on │ -> │ delete a-la- │
 │ exist  │     │ writes: both │    │ a real plan  │    │ carte code   │
 └────────┘     └──────────────┘    └──────────────┘    └──────────────┘
   safe            safe               safe                safe



Plana Göre Kontrol

Kontrol, tek bir soruya çöker: bu organizasyonun planı özelliği veriyor mu? Tek bir hak sahibi yerine iki kontrol.

final class EnsureFeatureAccess
{
    public function handle(Request $request, Closure $next, string $feature)
    {
        $plan = $request->user()->organization->currentPlan();

        abort_unless($plan?->grants($feature), 403, 'Upgrade required.');

        return $next($request);
    }
}

Öne çıkarılması gereken iki uç durum var. Metered özellikler (e-posta gönderimleri, sertifika çıkışı) sadece açık/kapalı değildir – plan bir kredi dengesi sağlar, bu yüzden kontrol kalan kotaları kontrol eder, sadece hak sahipliği değil. Ve internal organizasyonlar (superadmin sahipliğinde) üst düzey planı kalıcı olarak alırlar; bu nedenle operasyon araçları hiçbir zaman ücretlendirme duvarına takılmaz.



Ödeme Durumlarına Dair

Faturalama sürecinde, genellikle yaşanan ödeme ağ geçidi sorunları ortaya çıktı: bir sipariş referansının geçidin 30 karakterlik sınırını aşması, null ödeme telefonunun her ödenen organizasyon için çıkışı engellemesi ve doğrulama hatalarının yüzeye çıkmak yerine gizlenmesi. Bunlar göz alıcı değil – ancak bir fatura migrasyonu, her organizasyonun bir anda yeniden abone olduğu tam zamanıdır.



Kontrolü Test Etme

Önemli olan davranış: hiçbir plan → engellenir; plan veriyorsa → izin verilir.

it('planın vermediği bir özelliği engeller', function () {
            $org = Organization::factory()->onPlan()->create();

            actingAs($org->owner)
                ->get()
                ->assertForbidden();
        });

        it(, function () {
            $org = Organization::factory()->onPlan()->create();

            actingAs($org->owner)
                ->get()
                ->assertOk();
        });
        



Alınacak Ders

Hak sahipliği işleyişini değiştirdiğinizde, bunu bir şema migrasyonu gibi ele alın; bu iş mantığı olmasına rağmen. Genişletin, okumaları taşımak, verileri migrate etmek ve sonra daraltın – her seferde bir dağıtılabilir aşamada. Dört aşamalı migrasyon yükü, kimsenin erişemediği bir fatura kesiminde yaşanan bir kesintiye göre ucuzdur.

Kaynak: Orijinal Makale

Contents
  • Özet
  • Sorun
  • Aşamalı Plan
  • Plana Göre Kontrol
  • Ödeme Durumlarına Dair
  • Kontrolü Test Etme
  • Alınacak Ders
Laravel’ı Paylaşımlı Barındırmada Dağıtma (SSH Gerektirmeden)
JWT’leri Yerel Depolamada Saklamayı Durdurun: HttpOnly Cookie Mimarisi 🛡️ – DEV Community
Laravel Uygulamamızda İçerik Güvenlik Politikası (CSP) Nasıl Uygulandı
Bir Nav, İki Yığın: Replatforming Yapmadan Magento ve Laravel Arasında Bir Mikrofrontend
JetBrains Academy Covid-19 salgını süresince ücretsiz kodlama eğitimi verecek.
Bu Makaleyi Paylaş
Facebook Bağlantıyı Kopyala Yazdır
Paylaş
Önceki Makale IBM’e Xinuos’tan 2003’ten bu yana devam eden telif davası
Sonraki Makale Intel’in yeni XBM bellek mimarisi, AI’nin bellek darboğazını çözüyor

Sanal Medya

FacebookBeğen
452Takip Et
PinterestSabitle
237Takip Et

Son Eklenenler

State of Decay 3’e Dair Son Gelişmeler Heyecanlandırıyor
Oyun
Intel’in yeni XBM bellek mimarisi, AI’nin bellek darboğazını çözüyor
Donanım
IBM’e Xinuos’tan 2003’ten bu yana devam eden telif davası
Donanım
Sony, Oyun Disc’lerini Sonlandırmasının Ardından Yeni Yönelimler Peşinde
Oyun
10 Portlu PoE+ Anahtar: 24% İndirimle Sadece $38!
Donanım
Meta’nın Gözlükleri Gizlilik Işığına Müdahale Edilirse Kamerayı Kapatıyor
Liste
//

Siber güvenlik, yapay zeka ve savunma sanayiinden; finans ve sinema dünyasına uzanan geniş bir yelpaze. Teknomers; teknoloji, strateji ve yazılım dünyasını sade bir dille sizlerle buluşturuyor.

Kurumsal

  • Hakkımızda
  • Gizlilik politikası
  • Tanıtım Yazısı ve Backlink Hizmeti

Kategoriler

  • Teknoloji
  • Oyun
  • Sinema
  • Siber Güvenlik
  • Bilim
  • Finans
  • Dünyadan Güncel Haberler

Populer

  • TV'de Ücretsiz İzlenebilen Şifresiz Erotik Kanallar (2025 Güncel Frekans Listesi)

  • The Last of Us PC Kontrolleri: Hızlı Silah Değiştirme ve Tüm Tuşlar (2025)

  • Hogwarts Legacy'de Odaklanma İksiri Nasıl Yapılır?

Teknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor HaberleriTeknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor Haberleri
Bizi Takip Et
© 2026 Teknomers. All Rights Reserved.
Welcome Back!

Sign in to your account

Kullanıcı Adı veya E-posta Adresi
Şifre

Şifrenizi mi unuttunuz?