Aracılığıyla paylaş


Gelişmiş Kurumsal Web Dağıtımı

tarafından Jason Lee

Bu öğreticide, birçok kurumsal dağıtım senaryosunda gerekli veya istenen çeşitli görevlerin nasıl gerçekleştirileceği gösterilir.

Bu öğreticilerin İtalyanca çevirisi için adresini ziyaret edin http://www.lucamorelli.it.

Bu, Fabrikam, Inc. adlı kurgusal bir şirketin kurumsal dağıtım gereksinimlerini temel alan bir dizi öğreticinin bir parçasını oluşturur. Bu öğretici serisi, ASP.NET MVC 3 uygulaması, Windows Communication Foundation (WCF) hizmeti ve veritabanı projesi gibi gerçekçi bir karmaşıklık düzeyine sahip bir web uygulamasını temsil etmek için örnek bir çözüm ( Contact Manager çözümü) kullanır.

Bu öğreticilerin temelindeki dağıtım yöntemi, derleme işleminin her hedef ortama uygulanan derleme yönergelerini içeren ve ortama özgü derleme ve dağıtım ayarlarını içeren iki proje dosyası tarafından denetlendiği Derleme sürecini anlama bölümünde açıklanan bölünmüş proje dosyası yaklaşımını temel alır. Derleme zamanında, ortama özgü proje dosyası, tam bir derleme yönergeleri kümesi oluşturmak için ortama özgü belirsiz proje dosyasıyla birleştirilir.

Senaryoya Genel Bakış

Bu öğreticiler için üst düzey senaryo , Kurumsal Web Dağıtımı: Senaryoya Genel Bakış bölümünde açıklanmıştır. Bu öğreticiye başlamadan önce bu konuyu gözden geçirmenizi öneririz.

Bu Öğreticiyi Kullanma

  • Bu öğreticideki konuların her biri bağımsızdır ve kurumsal dağıtım senaryolarında ortaya çıkan belirli bir sınamayı veya sorunu ele alır. Bu konuları belirli bir sırada yapmanız gerekmez. Ancak, bu öğretici bazı gelişmiş görevleri kapsar. Bu nedenle, bu içerikten en iyi şekilde yararlanmak için Kurumsal öğreticideki Web Dağıtımı'nın kapsadığı kavramlar ve teknikler hakkında bilgi sahibi olmanız gerekir.
  • Bu öğretici şu konuları içerir:
  • "Durum" Dağıtımı gerçekleştirme. Birçok senaryoda, herhangi bir değişiklik yapmadan önce önerilen dağıtımın hedef ortam veya mevcut içerik üzerindeki etkisini belirlemek isteyeceksiniz. Bu konuda, herhangi bir değişiklik yapmadan bir hedef ortama içerik dağıtmış gibi günlük dosyaları ve veritabanı güncelleştirme betikleri oluşturmak için nasıl "durum" dağıtımı çalıştırabileceğiniz açıklanır. Bu kaynakları analiz etmek, canlı dağıtım öncesinde olası sorunları belirlemenize yardımcı olabilir.
  • Birden Çok Ortam için Veritabanı Dağıtımlarını Özelleştirme. Bir veritabanı projesini birden çok hedefe dağıttığınızda, genellikle her hedef ortamın dağıtım özelliklerini özelleştirmek istersiniz. Örneğin, test ortamlarında genellikle her dağıtımda veritabanını yeniden oluştururken, hazırlama veya üretim ortamlarında verilerinizi korumak için artımlı güncelleştirmeler yapma olasılığınız çok daha yüksektir. Bu konu başlığında, her hedef ortam için ortama özgü dağıtım yapılandırması (.sqldeployment) dosyası oluşturarak bu özellik değişikliklerini dağıtım mantığınıza nasıl ekleyebileceğiniz açıklanır.
  • Test Ortamlarına Veritabanı Rolü Üyelikleri Dağıtma. Sürekli tümleştirme (CI) derlemesinin ve bir test ortamına dağıtılması gibi her dağıtımda bir veritabanını yeniden oluştururken, genellikle veritabanı rolü üyeliklerini her seferinde yapılandırmanız gerekir. Örneğin, genellikle web uygulamanızla ilişkili uygulama havuzu kimliğine izin vermeniz gerekir. Bu konuda, dağıtım mantığınıza dağıtım sonrası SQL betiği ekleyerek bu işlemi nasıl otomatikleştirebileceğiniz açıklanır.
  • Üyelik Veritabanlarını Kurumsal Ortamlara Dağıtma. ASP.NET üyelik veritabanları, dağıtım sürecini karmaşık hale getiren çeşitli özelliklere sahiptir. Örneğin, yalnızca şema dağıtımı veritabanını işlemsel olmayan bir durumda bırakır. Çoğu senaryoda, her hedef ortamda doğrudan bir üyelik veritabanı oluşturmak tercih edilir. Ancak, bir üyelik veritabanı dağıtmanız gerekiyorsa bu konu başlığında, doğası gereği zorlukları karşılamak için kullanabileceğiniz yaklaşımlardan bazıları açıklanmaktadır.
  • Dosya ve Klasörleri Dağıtımdan Dışlama. Bazı senaryolarda, web paketinizin içeriğini belirli hedef ortamlara uyarlamak isteyeceksiniz. Örneğin, istemci tarafı hata ayıklamayı desteklemek için bir test ortamına dağıtırken JavaScript kitaplıklarının tam sürümlerini eklemek, ancak hazırlama veya üretim ortamına dağıtırken kitaplıkların küçültülmüş sürümlerini kullanmak isteyebilirsiniz. Bu konuda, belirli dosya ve klasörleri paket oluşturma işleminin dışında nasıl tutabileceğiniz açıklanmaktadır.
  • Web Dağıtımı ile Web Uygulamalarını Çevrimdışına Alma. Bir hazırlama veya üretim ortamına çözüm dağıttığınızda, dağıtım işlemi süresi boyunca web uygulamalarınızı genellikle çevrimdışı duruma getirmek istersiniz. Bu konuda, dağıtım işleminin başlangıcında web uygulamanıza nasılApp_offline.htm dosyası ekleyebileceğiniz ve sonunda nasıl kaldırabileceğiniz açıklanır. App_offline.htm dosyası yerindeyken, web uygulamasına göz atan tüm kullanıcılar otomatik olarak App_offline.htm dosyasına yönlendirilir.
  • MSBuild'den Windows PowerShell Betikleri Çalıştırma. Birçok dağıtım senaryosu, kayıt defterine özel olay kaynakları ekleme veya SQL Server örnekler arasında çoğaltma yapılandırma gibi daha karmaşık dağıtım sonrası eylemler gerektirir. Bu eylemler genellikle Windows PowerShell betikler aracılığıyla gerçekleştirilir. Bu konuda, derleme ve dağıtım işleminin bir parçası olarak bir Microsoft Build Engine (MSBuild) proje dosyasından Windows PowerShell betiklerin nasıl çalıştırıldığı açıklanmaktadır.
  • Paketleme İşlemi sorunlarını giderme. Web Yayımlama İşlem Hattı (WPP), web uygulaması projeleri için paketleme işlemi hakkında ayrıntılı bilgi oluşturmak için kullanabileceğiniz EnablePackageProcessLoggingAndAssert adlı bir MSBuild özelliği tanımlar. Bu konuda özelliğin ne yaptığı ve nasıl kullanılacağı açıklanmaktadır.

Temel Teknolojiler

Bu öğreticide, otomatik derleme ve web dağıtımlarını desteklemek için bu ürün ve teknolojilerin nasıl kullanılacağına odaklanmaktadır:

  • Visual Studio 2010 ve Team Foundation Server (TFS) 2010
  • MSBuild ve TFS Ekip Derlemesi
  • Internet Information Services (IIS) 7.5
  • IIS Web Dağıtım Aracı (Web Dağıtımı) 2.1
  • VSDBCMD.exe veritabanı dağıtım yardımcı programı

Bu Serideki Diğer Öğreticiler

Bu, kurumsal ölçekli web dağıtımıyla ilgili beş öğreticiden oluşan bir serinin bir parçasını oluşturur. Bunlar serideki diğer öğreticilerdir:

  • Kurumsal Senaryolarda Web Uygulamaları Dağıtma. Bu giriş niteliğindeki içerik, öğretici serisi için bağlamsal arka plan sağlar. Öğretici senaryosunu açıklar ve seri boyunca açıklanan görevlerin ve kılavuzların daha geniş bir Uygulama Yaşam Döngüsü Yönetimi (ALM) sürecine nasıl sığdığı gösterilir.
  • Kuruluşta Web Dağıtımı. Bu öğretici MSBuild proje dosyalarına, WPP'ye, Web Dağıtımına ve diğer ilgili teknolojilere kavramsal bir giriş sağlar. Karmaşık dağıtım işlemlerini yönetmek için bu araçları birlikte nasıl kullanabileceğinizi açıklar.
  • Web Dağıtımı için Sunucu Ortamlarını Yapılandırma. Bu öğreticide, Web Deployment Agent Hizmeti (uzak aracı) veya Web Dağıtımı İşleyicisi ve uzak veritabanı dağıtımı kullanılarak uzak web paketi dağıtımı gibi çeşitli dağıtım senaryolarını desteklemek için Windows sunucularının nasıl yapılandırılacağı açıklanır. Kendi ortamınız için uygun dağıtım yöntemini seçme konusunda rehberlik sağlar ve dağıtılan web uygulamalarını bir sunucu grubundaki tüm web sunucularında çoğaltmak için Web Farm Framework'ün (WFF) nasıl kullanılacağını açıklar.
  • Team Foundation Server'ın Web Dağıtımı için yapılandırılması. Bu öğreticide, BIR CI işleminin parçası olarak otomatik dağıtım ve belirli derlemelerin el ile tetiklenen dağıtımları dahil olmak üzere çeşitli dağıtım senaryolarını desteklemek için TFS'nin nasıl yapılandırıldığı açıklanır.