大对象的存储_Korny的博客-程序员宅基地

技术标签: C# & ASP.Net  数据库&XML  存储  数据库  

这两天这个问题一直困扰着我,理理思路不外乎这两种

(1)大对象存在数据库中

(2)大对象存在文件系统,数据库里放连接

第一种情况,优点是明显的,数据的一致性好,可维护性好,缺点是效率比较大,如果在1000万条的记录中,有十几个并发的话,数据库的效率比较低,当然第一种的优缺点与第二种正好相反,第二种的问题在于如何解决同步问题,即文件系统中的文件被删除掉,数据库的连接应失效.去网上看了一些参考整理后,我觉得这样也行,大家提提意见

大对象并入数据库的同时也存入文件系统中,并且数据库中保留文件系统中的此大对象的连接

这时用户请求时,先去文件系统中查找,如果有则直接下载,如果没有则把数据库中的大对象恢复到文件系统中并给用户下载.

另外种是数据库里不放备份,就直接放在文件系统中,而做一个文件监视器,当用户对文件系统的中文件有任何操作时,将直接更新数据库.目的就是保持一致性.

大对象的存储问题一直是个大问题,如果您有好的建议,不妨交流一下

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Korny/article/details/374430

智能推荐

MySQL for Windows 解压缩版配置安装及my-default.ini说明-程序员宅基地

mySQL是一个小巧玲珑但功能强大的数据库,目前十分流行。但是官网给出的安装包有两种格式,一个是msi格式,一个是zip格式的。很多人下了zip格式的解压发现没有setup.exe,面对一堆文件一头雾水,不知如何安装。下面笔者将介绍如何解决此情况下安装过程中的各种问题工具/原料win7操作系统MySQLzip格式安装包方法

关于使用 JSON.parse()报 VM141:1 Uncaught SyntaxError 的解决方案-程序员宅基地

今天在使用ajax的后期,老师问我们怎么json解析对象,然后上百度搜了一下:大概有三个方式 var str = '{"name":"小明","age":18}';将字符串转化json对象:1. var json = JSON.parse(str);2. var json = eval("(" + str + ")");3. var json = (new Function...

禁止tomcat生成catalina.out、localhost_access_log、host-manager.log、localhost.log、manager.log这些文件-程序员宅基地

1、找到tomcat目录conf,logging.properties把这个文件重命名(推荐),其实删掉也可以但是不建义 这样就不会生成host-manager.log、localhost.log、manager.log、catalina.log这些文件 注:把 conf/loging.properties 中的等级全都等于OFF 也不行,我试过2、通过修改catalina....

java基础学习IO流2学习笔记-程序员宅基地

------- android培训、java培训、期待与您交流! ----------7:流的操作规律A:明确数据源和目的地的操作的流对象 数据源: 读取数据 Reader InputStream 目的地: 写入数据 Writer OutputStreamB:明确数据源和目的地的数据类型 数据源: 字节流 InputStream 字符流 Reader 目的地:

STM32(以太网接口)应用开发笔记之一:STM32CUBEMX基础配置_stm32以太网开发-程序员宅基地

最近在调试stm32f407芯片的以太网接口功能,空余之时写下自己一些笔记。1.技术准备我这里使用STM32F407VET6处理器和LAN8720A以太网接口为硬件基础,软件开发环境使用的是Keil MDK和STM32CuBeMX。2.快速开始首先打开STM32CubeMX,配置好自己芯片后,接下来看如图所示配置以太网接口的基本参数配置。高级参数配置,将PHY改为user,因为我们这里使用LAN8720A。下面有很多寄存器值修改可以参考LAN9720A芯片手册,但我们这里不需要改,已经是配置好了_stm32以太网开发

利用JSR-303做验证验证service层_jsr303 能用于service层吗?-程序员宅基地

我把注解@valid放在servevice层上是没有效果的,只有放在Controller上才有效果。可以手动校验,调用ValidatorFactory工厂方法创建一个实例对象来校验,代码如下。import javax.validation.ConstraintViolation;import javax.validation.Validation;import javax.valid..._jsr303 能用于service层吗?

随便推点

python中re模块_python中re模块-程序员宅基地

1.定义正则表达式是一个特殊的字符序列,能方便的检查一个字符串是否与某种模式匹配。re模块使得python拥有全部的正则表达式功能。2.用途通过使用正则表达式,可以:测试字符串内的模式。—— 例如,可以测试输入字符串,以查看字符串内是否出现电话号码模式或信用卡号码模式。这称为数据验证。替换文本。—— 可以使用正则表达式来识别文档中的特定文本,完全删除该文本或者用其他文本替换它。基于模式匹配从字符串...

三菱plc pwm指令_三菱plc功能指令集大全和自学基础-程序员宅基地

功能指令集大全一、DMOV K100000 D8146MOV是移动指令,DMOV是双字节移动:把常数100000移动到三菱PLC的数据寄存器D8146里面。另:D也就是DOUBLE的意思,是双数。一般MOV移动是16位二进制也就是一个字,而加上一个D,就是32位,也就是两个字。二、K2M1,M1~M8组成的1个字节的存储空间,常数+软元件 K1~K8分别代表4位~32位的组合应用。..._三菱pwm指令

【沉浸式状态栏】Hbuilder打包app,设置沉浸式状态栏_hbuilder沉浸式状态栏-程序员宅基地

在mainfest.json的plus中以下位置添加statusbar内容:"plus": { "statusbar":{ "immersed": true/*沉浸式状态栏*/ }, "splashscreen": { "autoclose": true,/*是否自动关闭程序启动界面,true表示应用加载应用入口页面后自动关闭..._hbuilder沉浸式状态栏

qdialog 只有点击才能获得焦点_张怡筠:怎么做,孩子才能真正爱上学习?-程序员宅基地

有人曾用胡萝卜和兔子来比喻孩子的学习。伸手把胡萝卜放在兔子面前,兔子不断地往前跑。例如父母对孩子说,“你为什么要好好学习呢?因为这样才能进重点学校,将来才有好的工作,有好的收入。”——这,是一个境界。而更好的状况是,没有胡萝卜,兔子也会往前跑。为什么呢?因为这只兔子热爱奔跑!它觉得在奔跑当中获得很多的成就感,不管胡萝卜或其他外界的诱因存不存在,它都会自动自发地往前跑去。——这,则是最佳..._invalid use of incomplete type class qcloseevent

微信影视小程序源码 独家修复可用_微信影视小程序维语源码下载_普通网友的博客-程序员宅基地

介绍:后端上传微擎目录 addos进入后台安装添加小程序,appid和秘钥都要填写配置一下程序后台开启开发者工具配置前端文件js“uniacid”: “你的id”,“acid”: “你的id”“siteroot”: “https://你的域名/app/index.php”,网盘下载地址:http://kekewl.net/Pu7IzMMq8dj图片:..._微信影视小程序维语源码下载

yolov1的损失函数详解_yolov1损失函数_追光少年羽的博客-程序员宅基地

一、整体框架损失函数如下二.损失函数具体解释 首先明确一概念,网格就是最终特征图(7*7*30)上的一个预测目标了,v1版本这样的预测结果网格一共有49个,每个维度为1*30.这30的向量含义为【x0,y0,w0, h0,I0,x1,y1,w1, h1,I1,C0,C1,C2.....C19】前面10位代表了2个box框信息以及其置信度,后20位表示了分类概率值。后面的损失函数都是针对网格中的一些属性来干活的。2.1 标注有预测有损失 标注图像某位置有目标..._yolov1损失函数