Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在ASP.NET中,在迁移到SQL server的MS Access中,重用数据库连接的最佳实践是什么?

在ASP.NET中,在迁移到SQL server的MS Access中,重用数据库连接的最佳实践是什么?
EN

Stack Overflow用户
提问于 2012-10-10 05:50:52
回答 2查看 1.6K关注 0票数 0

在ASP.NET web服务(C# 4.0)中打开和重用数据库连接的最佳实践是什么? web服务有大约5个使用相同数据库的web方法?理想情况下,对于MS Access和SQL server,答案是相同的。

  1. 全局私有变量: a.优点:如果更改数据库提供程序,则易于维护 缺点:不能使用‘使用’子句和连接可能会保持太长时间-连接将保持大约开放多长时间?
  2. 将db连接作为方法参数传递: a.优点:当不需要时可以关闭连接,使用‘use’子句 b.缺点:到处维护和通过对口令人讨厌。
  3. 在任何方法需要时,按需打开和关闭使用子句的连接: 问:这是不是最慢的,因为你必须多次重新打开同一个连接?还是因为幕后的连接池,这不是更慢吗?因此,这可能是最佳实践…。? b.问题:连接池是否仅与SQL服务器相关,因此不适用于MS Access?

起初,我考虑使用全局私有变量(OleDbConnection),因为我在web方法和支持方法中使用了与主数据库的连接,并且在不久的将来将从make迁移到server,并且很容易进行更改。

但是在阅读了一些像使用ASP.NET和web服务时最有效地获得SQL连接这样的文章之后

似乎我可以在任何地方使用“using”子句创建一个新的按需连接,而不会受到性能的影响?

EN

回答 2

Stack Overflow用户

发布于 2012-10-10 05:57:55

ASP.Net池数据库连接,所以您不需要担心这些低级别的细节。看看本MSDN文章提示3

票数 1
EN

Stack Overflow用户

发布于 2012-10-10 05:59:51

最佳实践是根本不重复使用连接对象。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public void GetEmployees() As List<Employee> {
    var employees = new List<Employee>();
    using (var connection = new SqlConnection(Configuration.ConnectionString)) {
        using (var command = connection.CreateCommand()) {
            command.CommandText = "SELECT * FROM dbo.Employee";
            connection.Open();
            using (var reader = command.ExecuteReader()) {
                while (reader.Read()) {
                    employees.Add(Employee.CreateRecordFromOpenReader(reader));
                }
            }
        }
    }

    return employees;
}

然后,如果您需要从任何使用它的事务,设置DTC并这样做。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
using (var scope = new TransactionScope()) {
    var employees = GetEmployees();
    employees.Map((e) => e.Status = Status.Active);
    scope.Complete();
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12820969

复制
相关文章
查看tensorflow是否支持GPU,以及测试程序
测试程序# Pythonimport tensorflow as tfhello = tf.constant('Hello, TensorFlow!')sess = tf.Session()print(sess.run(hello))是否支持GPUimport tensorflow as tfsess = tf.Session(config=tf.ConfigProto(log_device_placement=True))>>>Device mapping:/job:localhost/replica:0
狼啸风云
2019/10/28
5.6K0
TensorFlow使用GPU
查看机器 GPU 的信息: nvidia-smi 持续更新查看: nvidia-smi -l 其他方式如下: import os # 使用GPU0 和 GPU1 os.environ['CUDA_V
机器学习和大数据挖掘
2019/07/01
2.2K0
TensorFlow使用GPU
Tensorflow入门教程(九)——Tensorflow数据并行多GPU处理
上一篇我介绍了用Python来构建原型内核和常用可视化方法。这一篇我会说Tensorflow如何数据并行多GPU处理。
医学处理分析专家
2020/06/29
1.5K0
Tensorflow入门教程(九)——Tensorflow数据并行多GPU处理
判断gpu是否可用
# 查看Keras 是否可使用gpu from keras import backend as K gpu =K.tensorflow_backend._get_available_gpus() print(gpu) # 查看tensorflow是否可使用gpu import tensorflow as tf print(tf.test.is_gpu_available())
Dean0731
2020/05/11
1.3K0
TensorFlow中使用GPU
TensorFlow默认会占用设备上所有的GPU以及每个GPU的所有显存;如果指定了某块GPU,也会默认一次性占用该GPU的所有显存。可以通过以下方式解决:
用户1432189
2020/02/19
4.3K0
为tensorflow指定GPU
为tensorflow指定GPU,原因是,默认创建session时,会将所有显存占满,发现有人在用的时候,就会session不能创建而报错。 首先nvidia-smi查看显卡的编号,最左边一列,看看哪个空的
水球喵子
2018/07/27
1.5K0
TensorFlow GPU 版安装
0x00 前言 CPU版的TensorFlow安装还是十分简单的,也就是几条命令的时,但是GPU版的安装起来就会有不少的坑。在这里总结一下整个安装步骤,以及在安装过程中遇到的问题和解决方法。 整体梳理 安装GPU版的TensorFlow和CPU版稍微有一些区别,这里先做一个简单的梳理,后面有详细的安装过程。 Python NVIDIA Cuda cuDNN TensorFlow 测试 0x01 安装Python 这里有两种安装的方法: 安装基本的Python环境,需要什么再继续安装。 安装Anaconda,
木东居士
2018/05/25
1.4K0
TensorFlow 安装GPU版本
TensorFlow 有两个版本:CPU 版本和 GPU 版本。GPU 版本需要 CUDA 和 cuDNN 的支持,CPU 版本不需要。如果你要安装 GPU 版本,请先确认你的显卡支持 CUDA。我安装的是 GPU 版本,采用 pip 安装方式,所以就以 GPU 安装为例,CPU 版本只不过不需要安装 CUDA 和 cuDNN。
Centy Zhao
2019/12/26
1.5K0
安装GPU加速的tensorflow 卸载tensorflow
Ubuntu 16.04 + cuda9.0 + cudnn7.0 或 Ubuntu 16.04 + cuda8.0 + cudnn5.1
全栈程序员站长
2022/06/25
1K0
安装GPU加速的tensorflow 卸载tensorflow
不安装tensorflow-gpu如何使用GPU
这是个很严峻的问题,每次跑代码,内存就炸了,gpu还没开始用呢,看一些博客上是这样说的:
bye
2021/01/07
1.8K0
安装Tensorflow-gpu版本
**下载cuda** **链接:**https://developer.nvidia.com/cuda-10.0-download-archive?target_os=Windows&target_a
陶陶name
2022/05/13
7620
tensorflow的GPU加速计算
tensorflow程序可以通过tf.device函数来指定运行每一个操作的设备,这个设备可以是本地的CPU或者GPU,也可以是某一台远程的服务器。tensorflow会给每一个可用的设备一个名称,tf.device函数可以通过设备的名称来指定执行运算的设备,比如CPU在tensorflow中的名称为/cpu:0。在默认情况下,即使机器有多CPU,tensorflow也不会区分它们,所有CPU都使用/cpu:0作为名称。而一台机器上不同为/gpu:0,第二个GPU名称为/gpu:1,以此类推。
狼啸风云
2019/03/04
7.4K0
tensorflow的GPU加速计算
Tensorflow多GPU使用详解
磐创AI 专注分享原创AI技术文章 翻译 | fendouai 编辑 | 磐石 【磐创AI导读】:本文编译自tensorflow官方网站,详细介绍了Tensorflow中多GPU的使用。欢迎大家点击上方蓝字关注我们的公众号:磐创AI。 目录: 介绍 记录设备状态 手动分配状态 允许GPU内存增长 在多GPU系统是使用单个GPU 使用多个 GPU 一. 介绍 在一个典型的系统中,有多个计算设备。在 TensorFlow 中支持的设备类型包括 CPU 和 GPU。他们用字符串来表达,例如: •"/cpu:0":
磐创AI
2018/07/03
5.6K0
Docker Compose + GPU + TensorFlow = Heart
Docker是一个开源的应用容器引擎——越来越多的人将它用于开发和分发上。即时环境设置、平台独立应用、即时解决方案、更好的版本控制、简化维护。可以说Docker是有很多好处的。 但是,当涉及到数据科学和深度学习时,你必须记住所有Docker标志,以便在主机和容器之间共享端口和文件,从而创建不必要的run.sh脚本,并且处理CUDA版本和GPU共享。如果你见过下面这个错误,你就会知道这个错误带来的麻烦: $ nvidia-smi Failed to initialize NVML: Driver/libr
AiTechYun
2018/03/02
1.7K0
Docker Compose + GPU + TensorFlow = Heart
tensorflow-gpu版本安装
安装cuda,cudnn 地址:https://developer.nvidia.com/cuda-toolkit-archive
sofu456
2021/12/06
1.2K0
tensorflow-gpu版本安装
tensorflow-gpu版安装
需要环境 Anaconda CUDA cuDNN 注:tensorflow1.4用的是cuda8,cudnn6;tensorflow用的是cuda9,cudnn7,选择版本时要注意 CUDA安装 首
听城
2018/04/27
7740
tensorflow-gpu版安装
GPUDockerfile实例:tensorflow-gpu
tensorflow 与cuda对应版本 ubuntu 1604.py3 Dockerfile FROM scratch ADD ubuntu-xenial-core-cloudimg-amd64-root.tar.gz / # a few minor docker-specific tweaks # see https://github.com/docker/docker/blob/9a9fc01af8fb5d98b8eec0740716226fadb3735c/contrib/mkimage/debo
AI拉呱
2021/01/14
6110
TensorFlow-Gpu 1.8安装
终于又到周末了,大家周末快乐,我们都知道在数据挖掘里面有个比赛:Kaggle,这两天在玩Kaggle比赛之泰坦尼克号问题,在下面几节将会详细介绍,泰坦尼克号问题思路及Kaggle比赛玩法。我们一起来期待吧! 这个是当前的成绩:
公众号guangcity
2019/09/20
1.2K0
TensorFlow-Gpu 1.8安装
点击加载更多

相似问题

GAE:知道何时将数据放入Memcache

26

如何知道何时在GPU内存上分配了数据

20

如何知道我导入的是tensorflow还是tensorflow-gpu?

224

不确定tensorflow-gpu是否真的使用GPU

29

测试GPU是否可用于tensorflow

1105
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文