우선순위 Neden Vardır? İlk Eşleşen Kural Neden Kazanır?

작성자

카테고리:

← 피드로
DEV Community · Feyza Nur Dandal · 2026-08-03 개발(SW)

Policy Engine içinde yüzlerce kural bulunduğunu düşünün.

Peki bir kullanıcı aynı anda birden fazla kurala uyuyorsa ne olur?

İşte bu problemi çözmek için Priority kavramı kullanılır.

Çakışan Kurallar

Örneğin elimizde şu iki kural olsun:

Policy 1

Department = Employee

↓

VLAN10

Enter fullscreen mode Exit fullscreen mode

Policy 2

Department = Employee

AND

Role = IT

↓

VLAN20

Enter fullscreen mode Exit fullscreen mode

Bir IT çalışanı her iki kurala da uyar.

Peki hangisi uygulanacak?

Priority

Her politika bir öncelik değerine sahiptir.

Önceliği daha yüksek olan politika önce değerlendirilir.

İlk eşleşen politika bulunduğunda değerlendirme sona erer.

Neden İlk Eşleşmede Duruyor?

Çünkü performans önemlidir.

Eğer sistem her kullanıcı için yüzlerce politikayı tek tek değerlendirseydi;

  • Gereksiz işlem yapılırdı.
  • Yanıt süresi uzardı.
  • Sunucu yükü artardı.

İlk uygun kural bulunduğunda durmak çok daha verimlidir.

En Özel Kural En Üste

Policy yazarken genel kabul gören yaklaşım şudur:

En özel kurallar önce gelir.

En genel kurallar en sona bırakılır.

Örneğin;

  1. IT yöneticileri
  2. IT çalışanları
  3. Tüm çalışanlar
  4. Misafir kullanıcılar

Bu sıralama hem okunabilirliği artırır hem de beklenmeyen davranışların önüne geçer.

Gerçek Hayattan Bir Örnek

Bir havaalanında önce diplomatik pasaport sahipleri kontrol edilir.

Daha sonra business yolcuları.

En son normal yolcular.

Bunun nedeni de aslında bir öncelik mekanizması olmasıdır.

Sonuç

Priority yalnızca kuralları sıralamak için kullanılan bir sayı değildir.

Doğru kullanıldığında sistem performansını artırır, kural çakışmalarını önler ve yönetimi kolaylaştırır.

Policy Engine tasarımında en kritik kavramlardan biri doğru önceliklendirmedir.

원문에서 계속 ↗

코멘트

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다