Ana içeriğe atla

Çok kiracılık

 Bu eğitimde Norhwind'i çok kiracılı bir uygulamaya dönüştüreceğiz.

Çok kiracılı yazılımın Vikipedi'deki tanımı aşağıda verilmiştir:

Yazılım Çoklu Kiracılığı, bir yazılımın tek bir örneğinin bir sunucuda çalıştığı ve birden fazla kiracıya hizmet verdiği bir yazılım mimarisini ifade eder. 

 

Kiracı, yazılım örneğine belirli ayrıcalıklarla ortak erişimi paylaşan bir kullanıcı grubudur. Çok kiracılı bir mimariyle bir yazılım uygulaması, her kiracıya verileri, yapılandırması, kullanıcı yönetimi, kiracının bireysel işlevselliği ve işlevsel olmayan özellikleri dahil olmak üzere bulut sunucusunun özel bir paylaşımını sağlayacak şekilde tasarlanmıştır. Çoklu kiracılık, ayrı yazılım örneklerinin farklı kiracılar adına çalıştığı çoklu örnek mimarileriyle tezat oluşturur. ---Wikipedia

Kullanıcılar da dahil olmak üzere her tabloya bir TenantId alanı ekleyeceğiz ve kullanıcının yalnızca kendi kiracısına ait kayıtları görmesine ve değiştirmesine izin vereceğiz. 

Böylece kiracılar sanki kendi veritabanlarıyla çalışıyormuş gibi izole bir şekilde çalışacaklar.

Çok kiracılı uygulamaların yönetim maliyetinin azalması gibi bazı avantajları vardır. 

Ama aynı zamanda bazı dezavantajları da var. 

Örneğin, tüm kiracı verileri tek bir veritabanında olduğundan, kiracı verilerini tek başına alamaz veya yedekleyemez. 

İşlenecek daha fazla kayıt olduğundan performans genellikle azalır.

Bulut uygulamalarının artan eğilimi, sanallaştırma maliyetinin azalması ve geçiş gibi özellikler sayesinde çok örnekli uygulamaların kurulumu artık daha kolay.

Kişisel olarak çok kiracılı uygulamalardan kaçınırdım. 

Bence müşteri başına bir veritabanına sahip olmak daha iyi.

Ancak bazı kullanıcılar bu özelliğin nasıl uygulanacağını sordu. 

Bu eğitim, çoklu kiracılığın yanı sıra bazı gelişmiş Serenity konularını bonus olarak açıklamamıza yardımcı olacaktır.

MultiTenancy adında yeni bir proje oluşturun

Visual Studio'da Dosya -> Yeni Proje'ye tıklayın. Serene şablonunu seçtiğinizden emin olun . Ad olarak MultiTenancy yazın ve Tamam'a tıklayın .

Solution Explorer'da MultiTenancy.Web adında bir proje görmelisiniz .

Film Eğitimi projesine devam edeceğiz.

Bu blogdaki popüler yayınlar

Code generetor ile oluşturulan dosyaların açıklamaları

  1. Sunum (Presentation/UI) Katmanı (Kullanıcı arayüzü - HTML, TypeScript, Dialog, Grid) 🔹 XYZPage.ts 📌 Ne İşe Yarar? Kullanıcı arayüzünün TypeScript tarafındaki tanımıdır. Serenity'nin Dialog ve Grid bileşenlerini içeren bir TypeScript sınıfıdır. 📌 Çok Katmanlı Mimarideki Yeri: Sunum Katmanı (Presentation Layer) Kullanıcıdan veri almak ve göstermek için kullanılır. 🔹 XYZGrid.ts 📌 Ne İşe Yarar? Tablo (Grid) yapısını oluşturur ve verileri listeler. Filtreleme, sıralama ve sayfalama işlemleri için kullanılır. columnsKey ile hangi kolonların gösterileceğini belirler. 📌 Çok Katmanlı Mimarideki Yeri: Sunum Katmanı (Presentation Layer) Kullanıcının verileri listelediği ve etkileşimde bulunduğu yerdir. 🔹 XYZDialog.ts 📌 Ne İşe Yarar? CRUD (Create, Read, Update, Delete) işlemlerini yöneten pencere (modal) bileşeni Kullanıcı form aracılığıyla veri ekler, günceller veya siler. XYZForm.cs ile birlikte çalışır. 📌 Çok Katmanlı Mimarideki Yeri: Sunum Katmanı (Presentation Layer) Kull...

Serenity Web Nedir?

   Serenity  , açık kaynak teknolojileri üzerine kurulu bir ASP.NET Core/TypeScript uygulama platformudur. Standart kodlardan kaçınarak, tekrarlanan görevlere harcanan zamanı azaltarak ve en iyi yazılım tasarımı uygulamalarını uygulayarak bakım maliyetlerini düşürürken geliştirmeyi kolaylaştırmayı amaçlamaktadır. Serene  , Serenity platformunu temel alan ücretsiz, açık kaynaklı başlangıç ​​uygulama şablonumuzdur.  Bu dokümantasyon aracılığıyla eğitimimiz ve diğer örnekler için esas olarak Serene'yi kullanacağız. StartSharp  , ücretli müşterilerimize sunduğumuz premium uygulama şablonudur.  Daha gösterişli bir temaya ve bazı ekstra özelliklere  ek olarak Serene'deki her şeyi içerir  .  İkisi de Serenity platformunu temel alıyor. Adında Ne Var Serenity'nin sözlük anlamları  barış  ,  rahatlık  ve  sakinliktir  . Serenity ile bunu başarmaya çalışıyoruz.  Umarız yükledikten ve kullandıktan sonra siz de bu ş...