通过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.新建一个控制台 ...
随机推荐
- android selector中使用shape
<shape> <!-- 实心 --> <solid android:color="#ff9d77"/> <!-- 渐变 --&g ...
- [SVN]TortoiseSVN工具培训1─为什么要用SVN?
你是否有经历过以下情况: SVN的使用理由/好处:
- centos6.5_64bit-Tomcat7安装部署
此次安装系统版本及软件版本 centos6.5-64bit java -1.7.0_45 jdk1.8.0_111 apache-tomcat-7.0.73 一.检查java版本信息 ...
- 有趣的回文数(Palindrome number)
文章转自http://blog.163.com/hljmdjlln@126/blog/static/5473620620120412525181/ 做LC上的题"Palindrome num ...
- Windows Python 版本切换工具 --- Switch Python Version Tool For Windows
2018年1月13日 更新: 如果要用到不同版本的Python 请使用 virtualenv, pip install virtualenv , 我做的这个工具可以拿来维护下环境变量~~ 填好路径自 ...
- SAP成都C4C小李探花:浅谈Fiori Design Guidelines
Jerry: 我和周帅认识不久,自去年7月SAP成都研究院Cloud for Customer(以下简称为C4C)开发团队组建至今,根据这段时间和周帅愉快的合作经历,我觉得如果把周帅比作我读过的小说里 ...
- IDEA的常用操作(快捷键)
IDEA的常用操作(快捷键) Alt+回车 导入包,自动修正 Ctrl+N 查找类 Ctrl+Shift+N 查找文件 Ctrl+Alt+L 格式化代码 Ctrl+Alt+O 优化导入的类和包 Alt ...
- 使用Excel管理命令输出
效果图:(饼状图为后添加) 实现代码:
- python 3+djanjo 2.0.7简单学习(三)--Django 管理页面
django里自带了一个管理页面,也就是后台,下面来学习一下 1.创建超级管理员 python manage.py createsuperuser 键入你想要使用的用户名,然后按下回车键: Usern ...
- 遍历ResultSet,行列要从1开始
为什么遍历ResultSet,行列要从1开始. 因为Resultset的第一行的第一列都是空的,要用rs.next()到第一行才能进行读取. Statement stmt=null; ResultS ...