通过IIS共享文件夹来实现静态资源"本地分布式"部署
以下以文件型数据库(如sqlite)为例
楼主话:以下内容,若有不专业处,大胆喷,虚心求教。
起因:要进行一个项目的分布式部署,而这个项目所涉及的其中一个数据库为sqlite(经测试,同为文件型数据库的access也可行),众所周知,sqlite不支持远程访问。但我们这个所谓分布式构成一个局域网即可,所以就想到我们常用的ftp这种共享目录局域网访问的形式。将sqlitedb放到一个固定机子上。
接下来,开始百度,解决方案:
现有2台服务器:(192.168.0.38)A, (192.168.0.202)B ;
A服务器:数据库服务器兼IIS服务器,提供共享文件夹DbShare。
A、B服务器做IIS集群,部署报表系统,使用A提供的DbShare文件。
步骤:
一、创建共享文件
首先建立共享文件
1、将我们A服务器上防止数据库文件的文件夹设置为共享,这里要注意我们设置共享的用户,下面B服务器建立IIS虚拟目录的时候添加的用户要跟此一致,所以我建议可以新建个用户。

新建用户直接下拉框中选择即可。

然后在我们要访问这个共享文件夹的服务器上(也就是我们的A、B服务器),建立网络位置(空白处右键)

2、(A、B服务器中)IIS创建虚拟目录,右击网站,选择添加虚拟目录,要共享出来的文件,右击属性:共享,加入用户权限。

然后点击连接为,选择特定用户,这里的用户即上面我们创建共享文件夹时选择的用户

至此,虚拟目录的创建告一段落。
下面回到sqlite的配置,说是配置,其实就是数据库链接字符串的设置:
<add name="dbConnStr" connectionString="Data Source=\\DESKTOP-F4SH980\dbsqlite\db\sqlite\Blogging_SQLite.db"/>
很简单,只是路径变了而已。
注意点:发布时,要把之前那个特定用户也配置到webconfig中:
<system.web>
<identity impersonate="true" userName="zhj" password="123" />
<!--配置好后,发布能运行,iis express 不行,iis express即调试时,得注释掉-->
<customErrors mode="Off"/>
</system.web>
至此,搭建完成,AB两个IIS服务器均可访问位于同个目录下的db。
这一节搭建完了局域网分布式
下一节再介绍搭建完后,如何用Nginx反向代理服务器进行客户端访问,同时进行一个负载均衡的处理
可能标题起得不应这么小,针对数据库了,共享目录应用可以很多,图片,json文件这些静态资源均可通过虚拟目录来实现集群共享。这样一来,大家可能觉得这文章对我会有点用,也就不会被移除首页了 汗~~
如我在上文的共享目录中放置一json文件

AB机子代码读取均是以下方式:
String jsonfile = “\\\\DESKTOP-F4SH980\\dbsqlite\\xml\\services.json";
String strcontent = File.ReadAllText(jsonfile);
真实路径是:\\DESKTOP-F4SH980\dbsqlite\xml 前面一定是双反斜杠,单个默认是C盘
代码中转义符的存在,所以直接就是四个反斜杠(好啰嗦,但有时候读不出来就是这小地方弄错)
写博客也是需要经验积累,慢慢摸索
通过IIS共享文件夹来实现静态资源"本地分布式"部署的更多相关文章
- Virtualbox Ubuntu 虚拟机命令行挂载共享文件夹及设置静态IP
挂载共享文件夹 参考 [1], VirtualBox/GuestAdditions [2], VirtualBox/SharedFolders 步骤 在Virtualbox 虚拟机的菜单『设备』中,点 ...
- Gradle里配置jetty实现静态资源的热部署
通过Gradle我们可以很方便的使用内置jetty启动我们的web程序,在本地进行调试.但是在使用的过程中,我发现了几个问题,导致本地调试的效率大受影响. 如果使用gradle jettyRun启动j ...
- Gradle+Jetty实现静态资源的热部署
本文转自http://www.cnblogs.com/huang0925/p/3302487.html --------------------------------------- 通过Gradle ...
- 同一个局域网内,使用 java 从服务器共享文件夹中复制文件到本地。
1 引用jar 包 <dependency> <groupId>org.samba.jcifs</groupId> <artifactId>jcifs& ...
- 在Java程序中读写windows共享文件夹
摘要 使用Java通过JCIFS框架读写共享文件夹,使用SMB协议,并支持域认证. 项目常常需要有访问共享文件夹的需求,例如读取共享文件夹存储的视频.照片和PPT等文件.那么如何使用Java读写Win ...
- SpringBoot使用thymeleaf的方式引用static中的静态资源
当我们在开发网站时为了快速完成,避免不了使用第三方的框架文件.这样我们就得引用框架中的各种资源文件.那么,在springboot中通过 thymeleaf如何在html中使用static文件夹下的静态 ...
- spring boot-8.静态资源映射
1.webjars WebJars是将客户端(浏览器)资源(javascript,Css等)打成jar包文件,以对资源进行统一依赖管理.WebJars的jar包部署在Maven中央仓库上.官网地址:h ...
- SpringMVC不能引入静态资源
SpringMVC不能引入静态资源 问题:部署项目后程序加载或用浏览器访问时出现类似的警告, 2011-01-19 10:52:51,646 WARN [org.springframework.web ...
- [转]C#读写远程共享文件夹
1.在服务器设置一个共享文件夹,在这里我的服务器ip地址是10.200.8.73,共享文件夹名字是share,访问权限,用户名是administrator,密码是11111111. 2.新建一个控制台 ...
随机推荐
- 1像素border
1像素border 利用伪类和媒体查询: 伪类: border-1px($color) position:relative &:after display: block position: a ...
- Django基础--2
一.路由系统 URL 1.模板语言循环字典 1.简单的字典循环 <ul> {% for i in user_dict %} <li>{{ i }}</li> {% ...
- Html5 web本地存储
Web Storage是HTML5引入的一个非常重要的功能,可以在客户端本地存储数据,类似HTML4的cookie,但可实现功能要比cookie强大的多,cookie大小被限制在4KB,Web Sto ...
- Makedown语法说明
Markdown 语法说明 (简体中文版) / (点击查看快速入门) 概述 宗旨 兼容 HTML 特殊字符自动转换 区块元素 段落和换行 标题 区块引用 列表 代码区块 分隔线 区段元素 链接 强调 ...
- hdu-2642 Stars---二维树状数组(细节处理)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2642 题目大意: B x y:将星星x y点亮 D x y:将星星x y熄灭 Q x1 x2 y1 ...
- POJ-2002 Squares---绕点旋转+Hash
题目链接: https://vjudge.net/problem/POJ-2002 题目大意: 有一堆平面散点集,任取四个点,求能组成正方形的不同组合方式有多少. 相同的四个点,不同顺序构成的正方形视 ...
- 火车进出站(POJ1363)
题目链接:http://poj.org/problem?id=1363 #include <stdio.h> #include <stack> using namespace ...
- Python-三元运算符和lambda表达式
一.三元运算符 #当满足条件1时,res=值1:否则res=值2 res = 值1 if 条件1 else 值2 举例说明: res=10 #简单的if else语句 if abs(res)>0 ...
- HttpHandler(处理程序) 和 HttpModule(托管模块)
本文参见:http://www.tracefact.net/Asp-Net/Introduction-to-Http-Handler.aspx 前言:前几天看到一个DTcms网站,里面有个伪静态技术, ...
- 当Java遇见了Html--Jsp详解篇
###一.什么是Jsp jsp是一种基于文本的程序,全名java server page,其特点是html和java程序共存.执行时jsp会被运行容器编译,编译后的jsp跟servlet一样,因此js ...