通过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.新建一个控制台 ...
随机推荐
- 高仿饿了么mock本地数据
未使用router新版webpack.dev.conf.js配置本地数据访问:// 引入express 模块 const express = require('express') // 创建expre ...
- List之Sort使用
void TestListSort(){ List<string> st = new List<string> (); st.Add ("abcd"); s ...
- Cordova各个插件使用介绍系列(八)—$cordovaCamera筛选手机图库图片并显示
原文档请看http://www.ncloud.hk/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/ionic%E5%9B%BE%E7%89%87%E4%B8%8A%E4%B ...
- mybatis学习目录
mybatis详解动态SQL https://www.cnblogs.com/ysocean/p/7289529.html mybatis查询时间段sql语句 http://www.cnblogs.c ...
- [topcoder]TheGridDivTwo
http://community.topcoder.com/stat?c=problem_statement&pm=13628&rd=16278 标程是BFS,我用DFS,都可解. 这 ...
- 笨办法学Python(八)
习题 8: 打印,打印 formatter = "%r %r %r %r" print formatter % (1, 2, 3, 4) print formatter % (&q ...
- PointCNN 论文翻译解析
1. 前言 卷积神经网络在二维图像的应用已经较为成熟了,但 CNN 在三维空间上,尤其是点云这种无序集的应用现在研究得尤其少.山东大学近日公布的一项研究提出的 PointCNN 可以让 CNN 在点云 ...
- 分治——sqtx
题目描述 Given a string s, partition s such that every substring of the partition is a palindrome. Retur ...
- 使用Excel调用ABAP系统的函数
效果:在excel里创建一个按钮,开发一些VB script,可以连接指定的ABAP系统并执行系统里的ABAP function module. 在这里例子里执行ABAP系统的函数TH_USER_LI ...
- springmvc--jsp页面乱码
最近想做一个平台,花时间学习springmvc.现在把零散的问题做总结 A页面写数据,一个post请求,B页面负责数据接收和显示,但是在B页面中输入中文确乱码了 A页面如下 B页面展示如下 B页面的j ...