IIs 网站应用程序与虚拟目录的区别及高级应用说明(文件分布式存储方案)

对于IIS网站,大伙用的比较多,就不啰嗦了。


今天和说说大伙比较少使用的"IIS应用程序”和虚拟目录的区别及高级应用场景,文件分布式存储方案。

 

1:IIS网站:

一个网站,基本就是一个站点,绑定N个域名,绑定N个IP,然后设定一个应用程序池,基本就跑起来了,一个网站可以新建无数个应用程序和虚拟目录。

一行就带过了,大伙都懂,不多说。

 

2:应用程序(同一域名下程序的独立开发,独立部署的最佳应用策略):

 

我们发现,IIS网站下,可以新建“应用程序”,如下图:

 

点击就是如下界面了:


接下来就举例说下应用程序的应用场景:

 

举例一:比较通常的一个网站,就分前台和后台(系统管理站点的后台)

 

1:域名的分布:

而对于后台,通常情况下,我们部署之后的域名:

基本不会用:admin888.cyqdata.com

多数是采用:www.cyqdata.com/admin888

 

采用后者的原因,多数是因为同一个域名下,cookie好办事,或传统就差不多这样的原因。

 

2:IIS对应的部署:

 

A:传统的部署方式:

 

要采用第二种方式,如果你不知道应用程序的应用场景,你可能会采取如下的部署方式:

将网站发布到www.cyqdata.com主域名的根目录下,文件夹名叫:admin888,顺着路径而为。

这样部署,就等于开发时是独立,最终运行是一个站点在运行,当然修改后台程序,也会影响到前台应用程序。

 

B:使用应用程序方式部署:

 

如果你看到上图的第二张图片,你可以看三个点:

1:别名:(相当于目录名,之后访问路径就变成:http://www.xx.com/别名)

2:应用程序池:可以独立一个应用程序域运行,后台的程序修改,将不再影响前台。

 

3:物理路径:可以将后台放到任意路径,而不用非要放在主站的根目录。

 

从这三点,可以看出,应用程序方式的部署,才是推荐选择的方式。

 

PS:事实上,默认整个站点,就是一个默认的应用程序。

 

举例二:常见的站点频道:

比如:

http://www.cyqdata.com/news 代表一个新闻频道

http://www.cyqdata.com/sport 代表一个体育频道

 

后期还可能有多种频道上线,而且互相独立开发,在最终部署时,应用程序部署这种方式的威力就出来了。

 

3:虚拟目录(分布式文件存储方案之一)

 

简单说明:

虚拟目录,是可以把一个目录,映射到网络上的任意共享目录。

虚拟目录,在IIS6,看似和应用程序差不多,好像也是虚拟路径。

 

其实虚拟目录的功效,于在后期的分布式文件存储:

 

举例一:将大量的静态Html独立到一个系统盘符:

如果在程序中,需要生成了大量的html,而我们程序中,通常路径就是根目录下:"/Html/..."

通过把Html设置成虚拟目录,可以把存储文件移到其它盘。

 

就算你想删除时,直接格式化就OK了。

 

假设如果你文件是直接存在网站根目录下的Html文件夹,想删除你就头大了。

 

网络节点分布,提升硬盘IO性能:

除了这种映射,你还可以映射到网络不同的硬盘,要知道IO的瓶颈,就是单块硬盘的极限,通过映射到不同的硬盘,性能的提升点就是:单块硬盘的极限*N块硬盘。

而这一切的扩展,只是简单的虚拟目录映射,再移动相应的文件,而程序上,并不需要动刀,简单就完成文件的分布式存储。

 

这种方式,可以横向扩展,可以通过不停的加独立硬盘,方便性的提升性能。

 

好了,本文:IIs 网站应用程序与虚拟目录的区别及高级应用说明,基本介绍就到这里了,谢谢收看。..

版权声明:本文原创发表于博客园,作者为路过秋天,原文链接:

http://www.cnblogs.com/cyq1162/archive/2013/05/06/3063278.html

时间: 2024-11-08 19:19:30

IIs 网站应用程序与虚拟目录的区别及高级应用说明(文件分布式存储方案)的相关文章

Windows7下“/”应用程序中的服务器错误。allowDefinition='MachineToApplication' 的节是错误的。如果在 IIS 中没有将虚拟目录配置为应用程序,则可能导致此错误。

原文 http://www.cnblogs.com/wsxg/archive/2012/02/19/2358031.html 错误显示 "/"应用程序中的服务器错误. 配置错误 说明: 在处理向该请求提供服务所需的配置文件时出错.请检查下面的特定错误详细信息并适当地修改配置文件. 分析器错误消息: 在应用程序级别之外使用注册为 allowDefinition='MachineToApplication' 的节是错误的.如果在 IIS 中没有将虚拟目录配置为应用程序,则可能导致此错误.

在Windows 7中IIS配置Asp.Net虚拟目录的方法及常见错误

在Win7中IIS配置Asp.Net虚拟目录的方法总结! 一.右键[网站],点击[添加虚拟目录]或[虚拟应用程序],笔者建议最好建立虚拟应用程序,因为这就跟一个网站差不多,不用考虑路径问题. 二.直接输入相应内容选择路径就行了,如果要指定[应用程序池],需要先建立一个新的[应用程序池],配置与网站差不多了. 三.运行后,如果出现以下错误:HTTP 错误 500.19 一般是web.config配置问题,很简单,找到以下内容 <system.webServer>        <defau

Asp.net实现IIS控制管理---Web虚拟目录的创建及管理

asp.net|iis|web|创建|控制|虚拟目录 (一)CreateWebDir.cs 使用示例       string sServer = "localhost";      string VirtualDir = "Bug2004";                   \\虚拟目录      string PathDir    = @"D:\myWebDirTest\Bug2000"   \\物理目录    IISManager ii

图片无法显示,唯有加上端口方能显示,例如下面的图片,在iis中配置了虚拟目录

问题描述 图片无法显示,唯有加上端口方能显示,例如下面的图片,在iis中配置了虚拟目录 解决方案 浏览器的开发者模式,看一下图片的请求地址

使用用于SQL Server的IIS虚拟目录管理实用工具

iis|server|虚拟目录 在使用 HTTP 访问 Microsoft? SQL Server? 2000 数据库之前,必须安装适当的虚拟目录.在运行 Microsoft Internet 信息服务 (IIS) 的计算机上,使用用于 SQL Server 的 IIS 虚拟目录管理实用工具(在"SQL Server 工具"程序组中单击"在 IIS 中配置 SQL XML 支持")定义并注册新的虚拟目录,即所谓的虚拟根.该实用工具指示 IIS 在新的虚拟目录和 Mi

使用用于 SQL Server 的 IIS 虚拟目录管理实用工具

iis|server|虚拟目录 使用用于 SQL Server 的 IIS 虚拟目录管理实用工具在使用 HTTP 访问 Microsoft? SQL Server? 2000 数据库之前,必须安装适当的虚拟目录.在运行 Microsoft Internet 信息服务 (IIS) 的 计算机上,使用用于 SQL Server 的 IIS 虚拟目录管理实用工具(在"SQL Server 工具"程序组中单击"在 IIS 中配置 SQL XML 支持")定义 并注册新的虚拟

使用用于SQL IIS虚拟目录管理实用工具

在使用 HTTP 访问 Microsoft SQL Server 2000 数据库之前,必须安装适当的虚拟目录.在运行 Microsoft Internet 信息服务 (IIS) 的计算机上,使用用于 SQL Server 的 IIS 虚拟目录管理实用工具(在"SQL Server 工具"程序组中单击"在 IIS 中配置 SQL XML 支持")定义并注册新的虚拟目录,即所谓的虚拟根.该实用工具指示 IIS 在新的虚拟目录和 Microsoft SQL Server

IS 中没有将虚拟目录配置为应用程序

问题描述 在应用程序级别之外使用注册为allowDefinition='MachineToApplication'的节是错误的.如果在IIS中没有将虚拟目录配置为应用程序,则可能导致此错误.如何修改? 解决方案

asp.net子应用程序/虚拟目录如何共享session

我做的asp.net mvc应用程序要作为一个子应用程序部署到几个站点中,需要在本应用程序中获取站点的session值. 已经使用了session state server,并设置了machine key,但还是不行. 这个问题折腾了整整一天的时间,下面是解决办法. 建立一个HttpModule /// <summary>/// 这个模块需要放到整个管道的前端/// </summary>public class SessionShareModule : IHttpModule{