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 网站应用程序与虚拟目录的区别及高级应用说明,基本介绍就到这里了,谢谢收看。
 



     本文转自cyq1162 51CTO博客,原文链接:http://blog.51cto.com/cyq1162/1194266 ,如需转载请自行联系原作者







相关文章
|
9月前
|
人工智能 负载均衡 Java
Spring AI Alibaba 发布企业级 MCP 分布式部署方案
本文介绍了Spring AI Alibaba MCP的开发与应用,旨在解决企业级AI Agent在分布式环境下的部署和动态更新问题。通过集成Nacos,Spring AI Alibaba实现了流量负载均衡及节点变更动态感知等功能。开发者可方便地将企业内部业务系统发布为MCP服务或开发自己的AI Agent。文章详细描述了如何通过代理应用接入存量业务系统,以及全新MCP服务的开发流程,并提供了完整的配置示例和源码链接。未来,Spring AI Alibaba计划结合Nacos3的mcp-registry与mcp-router能力,进一步优化Agent开发体验。
3078 14
|
9月前
|
监控 Java 调度
SpringBoot中@Scheduled和Quartz的区别是什么?分布式定时任务框架选型实战
本文对比分析了SpringBoot中的`@Scheduled`与Quartz定时任务框架。`@Scheduled`轻量易用,适合单机简单场景,但存在多实例重复执行、无持久化等缺陷;Quartz功能强大,支持分布式调度、任务持久化、动态调整和失败重试,适用于复杂企业级需求。文章通过特性对比、代码示例及常见问题解答,帮助开发者理解两者差异,合理选择方案。记住口诀:单机简单用注解,多节点上Quartz;若是任务要可靠,持久化配置不能少。
853 4
|
9月前
|
NoSQL 算法 安全
redis分布式锁在高并发场景下的方案设计与性能提升
本文探讨了Redis分布式锁在主从架构下失效的问题及其解决方案。首先通过CAP理论分析,Redis遵循AP原则,导致锁可能失效。针对此问题,提出两种解决方案:Zookeeper分布式锁(追求CP一致性)和Redlock算法(基于多个Redis实例提升可靠性)。文章还讨论了可能遇到的“坑”,如加从节点引发超卖问题、建议Redis节点数为奇数以及持久化策略对锁的影响。最后,从性能优化角度出发,介绍了减少锁粒度和分段锁的策略,并结合实际场景(如下单重复提交、支付与取消订单冲突)展示了分布式锁的应用方法。
734 3
|
消息中间件 运维 数据库
Seata框架和其他分布式事务框架有什么区别
Seata框架和其他分布式事务框架有什么区别
509 153
|
存储 分布式计算 负载均衡
分布式计算模型和集群计算模型的区别
【10月更文挑战第18天】分布式计算模型和集群计算模型各有特点和优势,在实际应用中需要根据具体的需求和条件选择合适的计算架构模式,以达到最佳的计算效果和性能。
815 162
|
存储 缓存 NoSQL
分布式架构下 Session 共享的方案
【10月更文挑战第15天】在实际应用中,需要根据具体的业务需求、系统架构和性能要求等因素,选择合适的 Session 共享方案。同时,还需要不断地进行优化和调整,以确保系统的稳定性和可靠性。
683 55
|
消息中间件 架构师 数据库
本地消息表事务:10Wqps 高并发分布式事务的 终极方案,大厂架构师的 必备方案
45岁资深架构师尼恩分享了一篇关于分布式事务的文章,详细解析了如何在10Wqps高并发场景下实现分布式事务。文章从传统单体架构到微服务架构下分布式事务的需求背景出发,介绍了Seata这一开源分布式事务解决方案及其AT和TCC两种模式。随后,文章深入探讨了经典ebay本地消息表方案,以及如何使用RocketMQ消息队列替代数据库表来提高性能和可靠性。尼恩还分享了如何结合延迟消息进行事务数据的定时对账,确保最终一致性。最后,尼恩强调了高端面试中需要准备“高大上”的答案,并提供了多个技术领域的深度学习资料,帮助读者提升技术水平,顺利通过面试。
本地消息表事务:10Wqps 高并发分布式事务的 终极方案,大厂架构师的 必备方案
|
NoSQL 算法 关系型数据库
分布式 ID 详解 ( 5大分布式 ID 生成方案 )
本文详解分布式全局唯一ID及其5种实现方案,关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
分布式 ID 详解 ( 5大分布式 ID 生成方案 )
|
缓存 NoSQL Java
Spring Boot中的分布式缓存方案
Spring Boot提供了简便的方式来集成和使用分布式缓存。通过Redis和Memcached等缓存方案,可以显著提升应用的性能和扩展性。合理配置和优化缓存策略,可以有效避免常见的缓存问题,保证系统的稳定性和高效运行。
424 3
|
NoSQL 安全 PHP
hyperf-wise-locksmith,一个高效的PHP分布式锁方案
`hyperf-wise-locksmith` 是 Hyperf 框架下的互斥锁库,支持文件锁、分布式锁、红锁及协程锁,有效防止分布式环境下的竞争条件。本文介绍了其安装、特性和应用场景,如在线支付系统的余额扣减,确保操作的原子性。
251 4