https://www.youtube.com/watch?v=TY2eAMgG4CI
Rad Server Tanıtım Webinarı
Rad Server : Kendi kurumumuza özel bulut sunucu oluşturmamıza yarayan bir platformdur.
Önceden bir tane veritabanı sunucumuz oluyordu bu veritabanı sunucumuzu bir network ortamında paylaşıyorduk. Daha sonra clientlar ile hazırladığımız arayüzle veritabanı sunucusuna bağlanıp veri okuyup veri yazma işlemini gerçekleştiriyorduk. Özellikle mobil sektörün gelişmesi ile beraber mobil platformlarda veri okuyup yazma işi tamamen web serverlara kalmış durumda yani veritabanını direkt bağlantı sağlamıyorsunuz araya bir web servis orta katmanı aracılığıyla kullanıcılarımız arasında iletişim sağlıyoruz sunucudan veri alıyoruz veri yazıyoruz diğer kullanıcılarla iletişime geçiyoruz vb. işlemleri gerçekleştirebiliyoruz.
Birkaç çeşit web servis var ;
soap web servis var xml olarak data alıp veriyorlar.
Json formatında veri alıp veren Restful web servisler var.
Şu anda web servis olarak kullanabileceğiniz en verimli web servisler Restful Json web servislerdir diyebiliriz. Datasnap kısmında çok sayıda Restful web servis uygulaması yapmıştık. Delphi tarafında Rad Server ve Datasnap arasındaki farklardan biraz bahsedeyim. Rad Server’ın bir önceki ismi EMS’ti (Enterprise mobility services) yani kurumsal mobil servisler aslında yaptığı işleri daha net bir şekilde açıklıyor.
Buna bir örnek verelim. Diyelim ki siz bir mobil kurumsal uygulama hazırladınız ilk yapacağınız ekran kullanıcı giriş ekranıdır. Normal şartlarda bir web servis yazıp kullanıcı adı şifre kontrolü olabilir fakat bu iş burda kalmıyor ilerleyen süreçlerde çeşitli talepler geliyor örneğin apple ve google’ın size verdiği analitik bilgileri görmek isteyebilirsiniz, kullanıcıları bir web arayüzünden yönetmek isteyebilirsiniz kullanım performansları ile ilgili bazı bilgilere ulaşmak isteyebilirsiniz bu tip durumlarda yapı giderek büyüyor ve karmaşık hale geliyor. Mobil tarafta özellikle kullanıcılarınıza bildirim göndermek isteyebilirsiniz ki bildirim işlemi fazlasıyla kompleks bir yapı Rad Server bize bu tip servisleri hazır olarak sunuyor. Kullanıcılarınız her seferinde üye olmak yerine Google, Facebook şifreleriyle giriş yapmak gibi bir sürü şey isteyebilir. Bu varyasyonları arttırabiliriz. Rad Server bize hazır bir bulut sunucu alt yapısı sağlıyor. Bulut sunucudan anladığımız; diyelim biz bir mobil uygulama hazırladık şu anda 100 kişi kullanıyor normal standart bir sunucu işimizi görecekti. Uygulama tuttu 10.000 kişi indirdi uygulama kasmaya başlar, 100.000 kişi indirdi uygulama çöker normal şartlarda ama bulut altyapısı kullanan sunucular Load Balancing yapıyorlar ve iş yükünü çeşitli makinelere dağıtıyorlar ya da çeşitli algoritmalarla bekletme işlemleri yapıyorlar. Bu şekilde kişi sayısı artsa da uygulamanızı kullanmaya devam edebiliyorsunuz.
Rad Server Özellikleri
Ölçeklenebilirlik sağlar : Gelen kullanıcı sayısına göre trafiği yönetme imkanı sağlar.
Veritabanlarının internete açık olmayan bir platformda durmasını sağlayabiliyoruz : Veritabanı bağlantısını kesip sadece lokalden haberleşerek Rad Serverla clientlar arasındaki bağlantıyı sağlayabiliyoruz.
Bulut servisle haberleşme içinde direkt bulut servise bağlanmıyoruz. Rad Server’a bağlanabiliyoruz. Rad Server gidip bizim yerimize bulut servislere bağlanabiliyor.
Rad Server için gerekli olan bileşenler;
Rad Studio, Delphi or C++ Builder Enterprise or Arthitect
Testing and Deployment Licenses
FireDAC Supported Databases
Deployment Platforms
Web Servers
Rad Server Teknik Mimarisi
Burda gördüğümüz gibi client’larımız mevcut Clientlarımızda HTTP ve HTTPS protokolleri vasıtasıyla Rest API’lerini Rad Server’a iletiyor Rad Server LAN üzerinden TCP ile interbase yada diğer veri tabanlarıyla haberleşiyor. Burada dikkat etmeniz gereken şey Rad Server kullanıcı bilgilerini interbase veri tabanında tutuyor yani dolayısıyla Rad Server’ın yanında Mssql, Oracle ve başka veri tabanları kullanabilirsiniz ama interbase kurulmalı. Daha sonra Rad Server Console vasıtasıyla analitik bilgileri ve diğer bilgilerini web arayüzünde ya da konsol üzerinden işleme imkanı mevcut oluyor.
Rad Server kullanarak bir uygulama yaparken hangi aşamalardan geçiyoruz
- Restful web service API oluşturuyoruz.
- API’mizi diğer bulut servisleriyle haberleştirebiliyoruz.
- Oluşturduğumuz servisleri çeşitli uygulamalara ekleyebiliyoruz.
- Kullanıcı yönetiminde Rad Server üzerinden yapma imkanımız var.
- Rad Serverla hazırladığımız uygulamayı amazon, azure gibi çok sayıda bulut sunucu üzerinde çalıştırma imkanımız var.
- Kullanıcıların analitik bilgilerini yani Rad Serverda giriş çıkış yapan kullanıcıların analitik bilgilerini API kullanım bilgilerini gizleyebileceğimiz bir portal ekranımız var. Web tabanlı ekrandan girip web server performansını anlık değerlendirmelerini izleyebiliyoruz.
- Bir tane client ekranı hazırlayabiliyoruz Delphi, C++’da ya da Json Restful API kullanabilen herhangi bir programlama ortamında kullanma imkanımız mevcut.
File > New > Others > Rad Server > Rad Server Package seçiniz. Açılan ekranda >Create package with resource seçiyoruz ve next tıklayarak sonraki ekrana geçiyoruz.
Dosya adını giriyoruz biz WebinarTest dedik >Next tıklayarak sonraki ekrana geçiyoruz.
Hangi işlemler kullanılsın kısmı için hepsini işaretliyoruz ve >next diyoruz.
Connection name için kendinize uygun olanı seçiniz. Bağlantılı tablolarınızı da seçip finish diyoruz ve Delphi bizim için hazır bir Rad Server uygulaması oluşturdu. Çalıştırıyoruz açılan form ekranında Open Browser’a tıklayarak sunucunun çalışıp çalışmadığını kontrol edebiliriz. Open console’a tıklayarak web konsolumuzu açabiliriz kullanıcı bilgilerini görebileceğimiz. Burada istenilen kullanılan bilgilerimizi standart modda Rad Server kurulma esnasında geliyor bize, gerekli alanları dolduruyoruz. Enter’a bastıktan sonra Rad Server ana ekranımız açılıyor.
Sol tarafta gördüğümüz menüde Rad Server ile ilgili yönetim bilgilerine ulaşabileceğimiz seçenekler bulunuyor.
Rad Server’a giriş yapmış kullanıcıları görebiliyoruz.
Kullanıcıları gruplandırabiliyoruz.
Analitik özelliği mobil uygulama ve clientlar ile ilgili detaylı bilgiler verir.