Skip to content

Pano Verisi ve Yenileme

Pano widget'lari birden fazla calisma alani koleksiyonundan toplanan verileri goruntulur. Bu sayfa, verinin veritabanindan ekraniniza nasil aktigi, onbelleklemenin nasil calistigi ve buyuk calisma alanlari icin performansin nasil optimize edildigi aciklar.

Veri akisi genel bakisi

Pano widget'lari icin veri hatti su yolu izler:

  1. Kullanici bir pano acar -- on yuz, API'den widget verisini ister.
  2. API onbellegi kontrol eder -- Redis'te yakin zamanda hesaplanmis bir sonuc aranir.
  3. Onbellek isabeti -- onbelleklenmis sonuc hemen dondurulur.
  4. Onbellek iskalamasi -- API, MongoDB'ye karsi bir toplama sorgusu calistirir.
  5. Sonuc onbelleklenir -- yeni sonuc bir TTL ile Redis'te depolanir.
  6. Veri dondurulur -- on yuz widget'i isler.
AdimBilesenGecikme (tipik)
Onbellek kontroluRedis< 1ms
Onbellek isabeti yanitiAPI'den on yuze5-20ms
Toplama sorgusuMongoDBVeri hacmine bagli olarak 50-500ms
Onbellek yazmaRedis< 1ms
Tam gidis-donus (onbellek iskalamasi)Uctan uca100-600ms

Veri kaynaklari

Her widget turu belirli MongoDB koleksiyonlarindan veri ceker:

Widget kategorisiBirincil koleksiyonlarIkincil koleksiyonlar
Gorev dagilimi (durum, oncelik, etiket, atanan kisi)issuesstates, labels, workspace_memberships
Aktivite widget'lari (isi haritasi, zaman cizelgesi)activity_logissues, workspace_memberships
Dongu widget'lari (risk kartlari, aktif donguler)cycles, cycle_issuesissues
Modul widget'larimodules, module_issuesissues
Zaman takibi widget'laritime_logsissues, workspace_memberships
Saglik ve risk widget'lariissuesactivity_log, cycles
Calisma alani ozetiprojects, cycles, workspace_memberships, pages, modules, issuesYok
Kullaniciya ozel (hosgeldiniz, son ogeler)activity_log, Redis son ogeler onbellegiissues

Calisma alani genelinde toplama

Varsayilan olarak, pano widget'lari tum calisma alani genelinde veri toplar. Bu su anlama gelir:

  • Kullanicinin erisimi olan tum projeler dahil edilir.
  • Misafir kullanicilar yalnizca davet edildikleri projelerin verilerini gorur.
  • Arsivelenmis projeler, widget yapilandirmasinda acikca dahil edilmedikce haric tutulur.

Bir widget belirli bir proje veya donguye kapsamlandirildiginda, toplama hatti sonuclari o kapsamla sinirlandiran bir filtre asamasi ekler.

Yenileme davranisi

Sayfa yuklemesinde otomatik yenileme

Bir kullanici her pano actiginda, tum gorunen widget'lar taze veri alir. Onbelleklenmis veri mevcutsa ve TTL penceresi icindeyse, onbellek kullanilir.

Manuel yenileme

Tum widget'lari onbellegi atlayarak yeni veri almaya zorlamak icin pano arac cubugundaki Yenile simgesine tiklayin.

IslemOnbellek davranisi
Sayfa yuklemeMevcutsa onbellegi kullanir
Manuel yenilemeOnbellegi atlar, taze veri alir
Otomatik yenileme araligiHer tikte onbellegi atlar
Widget yapilandirma degisikligiO widget icin taze veri alir

Otomatik yenileme araliklari

Bir monitorde acik kalan panolar icin otomatik yenileme araligi yapilandirin:

AralikKullanim alani
KapaliVarsayilan. Veri yalnizca sayfa yuklemesinde veya manuel yenilemede yenilenir
1 dakikaYuksek frekanslı izleme (gunluk toplanti ekranlari)
5 dakikaSprint sirasinda aktif izleme
15 dakikaArka plan farkindaliği
30 dakikaDusuk oncelikli genel bakis ekranlari

Araligi pano arac cubugundan ... menu > Otomatik yenileme ile ayarlayin.

TIP

Otomatik yenileme API yukunu orantili olarak arttirir. 10 widget'li ve her dakika yenilenen bir pano dakikada 10 API cagrisi olusturur. Cok widget'li panolar icin daha uzun araliklar kullanin.

Onbellekleme stratejisi

Redis onbellek yapisi

Pano verisi Redis'te su anahtar deseni ile onbelleklenir:

setget:dashboard:{workspace_id}:{widget_type}:{config_hash}
BilesenAciklama
workspace_idBu verinin ait oldugu calisma alani
widget_typeWidget tur tanimlayicisi
config_hashWidget'in filtre ve kapsam yapilandirmasinin SHA-256 ozeti

Bu, ayni turde farkli yapilandirmalara sahip iki widget'in ayri onbellekler tutmasini saglar.

Onbellek TTL

Veri turuVarsayilan TTLGerekce
Gorev sayilari ve dagilimlari5 dakikaTazelik ile sorgu maliyetini dengeler
Aktivite verisi (isi haritasi, zaman cizelgesi)10 dakikaAktivite kaliplari yavas degisir
Dongu ve modul ilerlemesi5 dakikaSprint verisi makul olcude guncel olmali
Saglik puanlari15 dakikaBilesik puanlar daha az sik guncelleme gerektirir
Calisma alani ozet sayilari10 dakikaBelge sayimlari buyuk calisma alanlarinda maliyetlidir
Kullaniciya ozel veri (hosgeldiniz, son ogeler)2 dakikaKisisel veri taze hissettirmeli

Onbellek gecersiz kilma

Onbellek su senaryolarda otomatik olarak gecersiz kilinir:

TetikleyiciKapsam
Gorev durum degisikligiO projeye filtrelenmis widget'lar
Gorev olusturma veya silmeCalisma alanindaki tum gorev tabanli widget'lar
Dongu baslama veya bitmeDonguyle ilgili widget'lar
Manuel yenileme dugmesine tiklanmaMevcut panodaki tum widget'lar
Widget yapilandirma degisikligiIlgili widget

Gercek zamanli ve onbelleklenmis veri karsilastirmasi

SetGet panolari gercek zamanli kesinlik yerine guvenilirligi onceliklendirir:

BoyutDavranis
Veri gunceliligiWidget'lar en fazla TTL kadar eski veri gosterir (tipik olarak 5-15 dakika)
TutarlilikBir panodaki tum widget'lar biraz farkli zaman noktalarindan veri gosterebilir
Gercek zamanli guncellemelerPanolara WebSocket uzerinden iletilmez (bildirimlerden farkli olarak)
Zamanlayici widget'iZaman takibi zamanlayicisi Redis uzerinden gercek zamanlidir, ancak zaman kaydi toplamalari onbelleklenir

WARNING

Iki takim uyesi ayni panoya biraz farkli zamanlarda bakarsa, farkli sayilar gorebilir. Bu beklenen bir durumdur ve bir sonraki yenileme dongusunde cozulur.

Performans degerlendirmeleri

Buyuk calisma alanlari

50.000'den fazla gorevi olan calisma alanlari daha yavas toplama sorgulari yasayabilir. Azaltma stratejileri:

StratejiAciklama
Widget'lari projelere kapsamlandirinHer sorgu icin veri kumesini azaltir
Daha uzun yenileme araliklari kullaninSorgu sikligini azaltir
Liste widget'larini sinirlayinYaklasan Teslim Tarihli Gorevler, Sicak Gorevler, Durmus Gorevler'de daha dusuk maks oge ayarlayin
Cok sayida ozel sorgu widget'indan kacininOzel sorgular onceden optimize edilmis toplama hatlarini atlar

MongoDB dizinleri

Pano toplama sorgulari performans icin su dizinlere dayanir:

KoleksiyonDizinKullanan
issues{ workspace_id: 1, state_id: 1 }Durum dagilimi, istatistik cubugu
issues{ workspace_id: 1, priority: 1 }Oncelik dagilimi
issues{ workspace_id: 1, assignee_id: 1 }Atanan kisi dagilimi, is yuku
issues{ workspace_id: 1, due_date: 1 }Yaklasan teslim tarihli gorevler, teslim tarihi takvimi
activity_log{ workspace_id: 1, created_at: -1 }Aktivite zaman cizelgesi, isi haritasi
time_logs{ workspace_id: 1, logged_date: 1 }Zaman takibi widget'lari
cycle_issues{ cycle_id: 1 }Dongu ilerlemesi, risk kartlari
module_issues{ module_id: 1 }Modul ilerlemesi

API hiz sinirlamasi

Pano API uc noktalari kotuye kullanimi onlemek icin hiz sinirlidir:

Uc nokta deseniHiz siniri
GET /api/workspaces/{slug}/dashboards/{id}/widgetsDakikada 60 istek
GET /api/workspaces/{slug}/dashboards/{id}/widgets/{widget_id}/dataDakikada 120 istek
POST /api/workspaces/{slug}/dashboards/{id}/refreshDakikada 10 istek

API uc noktalari

MetodUc noktaAciklama
GET/api/workspaces/{slug}/dashboards/Tum panolari listele
POST/api/workspaces/{slug}/dashboards/Pano olustur
GET/api/workspaces/{slug}/dashboards/{id}/Pano detaylarini al
PATCH/api/workspaces/{slug}/dashboards/{id}/Pano ayarlarini guncelle
DELETE/api/workspaces/{slug}/dashboards/{id}/Panoyu sil
GET/api/workspaces/{slug}/dashboards/{id}/widgets/Panodaki widget'lari listele
POST/api/workspaces/{slug}/dashboards/{id}/widgets/Widget ekle
PATCH/api/workspaces/{slug}/dashboards/{id}/widgets/{widget_id}/Widget yapilandirmasini guncelle
DELETE/api/workspaces/{slug}/dashboards/{id}/widgets/{widget_id}/Widget'i kaldir
GET/api/workspaces/{slug}/dashboards/{id}/widgets/{widget_id}/data/Widget verisini al
POST/api/workspaces/{slug}/dashboards/{id}/refresh/Tum widget'lari zorla yenile

Sorun giderme

BelirtiOlasi nedenCozum
Widget eski veri gosteriyorOnbellek TTL'i henuz dolmadiManuel Yenile dugmesine tiklayin
Widget "Veri yok" gosteriyorKapsam filtresi tum sonuclari haric tutuyorWidget yapilandirma kapsamini kontrol edin
Widget yavas yukleniyorProje kapsami olmadan buyuk veri kumesiWidget'i belirli bir projeye kapsamlandirin
Pano yuklemesi uzun suruyorCok fazla widget ayni anda veri aliyorWidget sayisini azaltin veya yenileme araligini artirin
Widget'lar arasi sayilar farkliWidget'lar farkli zamanlarda onbelleklenmisOnbellek zaman damgalarini hizalamak icin panoyu yenileyin

Ilgili sayfalar