Ana içeriğe geç

YTCC nasıl çalışır

YTCC sunucusu birlikte çalışan ayrı programlardan oluşur. Bir süreç yöneticisi bunları başlatır, izler ve duranı yeniden başlatır.

Sunucuda ne çalışır​

Bazı servisler her zaman çalışır: web arayüzü, ekranları saklayan proje sunucusu, değerleri tarayıcılara gönderen canlı veri sunucusu ve değerleri servisler arasında taşıyan mesaj yolu.

Bir proje başlayınca YTCC o projenin ihtiyaç duyduğu servisleri ekler:

  • projenin yapılandırmasından okunan her etkin sürücü için ayrı bir süreç
  • alarm servisi
  • değerleri arşivleyen tarihçe yazıcıları
  • her etkin sunucu betiği için ayrı bir süreç
  • sistem sinyallerinin servisi ve elektrik projelerinde şebeke topolojisi

Bu süreçleri ana sayfanın Processes (Türkçe arayüzde: Processler) sekmesinde görürsünüz.

Bir şey arızalanınca​

Her sürücü kendi sürecinde çalışır. Bir sürücü hata yüzünden durursa diğer sürücüler ve servisler çalışmaya devam eder, süreç yöneticisi duran sürücüyü yeniden başlatır. İlk yeniden başlatmadan önce 1 saniye bekler, sonra 2, 5, 10 ve 30 saniye; bundan sonra sınırsız olarak 30 saniyede bir dener. 60 saniye sorunsuz çalışan sürücüde sayım yeniden 1 saniyeden başlar.

Sürümü proje verisiyle uyuşmadığı için duran süreç yeniden başlatılmaz, arızalı olarak işaretlenir.

Ekranlar değerleri nasıl alır​

Bir ekran sunucudan yalnız gösterdiği sinyalleri ister; sunucu da her tarayıcıya yalnız istediği değerleri gönderir. 50 sinyalli bir ekran, projede kaç sinyal olursa olsun o 50 değeri alır.

Daha önce açtığınız sayfalar arka planda hazır bekler; onlara döndüğünüzde canlı değerler hemen görünür. Gizli sayfalar toplamda 20.000 sinyale kadar canlı kalır. Bunun üstünde en uzun süredir kullanılmayan sayfa değer almayı bırakır; ona döndüğünüzde önce bayat olarak işaretlenmiş son değerleri gösterir, sonra güncellenir. Arka plana aldığınız bir tarayıcı sekmesi 2 saniye sonra değer almayı bırakır.

Tarayıcının sunucuyla bağlantısı koparsa en çok yaklaşık 30 saniyelik aralarla yeniden bağlanmayı dener. Bağlantı yokken komut düğmeleri kullanılamaz ve çalışma ekranının üstünde bir bant görünür. Bağlantı gelince ekran sinyallerini yeniden ister.

Veri nerede tutulur​

  • Yapılandırma (sürücüler, cihazlar, sinyaller, alarmlar): projenin PostgreSQL veritabanında.
  • Tarihçe ve alarm kayıtları: projenin kendi tarihçe veritabanında, o da PostgreSQL'de. Sunucu durduğunda etkin olan alarmlar sunucu açılınca buradan geri yüklenir.
  • Ekranlar ve kullanıcılar: sunucudaki dosyalarda. Bkz. Proje modeli.