Aracılığıyla paylaş


Windows Server AppFabric Ürününe Giriş

Windows Server AppFabric, Web uygulamaları ve orta katman hizmetler için gelişmiş barındırma, yönetim ve önbelleğe alma becerileri sağlayarak Windows Server'ın işlevselliğini geliştirir. AppFabric barındırma özellikleri Internet Information Services (IIS), Windows İşlem Etkinleştirme Hizmeti (WAS) ve .NET Framework 4'e hizmet yönetimi uzantıları ekler. Windows Communication Foundation (WCF) ve Windows Workflow Foundation (WF) tabanlı hizmetlerin dağıtılmasını, yapılandırılmasını ve yönetilmesini kolaylaştıran Barındırma Hizmetleri ve Barındırma Yönetimi araçları da buna dahildir. AppFabric önbelleğe alma özellikleri, Windows Server'a dağıtılmış ve belleğe yüklenmiş bir nesne önbelleği ekleyerek yüksek performanslı .NET uygulamalarının ve özellikle de ASP.NET uygulamalarının genişlemesini kolaylaştırır.

Günümüzde pek çok uygulama türünde, yalnızca başkalarının hizmet olarak kullanabileceği şekilde sunulan bazı işlevlerden birçok hizmet için karmaşık bir koordinasyon sağlayan uygulamalara kadar uzanan bir çerçevede hizmetler ve hizmet yönelimli mimariler yerleşik olarak kullanılmaktadır. Bu hizmet dünyasına kolayca katılabilen ve kullanım alanı bulan uygulamalar geliştirme gereksinimi hiç bu kadar fazla olmamıştı. Modern uygulamaların merkezinde genellikle veri yönelimli bir işlem bileşeni (web sitesinde sipariş alma gibi) ve buna ek olarak orta katman üzerinden bu işlemleri yöneten, yüksek düzeyde dağıtılmış bir iş mantığı bulunur.

Orta katman hizmetleri dağıtma, yönetme ve izleme süreci, genellikle geliştiricilerin bir barındırma altyapısı oluşturmalarını ve uygulamaları için özel dağıtım çözümleri oluşturmak üzere zaman harcamalarını zorunlu kılarak yoğun bir iş gücü kullanımı gerektirir. Uygulama dağıtıldıktan sonra bile geliştiricilerin sık sık yapılandırma dosyalarında el ile değişiklikler yaparak uygulamayı yönetmeleri gerekir. AppFabric, hizmet dağıtımını kolaylaştırarak, özelleştirilebilir bir izleme çözümü sağlayarak ve zengin bir yönetim araç seti sunarak bu yükün hafifletilmesine yardımcı olabilir. Bu becerilerin tümüne IIS yönetim konsolundan veya Windows PowerShell için AppFabric modülleri aracılığıyla komut dosyası kullanılarak doğrudan erişilebilir.

Geliştiriciler ayrıca hızla yanıt veren, yüksek düzeyde ölçeklenebilir uygulamalar sunma gereksinimleriyle giderek daha fazla karşı karşıya kalmaktadır. Bu durum yalnızca orta katman hizmetler için değil, aynı zamanda Web uygulamaları, mobil uygulamalar ve masaüstü uygulamaları için de geçerlidir. Uygulamalardan beklentiler arttıkça (örneğin bir Web sitesi popüler olduğunda veya paylaşılan hizmetiniz başka gruplar tarafından kullanılmaya başlandığında), yüksek maliyetli veri erişimi genellikle uygulama performansında ve ölçeğinde önemli kısıtlamalara neden olmaktadır. Önbelleğe alma işlemi veritabanı dünyasında oldukça başarılı bir çözüm olmakla birlikte aynı zamanda yüksek performanslı Web uygulamaları ve bileşik hizmetler sunmada temel bir bileşen olarak algılanmaktadır. Her iki durumda da, yoğun veri kullanan .NET uygulamalarınızda ve hizmetlerinizde performansı ve ölçeklenebilirliği artırmak için AppFabric Önbelleğe Alma Hizmetleri'ni kullanabilirsiniz. AppFabric Önbelleğe Alma Hizmetleri, uygulamanızdan veya veri katmanlarınızdan bağımsız olarak kolayca ve esnek şekilde ölçeklenebilen (genişleme/daralma), yüksek kullanılabilirliğe sahip, dağıtılmış ve belleğe yüklenmiş bir önbellek sağlar. ASP.NET ve PowerShell ile sorunsuz olarak tümleştirilebilen ve .NET API içeren AppFabric Önbelleğe Alma Hizmetleri, önbelleğe alma özelliğini çözümlerinizde en az düzeyde kod karışıklığı ve tutarlı bir yönetim deneyimiyle kullanabilmenizi sağlar.

Aşağıdaki bölümlerde, orta katman hizmetlerin barındırılmasında ve Web uygulamalarının ölçeklendirilmesinde karşılaşılan bu zorluklar incelenmekte ve AppFabric tarafından sağlanan çözümler açıklanmaktadır.

AppFabric konusunda daha fazla bilgi için bkz. Windows Server Geliştirici Merkezi (https://go.microsoft.com/fwlink/?LinkId=182970).

Barındırma Hizmetleri

Zorluk

WCF ve WF tabanlı hizmetler içeren bir uygulama için bir barındırma ortamı oluşturulması karmaşık ve zaman alan bir işlemdir. IIS/WAS bu tür uygulamalar için güçlü bir barındırma ortamı sağlamakla birlikte, sunduğu özelliklerden yararlanılabilmesi için ciddi miktarda bir geliştirme çalışması, özel dağıtım çözümleri ve el ile yapılandırma yordamları gerekmektedir. Bir çözüm dağıtılıp yapılandırıldıktan sonra hizmetlerin yönetilmesi zorlu bir konu olabilir.

Çözüm

AppFabric Barındırma Hizmetleri, WCF ve WF tabanlı hizmetlerinizi kolayca çalışır duruma getirebilmenizi sağlar. Ek barındırma özellikleri geliştirmeden AppFabric’in barındırma becerilerinden yararlanabilirsiniz. Barındırma Hizmetleri, WAS barındırma ortamı için varsayılan bir yapılandırma sağlayarak WAS'nin barındırma becerilerini artırır. Barındırma Hizmetleri, İş Akışı Yönetimi Hizmeti tarafından sağlanan kilitleme/yeniden deneme, otomatik başlatma, dayanıklı süreölçerler ve komut sırası gibi özellikleri içerir.

AppFabric Barındırma Yönetimi denetim, izleme ve sorgu becerileriyle, çalışır durumdaki iş akışı örneklerinizi çok daha kolay şekilde yönetmenize olanak veren araçlar sunar. WAS'yi ve WAS içinde barındırılan uygulamaları standart bir yolla da yapılandırabilirsiniz. Barındırma Yönetimi araçları hizmet uç noktalarının adresini yapılandırmanıza, otomatik başlatma etkinleştirmesini yönetmenize ve güvenlik ve performans ayarlarını yapılandırmanıza olanak verir.

AppFabric'in barındırma özellikleriyle ilgili daha fazla bilgi için bkz. Barındırma Kavramları.

AppFabric Belleğe Yüklenmiş Önbellek Platformu

Zorluk

Sık kullanılan uygulama verilerini saklamak için belleğe yüklenmiş bir önbellek kullanılması, uygulama performansını artırmak için uzun zamandır kullanılan bir yöntemdir. Bellekten okumak ve belleğe yazmak, diskten okumaya ve diske yazmaya göre kat kat hızlıdır. Ancak belleğe yüklenmiş önbellek boyutu genellikle uygulamanın çalıştığı bilgisayarda kullanılabilir olan bellek miktarıyla sınırlıdır ve bilgisayar belleğinin yapısı gereği geçici olması nedeniyle, belleğe yüklenmiş önbellekte saklanan veriler tümüyle kaybolabilir. Belleğe yüklenmiş önbelleği tümüyle kullanabilen uygulamaların geliştirilmesinde bir başka kısıtlama da, bellek içindeki önbellekte yer alan nesnelerin depolanması ve alınması için kullanılabilecek bir uygulama programı arabirimi (API) bulunmamasıdır. Önbellek yönetimi işlevselliğinin bulunmaması nedeniyle, önbelleğe alma özelliğinden yararlanabilen uygulamalar da geliştirilemeyebilir.

Çözüm

AppFabric önbelleğe alma özellikleri, birden çok bilgisayarın bellek kapasitesini birleştirilmiş tek bir önbellek kümesinde bir araya getirebilmenizi sağlayarak .NET uygulamalarınızı kolayca ve düşük maliyetlerle ölçeklendirmenize yardımcı olabilir. Bu özellikler Önbelleğe Alma Hizmetleri, Önbellek İstemcisi ve Önbellek Yönetimi araçlarıdır. Yüksek düzeyde ölçeklenebilir olan AppFabric Önbelleğe Alma Hizmetleri, çok sayıda bilgisayarın, tek bir birleştirilmiş önbellek olarak kullanılabilen bir önbellek kümesinin düğümleri şeklinde yapılandırılmasına olanak verir. Önbelleğe Alma Hizmetleri, önbelleğe alınan verilerinizin kopyalarını ayrı önbellek konaklarında depolayarak bu verilerin her zaman kullanılabilir olmasını sağlayan, yüksek kullanılabilirliğe sahip bir özelliktir. Çok sunuculu bir kümede yüksek kullanılabilirlik sağlandığında, önbellek sunucusu kullanılamıyor olsa da uygulamanız önbelleğe alınmış verilerini yine de kullanabilir.

Önbelleğe Alma Hizmetleri, belleğe yüklenmiş önbelleğin .NET tabanlı uygulamanızla kullanımını tümleştirmek üzere eksiksiz şekilde belgelenmiş kapsamlı bir API kümesi sağlar. Bunun yanı sıra, oturum durumunu önbellekte depolamak için ASP.NET ile sorunsuz tümleştirme sağlanmaktadır. Böylece, ASP.NET sitelerinin performansını ve ölçeğini hızlı bir şekilde geliştirmek için uygun maliyetli bir yöntem sağlanabilir. AppFabric Önbellek Yönetimi, belleğe yüklenmiş önbelleğin oluşturulması, yapılandırılması ve yönetimi için eksiksiz bir yönetim araçları kümesi sağlamaktadır. AppFabric'in önbelleğe alma ve barındırma özellikleri tümleşik bir yükleme paketinde bulunmaktadır.

Daha fazla bilgi için bkz. Windows Server AppFabric Önbelleğe Alma Özellikleri.

Kalıcı İş Akışları

Zorluk

Windows Workflow Foundation'da durum bilgisi olan ve uzun süreli çalışan hizmetleri çalışır duruma getirmek zorlayıcı olabilir. İş akışlarının dayanıklı olması için kalıcılık sağlamak isterseniz bir kalıcılık deposu ve ardından bir şema oluşturmanız, sonra da bir kalıcılık veritabanı kurup bunu yapılandırmanız gerekebilir. Üretim ortamında, çağrılmış dayanıklı iş akışlarının örneklerini kullanan bir veritabanınız olabilir. Bu iş akışı örneklerinin bazıları askıya alınmış, bazılarıysa çalışıyor olabilir. Sistemde hangi işlemlerin gerçekleştirildiğini görmek zor olabilir.

Çözüm

AppFabric ile kalıcılığı hemen elde edebilirsiniz. AppFabric Barındırma Hizmetleri, .NET Framework 4 ile birlikte gelen SQL kalıcılık deposunu kullanır ve uygulamalarınızın yararlanabileceği varsayılan bir kalıcılık veritabanı oluşturarak, durum bilgisi olan hizmetlerinizi bir dizi bilgisayarda ölçeklendirmenize olanak verir. Kendi seçtiğiniz özel bir kalıcılık deposunu kullanabilirsiniz. AppFabric Barındırma Yönetimi ise kalıcılık veritabanındaki veya uzun süreli iş akışlarınızdaki etkinliği izlemek için gereksinim duyacağınız araçları sağlar.

AppFabric'teki kalıcılık özellikleriyle ilgili daha fazla bilgi için bkz. Kalıcılık Kavramları.

İzleme Hizmetleri

Zorluk

WCF ve WF tabanlı uygulamalarla çalışırken, hizmetlerin ve iş akışı örneklerinin ne durumda olduğunu her zaman göremezsiniz. Birden çok makinede hizmetleriniz ve iş akışlarınız varsa bunlar nereden etkinleştirilmektedir? Bunlardan kaçı etkinleştirilmektedir? Durumları nedir? Hatalar alıyor musunuz?

Çözüm

AppFabric Barındırma Hizmetleri ve Barındırma Yönetimi, çalışan WCF ve WF hizmetlerinin sistem durumunu izlemenize ve bunlarla ilgili sorunları gidermenize, ayrıca bu hizmetleri denetlemenize olanak verir. Bu işlemleri IIS Yöneticisi'nin AppFabric Panosu sayfasından gerçekleştirebilirsiniz. AppFabric Panosu, sisteminizin durumundan sürekli haberdar olmanızı sağlar. Verileri izlemek, iş akışı örneklerini daha iyi denetlemenize yardımcı olabilir. Bunun yanı sıra verilerin oluşturulduğu sorguları değiştirme ve uygulamalarınızın durumunu izlemek için yeterli veri toplarken bu işlemin performans maliyetini de uygun bir düzeyde tutmanızı sağlayan bir izleme düzeyi seçme esnekliğiniz bulunur. AppFabric izleme özelliği, .NET Framework'te sağlanan izleme özellikleri üzerine kuruludur.

Olaylar, Barındırma Yönetimi araçları aracılığıyla erişilebilen bir izleme veritabanında depolanır. İzleme katılımcısı olayları bir Windows için Olay İzleme (ETW) oturumuna yazar ve Olay Toplama Hizmeti ile AppFabric barındırma özellikleri bu olayları ETW oturumundan okuyarak yüksek performanslı veri işlemleri gerçekleştirir. AppFabric barındırma özellikleri yüklenirken, yükleme programı, üretim ortamınızda kullanılacak biçimde tasarlanmış olan yapılandırılabilir bir izleme altyapısı kurar. .NET Framework 4 ile birlikte gelen SQL izleme deposunu veya kendi seçtiğiniz özel bir depoyu kullanabilirsiniz. AppFabric'i, izleme veritabanını otomatik olarak temizleyecek biçimde yapılandırabilirsiniz.

AppFabric'teki izleme özellikleriyle ilgili daha fazla bilgi için bkz. İzleme Kavramları.

Yönetim Araçları

Zorluk

BT uzmanları ve geliştiriciler bir üretim ortamında WCF veya WF tabanlı hizmetlerle çalışırken güçlü olduğu kadar kullanımı kolay olan araçlara gereksinim duymaktadır. Bir uygulamayı yönetmek için çeşitli araçlar kullanmanız ve yapılandırma dosyalarını el ile düzenlemeniz gerekebilir. Hizmetlerinizle ilgili verileri göremeyebilir ve yapılandırmanız üzerinde denetime sahip olamayabilirsiniz. Birden çok yapılandırma dosyasına erişmeniz, Hizmet Yapılandırma Düzenleyicisi'ni kullanarak bunları açmanız ve bu dosyaların yapılandırma öğelerini düzenlemeniz gerekebileceği için, bir uygulamanın yapılandırmasını nasıl ayarlayacağınızı belirlemek zor olabilir.

Çözüm

AppFabric barındırma özellikleri, hizmet yönetimi açısından IIS Yöneticisi'ne zengin bir uzantılar kümesi sağlamaktadır. AppFabric Panosu ile sistem durumunu görebilir ve tek bir yapılandırma kullanıcı arabirimi sayesinde hizmet yapılandırmanız üzerinde denetime sahip olabilirsiniz. Kalıcı yapılan iş akışı örneklerini gerektiğinde sürdürebilir, askıya alabilir, iptal edebilir veya sonlandırabilir ve hizmetleri başlatabilir ya da durdurabilirsiniz. Bu kullanıcı arabirimi IIS Yöneticisi'ne dayalı olduğu için, WCF ve WF tabanlı hizmetler için de Web uygulamalarındakine benzer bir yönetici deneyimi yaşar ve benzer araçlara sahip olursunuz. Bir araçtan bir başkasına geçmek veya yapılandırma dosyalarını el ile düzenlemek yerine, uygulama yönetimiyle ilgili birçok görevi IIS Yöneticisi içinden gerçekleştirebilirsiniz.

IIS Yöneticisi'nin AppFabric uzantısından bir sunucudaki hizmetlerin listesini kolayca oluşturabilir ve sorguları değiştirerek verilerinizi hızla ayarlayabilirsiniz. Çalışır durumda veya çalışmayan durumda olan iş akışı örneklerinizin sayısını görebilirsiniz. Kalıcı yapılan iş akışı örneklerini veya izleme iş akışı örneklerini görüntüleyebilirsiniz.

IIS Yöneticisi'nden, bir hizmetin yapılandırmasını tek bir iletişim kutusundan görebilirsiniz. Bu iletişim kutusundan bir hizmetin yapılandırma ayarlarını ve bir uygulamanın, Web sitesinin veya sunucunun bu hizmet tarafından devralınabilecek varsayılan yapılandırma ayarlarını belirleyebilirsiniz. AppFabric Barındırma Hizmetleri, .NET Framework 4'ün davranış birleştirme becerilerinden yararlanır; böylece, bir hizmetin yapılandırma özelliklerini IIS hiyerarşisindeki herhangi bir düzeyden devralabilmesi sağlanır. Birçok yapılandırma senaryosunda, Barındırma Hizmetleri, yapılandırma ayarlarını ilgili Web.config dosyasına doğrudan erişmenize gerek kalmadan belirlemenize olanak verir.

Barındırma Yönetimi araçları, uygulamaları PowerShell konsolundan veya yapılandırma işlemini otomatik olarak gerçekleştirmenize olanak veren komut dosyaları aracılığıyla yönetebilmenizi sağlayan Windows PowerShell cmdlet'leri içerir. Bu PowerShell modülleri AppFabric Barındırma Hizmetleri için ApplicationServer modülünü, AppFabric Önbelleğe Alma Hizmetleri için ise DistributedCacheAdministration ve DistributedCacheConfiguration modüllerini içerir.

AppFabric hem AppFabric barındırma hem de AppFabric önbelleğe alma özelliklerini yüklemek için bir kurulum sihirbazı ile bu özellikleri yapılandırmak için bir yapılandırma sihirbazı içerir. AppFabric'i, WebPI kullanarak da yükleyebilirsiniz.

AppFabric yönetim araçlarıyla ilgili daha fazla bilgi için bkz. Yönetim Araçları.

Hizmetleri Geliştirme

Zorluk

Yeni bir ürün geliştirirken genellikle yeni özelliklerinden yararlanmak veya ürünle tümleştirmek için uygulamanızı geliştirmenin yeni yollarını öğrenmeniz gerekir.

Çözüm

AppFabric Barındırma Hizmetleri ile çalışırken, uygulamanın Windows İşlem Etkinleştirme Hizmeti (WAS) kullanılarak IIS/WAS barındırma ortamında barındırılabilmesini sağlamak dışında, uygulama oluşturma konusunda hiçbir özel gereklilik bulunmamaktadır. Visual Studio®'daki varsayılan proje şablonları (WCF Hizmet Uygulaması ve WCF İş Akışı Hizmet Uygulaması) IIS/WAS desteği sunmaktadır ve herhangi bir değişiklik yapılmasına gerek kalmadan AppFabric tarafından yönetilirler. Şu anda WAS'de barındırılan uygulamalarınız varsa, bunlar hiçbir değişiklik yapılmadan AppFabric'e dağıtılırlar.

AppFabric'te kullanılmak üzere uygulama dağıtmayla ilgili daha fazla bilgi için bkz. Uygulama Geliştirme.

Hizmetleri Dağıtma

Zorluk

Hizmetin aynı yapılandırma kullanılarak bir sunucudan bir başkasına ya da birden çok sunucuya dağıtılması zor olabilir.

Çözüm

AppFabric Barındırma Hizmetleri, hizmetleri kendi barındırma ortamına dağıtmak için Microsoft Web Dağıtım aracından yararlanır (Web'de Dağıtma aracı da denir). Web'de Dağıtım aracı hem IIS hem de Visual Studio ortamlarıyla tümleşik olduğu için, doğrudan Visual Studio içinden hizmetleri kolaylıkla paketleyip dağıtabilir veya önceden paketlenmiş uygulamaları doğrudan IIS Yöneticisi'nden dağıtabilirsiniz.

AppFabric'te uygulama dağıtmayla ilgili daha fazla bilgi için bkz. Tipik Dağıtımlar ve Uygulama Dağıtma.

Barındırma Hizmetleri ve Yönetim Genişletilebilirliği

Zorluk

Önceden paketlenmiş çözümlere dayalı uygulamalar geliştirmek zor olabilir.

Çözüm

AppFabric barındırma özellikleri, özel çözümler oluşturmak üzere genişletilebilecek noktalar sunmaktadır. IIS Yöneticisi'ne bir modül ekleyebilir ve AppFabric Barındırma Yönetimi cmdlet'lerini kullanarak kendi kullanıcı arabirimi araçlarınızı oluşturabilirsiniz. Uygulamanızın hedef kullanıcıları için özel bir kullanıcı arabirimi oluşturabilirsiniz. Kendi cmdlet'lerinizi oluşturabilir veya kanallar kullanarak AppFabric cmdlet'lerini gereksinimleriniz doğrultusunda birleştirebilirsiniz. Genişletilebilirlik noktaları Barındırma Hizmetleri'nin izleme ve kalıcılık becerilerinde de kullanılabilir. Özel bir izleme veya kalıcılık deposu kullanabilirsiniz.

AppFabric'te genişletilebilirlikle ilgili daha fazla bilgi için bkz. AppFabric Genişletilebilirliği.

  2011-12-05