Web deploy 2.0 vs. Web Farm Framework 2.0 - iis

After reading Scott Gu's newest post, I wondered how Web Deploy and Web Farm Framework are different?

Web deploy is how the applications (websites) and server configurations are synchronised between different machines in the farm.
The farm itself is created and managed by WFF - ergo it's not an either/or: WFF relies on Web deploy for part of it's synchronising operation.

In the WebDeploy article ScottGu has stated the below which should clear the confusion:
"Web Deploy can be used together with the Microsoft Web Farm Framework to enable automated deployment across a web-farm. You can install and configure Web Deploy on a primary server in a Web Farm Framework cluster – and the secondary servers within the web farm cluster will then monitor and clone any applications you deploy with it."
So basically, use WebDeploy to update your primary server in the cluster and the WFF will then replicate the same across the entire cluster.

Related

Asp.Net Web API and Azure Web Role

I created a web application using Asp.net web api in azure and i want to consume it with a web role application ! what is the difference between web application and web role and what should i do ! thanks
An azure webapp is a website you host on azure as a normal website.
you don't really have a lot you can do with the machine. Just see it as normal website hosting.
A webrole is part of a cloud service. Which is a bit more flexible. Web roles allow you to install for example applications on the vm you are running your application. The state of the machine is not held so if the machine goes down you lose all data you stored on it. In fact you upload a sort of zip package with the application inside. This installs the app and when something goes wrong a new machine is started and the package is installed again on that new machine. This is also 'an issue' with azure websites.
Here is a good link with some more info + with info on virtual machines which is in fact a layer lower, meaning that you have more control over the machine.
https://azure.microsoft.com/en-us/documentation/articles/choose-web-site-cloud-service-vm/
In most of the scenarios Azure Web App is what you should use. It provides all the capabilities required for almost all websites.
However, Web App may not work in few scenarios e.g.,
When you have a dependency on software or library that you need to bundle with your code
You need to RDP into the machine for some purpose
...
In those scenarios you will have to depend on Web role.

Web API app with OWIN 'SystemWeb' on Azure App Service

I am creating app which uses Identity 2.1.0 framework in .NET. I started project in Visual Studio 2015 as Empty Web App (template). Now, I use Microsoft.AspNet.WebApi.Owin, and also Microsoft.Owin.Host.SystemWeb NuGet packages in my project. I understand that OWIN is a specification made to avoid monolithic frameworks and to specify how smaller application components interact with servers. However, I have requirement to deploy to Azure App Services.
I have found examples (blogs) where people deploy OWIN Web Api app as self-hosted to the Azure Cloud Services worker role. But I don't want this, as I don't use Cloud Service.
Since I am using Microsoft.Owin.Host.SystemWeb, am I going to be able to deploy this to Azure App service (which I assume manages internal IIS instance) ?
.NET ecosystem newbie here - so please excuse me for any possible redundancies in the question.
Microsoft.Owin.Host.SystemWeb is designed for hosting in IIS and all Azure App Service web apps are hosted in IIS, so this is exactly what you want (In fact, self-hosting likely won't work with Azure App Service).

MVC App Deployed to Azure - Do I have to use SQL Server Azure

I am completely new to Microsoft Azure. I have just about completed an MVC 5 application that uses SQL Server 2012. I'd ilke to deploy my app to Azure but have it hit a SQL Server 2012 database that is hosted someone else (another commercial web host). Is this possible, or do I have to use SQL Azure for my app?
Yes you can use another vendor but you'll have to check if they allow outside traffic in (usually on port 1433). Even if they allow this, you'll have to think about the possible latency issue caused by such an architecture.

Asp.Net Web Forms application deployment to Production server

What is the recommended method/tool to deploy an ASP.NET Web Forms project and/or a Database Project to production server ?
Currently I'm using VS2012 web deploy publishing feature.
According to the following MSDN article:
http://msdn.microsoft.com/en-us/library/dd394698(v=vs.110).aspx
web deploy is the recommended method/tool.

Deploy ASP.NET MVC 4 to Staging and Eventually Windows Azure

I have an ASP.NET MVC 4 app. This will needs to be deployed to an internal IIS server, which is a Windows Server 2008 machine, for testing. Eventually, we will deploy the app to Windows Azure as a Web Role. From my understanding, there is a way to have a "private" cloud on Windows Server 2008.
What is the recommended way to deploy an ASP.NET MVC 4 app to a "private cloud"? Please bear in mind that this app will eventually go to the public version of Windows Azure.
Thank you,
If you eventually want to deploy on Azure, I would strongly recommend that you test on Azure. If this is a commercial project that you're working with and you want to do one month's testing that will cost you approximately $160 for two instances (you really do need to test with two instances). Compare that to the hourly rate of whoever has to setup and support the server and you're probably already ahead.
You can run your site on premise with IIS, SQL and even AppFabric caching (Velocity) and all of these are similar to what you get in Azure, but not the same. Windows Azure SQL DB (WASD) in particular has different restrictions to and a different performance profile than an on premise SQL Server DB. If you want to use Azure Storage, there is no on premise version of this.
I would get a Windows Azure VM (or doesn't matter, it can be an server on premises) and deploy through web deploy.
Here is a great blog post on how to get a VM up and running with web deploy with only one script:
Script Out Everything - Initialize Your Windows Azure VM for Your Web Server with IIS, Web Deploy and Other Stuff
I used Windows Server 2012 there and PowerShell 3.0. So, there might be a few things that are not available in Windows Server 2008 R2. However, I heard that PowerShell 3.0 is now available for down level OSes. If that's true, I would also recommend you to get it installed at the first place because it has new capabilities.

Resources