https://www.terfigys.com katkılarıyla.
Tarih: 06.08.2026 21:43 Okunma: 22 Okuma Süresi: 3 dk Kategori: Sınavlar

Haber Özeti

🏆 1. İl & Kurum Otorite Rozetleri (Bölgesel ve Kurumsal Prestij)Kamu personeli kendi ilinin ve bakanlığının sıralamasında öne çıkmaktan gurur duyar.👑 İl Şampiyonu (City Champion)Koşul: Bulunduğu i...

Detaylar

Metin Boyutu:

🏆 1. İl & Kurum Otorite Rozetleri (Bölgesel ve Kurumsal Prestij)

Kamu personeli kendi ilinin ve bakanlığının sıralamasında öne çıkmaktan gurur duyar.

  1. 👑 İl Şampiyonu (City Champion)
    • Koşul: Bulunduğu ilin liderlik tablosunda son 7 gündür 1. sırada olmak.
    • Görsel/Efekt: Profil resminin etrafında altın ışıltılı halo çerçeve (Gold Glow Border) ve taç ikonu.
  2. 🏛️ Kurum Sancaktarı (Institutional Flagbearer)
    • Koşul: Kendi kurumunda (Örn: Adalet Bakanlığı, MEB, Sağlık vb.) bu ay en çok doğru soru çözen ilk 3 kişiden biri olmak.
    • Görsel/Efekt: Kırmızı-mavi kurumsal rozet.
  3. 🎯 İl Derecesi (%5'lik Dilim)
    • Koşul: İldeki aktif adayların en başarılı %5'lik dilimine girmek.
    • Görsel/Efekt: Gümüş defne yaprağı rozeti.

🔥 2. Azim, Çalışkanlık ve Seri Rozetleri (Daily Habit & Retention Drivers)

Kullanıcıyı HER GÜN siteye sokan ve günün farklı saatlerinde çalışmaya teşvik eden rozetler.

  1. Alev Serisi (7 / 30 / 100 Gün Streak)
    • Koşul: Aralıksız her gün en az 20 soru çözmek (7 gün = Bronz Alev, 30 gün = Gümüş Alev, 100 gün = Altın Alev).
    • Görsel/Efekt: Isı/Alev ikonu, liderlik tablosunda isminin yanında görünür.
  2. 🌙 Gece Kuşu (Night Owl)
    • Koşul: Gece 23:00 - 04:00 saatleri arasında toplam 200'den fazla doğru soru çözmek.
    • Görsel/Efekt: Koyu mor / neon ay-yıldız rozeti.
  3. 🌅 Şafak Memuru (Early Bird)
    • Koşul: Sabah 05:00 - 07:30 saatleri arasında test çözerek güne başlamak.
    • Görsel/Efekt: Güneş doğuşu ikonu.

📜 3. Mevzuat ve Soru Uzmanlık Rozetleri (Subject Mastery)

Adayların belirli mevzuatlarda uzmanlaştıklarını kanıtlayan itibar nişanları.

  1. ⚖️ 657 DMK Üstadı
    • Koşul: 657 Sayılı Devlet Memurları Kanunu sorularında %90 üzeri başarı oranı ve 300+ doğru cevap.
    • Görsel/Efekt: Terazi ikonu ve mühür rozeti.
  2. 🏛️ Anayasa Hakimi
    • Koşul: T.C. Anayasası ve İdare Hukuku testlerinde 500+ doğru cevap.
    • Görsel/Efekt: Klasik sütun/mahkeme ikonu.
  3. 🎯 Keskin Nişancı (%100 İsabet)
    • Koşul: En az 20 soruluk bir denemede sıfır yanlışla %100 başarı elde etmek.
    • Görsel/Efekt: Hedef tahtası rozeti.

🚀 4. Sosyal Rekabet & Viral Büyüme Özellikleri (Viral Loops)

  1. 📸 "İl 1.'si Oldum!" Paylaşım Kartı (Sharable Social Card)
    • Kullanıcı İl 1.'si olduğunda veya 30 Günlük Alev Serisi yakaladığında "Instagram / WhatsApp Durumunda Paylaş" butonu çıkar.
    • Tek tıkla estetik bir başarı kartı PNG'si üretir (mockup_studio.php altyapımızla entegre) ve siteden doğrudan virallik sağlar.
  2. 🛡️ Meydan Okuma Rozeti (Duo Challenge)
    • duo/ modülünde arkadaşına veya aynı ilden birine meydan okuyup 3 düello kazanan adaya verilen rozet.
  3. 👑 Tüm Zamanlar Efsanesi (Hall of Fame)
    • Platform tarihinde toplam 5.000+ doğru cevabı geçen meşhur adaylar için VIP Altın isim etiketi.

💻 Teknik Mimari Nasıl Olacak?

  1. Veritabanı (user_badges & badges):
    • badges: Rozet adı, açıklaması, ikonu, renk sınıfı (gd-badge-primary-xs, gd-badge-warning vb.).
    • user_badges: user_id, badge_id, earned_at.
  2. Tetiksör (Trigger Helper):
    • log_answer.php veya test tamamlama anında gd_check_user_badges($userId) fonksiyonu arka planda çalışarak kriter sağlandığında anında rozet kazandırır.
  3. UX Entegrasyonu:
    • il_siralamasi.php ve leaderboard.php listelerinde kullanıcı isimlerinin yanında küçük Zippi rozet ikonları görünür. Tıklayınca rozet açıklama pop-up'ı açılır.

🤔 Sizce Hangi Rozetlerle Başlayalım?

Sizce ilk aşamada İl Şampiyonu + Alev Serisi + 657 DMK Üstadı üçlüsüyle başlayıp kodlamaya geçelim mi, yoksa aklınızda farklı bir rozet fikri var mı?

Etiketler: terfigys
Bu içerikte bir sorun mu var?

Yorumlar 1

A
aaa 10.08.2026 20:57

🛠️ TerfiGYS — Veritabanı İndeksleme ve Optimizasyon Görev Listesi

Bu doküman, sistem performansı ve sorgu hızlarını 100.000+ aktif kullanıcı yükünde bile milisaniyeler seviyesinde tutmak için hazırlanmış Veritabanı İndeksleme Task Listesidir.

📌 Task 1: user_answers Tablosu İndeks ve Liderlik Optimizasyonu

Amaç: Milyonlarca satıra ulaşan soru çözümlerinin liderlik tablosu, rozetler ve kullanıcı istatistiklerinde kasmamasını sağlamak.

  • 1.1. Bileşik İndeks (User & Doğruluk & Tarih):
    • user_answers tablosuna (user_id, is_correct, answered_at) bileşik indeksi eklenmesi.
    • SQL: ALTER TABLE user_answers ADD INDEX idx_user_correct_date (user_id, is_correct, answered_at);
  • 1.2. Soru Bazlı Çözüm İndeksi:
    • Soru istatistikleri için (question_id, is_correct) indeksi eklenmesi.
    • SQL: ALTER TABLE user_answers ADD INDEX idx_question_correct (question_id, is_correct);
  • 1.3. Etkilenen / Hızlanacak Sayfalar:
    • leaderboard.php
    • il_siralamasi.php
    • user_badges_tab.php
    • user_stats_tab.php

📌 Task 2: user_legislation_read & legislation Okuma İndeksleri

Amaç: mevzuat.php ve quick_facts.php sayfalarındaki "kaç madde okundu" alt sorgularının her sayfa açılışında kasmadan anında getirilmesini sağlamak.

  • 2.1. Kullanıcı-Mevzuat Okuma Unique İndeksi:
    • user_legislation_read tablosuna (user_id, legislation_id) çifti için benzersiz indeks tanımlanması.
    • SQL: ALTER TABLE user_legislation_read ADD UNIQUE INDEX idx_ulr_user_leg (user_id, legislation_id);
  • 2.2. Mevzuat Kategori & Aktiflik İndeksi:
    • legislation tablosuna (category_id, is_active) bileşik indeksi eklenmesi.
    • SQL: ALTER TABLE legislation ADD INDEX idx_leg_cat_active (category_id, is_active);
  • 2.3. Etkilenen / Hızlanacak Sayfalar:
    • mevzuat.php
    • legislation.php
    • quick_facts.php

📌 Task 3: questions & categories Soru Bankası İndeksleri

Amaç: Soru listeleme, filtreleme ve deneme sınavı çekme sorgularında tam tablo taramasını engellemek.

  • 3.1. Soru Durum & Kategori İndeksi:
    • questions tablosuna (category_id, status, is_trashed) bileşik indeksi eklenmesi.
    • SQL: ALTER TABLE questions ADD INDEX idx_quest_cat_status (category_id, status, is_trashed);
  • 3.2. Kurum / Branş Filtreleme İndeksi:
    • categories tablosuna (institution_id, is_active, type) bileşik indeksi eklenmesi.
    • SQL: ALTER TABLE categories ADD INDEX idx_cat_inst_type (institution_id, is_active, type);
  • 3.3. Etkilenen / Hızlanacak Sayfalar:
    • soru.php
    • questions_list.php
    • antrenman.php

📌 Task 4: Metin Aramaları İçin FULLTEXT İndeks Altyapısı

Amaç: LIKE '%arama%' ile yapılan ve mecburen veritabanındaki tüm metinleri baştan sona okuyan yavaş aramaları FULLTEXT INDEX ile milisaniyelere düşürmek.

  • 4.1. Mevzuat Adı ve İçeriği FULLTEXT İndeksi:
    • legislation veya categories tablolarındaki arama alanlarına FULLTEXT indeksi eklenmesi.
    • SQL: ALTER TABLE categories ADD FULLTEXT INDEX ft_cat_name (name);
    • SQL: ALTER TABLE legislation ADD FULLTEXT INDEX ft_leg_title (title);
  • 4.2. Soru Metni FULLTEXT İndeksi:
    • questions tablosuna soru arama için FULLTEXT indeksi eklenmesi.
    • SQL: ALTER TABLE questions ADD FULLTEXT INDEX ft_quest_text (question_text);
  • 4.3. Etkilenen / Hızlanacak Sayfalar:
    • mevzuat.php arama kutusu
    • category_documents.php
    • questions_list.php arama çubuğu

📌 Task 5: Log & Arşiv Tabloları Bakım & İndeks Görevi

Amaç: user_activity_logs, audit_logs ve bot_logs gibi sürekli şişen tabloların panel sorgularını ve veritabanı yedeği almayı yavaşlatmasını önlemek.

  • 5.1. Log Tarih İndeksleri:
    • user_activity_logs tablosuna (user_id, created_at) indeksi eklenmesi.
    • SQL: ALTER TABLE user_activity_logs ADD INDEX idx_ual_user_date (user_id, created_at);
    • SQL: ALTER TABLE audit_logs ADD INDEX idx_audit_date (created_at);
  • 5.2. Otomatik Arşivleme Cron Yapılandırması:
    • 90 günden eski log verilerini ana tablodan audit_logs_archive ve user_activity_logs_archive tablolarına taşıyacak rutin job kontrolü.
  • 5.3. Etkilenen / Hızlanacak Sayfalar:
    • Panel denetim logları, kullanıcı detay hareket geçmişi ve otomatik veritabanı yedekleme (cron/database_backup_job.php).

📌 Task 6: Güvenlik ve Soru Koruma Altyapısı (UUID & Anti-Scraping)

Amaç: Soru bankasının botlar tarafından sırayla taranarak çalınmasını önlemek, kullanıcı bazlı güvenliği artırmak ve SEO uyumunu korumak.

  • 6.1. Soru & Test Tablolarına UUID Sütunu Ekleme:
    • questions ve legislation tablolarına uuid (VARCHAR 36) sütununun eklenmesi ve benzersiz indeks tanımlanması.
    • SQL: ALTER TABLE questions ADD COLUMN uuid VARCHAR(36) UNIQUE AFTER id;
  • 6.2. URL & API Parametrelerinin UUID/Slug Yapısına Geçirilmesi:
    • Üye paneli ve test ekranlarında pure UUID kullanımı (/antrenman?session=f47ac10b-58cc...).
  • 6.3. Dinamik Kullanıcı Filigranı (Watermark) Entegrasyonu:
    • Çözüm ekranlarında kullanıcı T.C. No / Kullanıcı Adı bilgisi ile dinamik canvas şeffaf filigran gösterimi (Ekran görüntüsü / hırsızlık takibi).
  • 6.4. Rate Limiting (Aşırı İstek Sınırlaması):
    • Oturum bazlı 1 dakikada max 30 soru getirme limiti.
  • 6.5. SEO Uyumlu Hibrit URL Mimarisi (SEO Slug + UUID):
    • Kamusal mevzuat ve döküman sayfalarında SEO zayıflamasını önlemek için /mevzuat/{seo-slug}-{uuid_short} (Örn: /mevzuat/657-sayili-dmk-disiplin-cezalari-f47ac10b) mimarisi.
    • Böylece Google anahtar kelimeleri okurken, botların sırayla içerik çekmesi (scraping) engellenir.

Bir Yorum Bırakın