如何自动关闭空闲的sde连接?
在连接sde的应用中,如果连接的客户比较多的情况下,可能会出现sde连接占用cpu资源十分严重,以至于出现系统死机的情况。
Sde提供了TCPKEEPALIVE参数,用来侦测客户端连接情况。当TCPKEEPALIVE为True时,那么在2小时(TimeOut默认设置7200000ms,即2小时)内,如果客户端没有向sde发送请求,sde连接将自动关闭,如果TCPKEEPALIVE为false,那么当客户端没有向sde发送请求超过timeout规定时间,sde连接仍然占用。因此,如果我们想让系统自动关闭空闲的sde连接,那么我们就要把TCPKEEPALIVE设置为true。默认安装的时候TCPKEEPALIVE的值为false。
TCPKEEPALIVE参数可以通过sde命令来更改,例如:
Sdeconfig –o alter –v TCPKEEPALIVE=TRUE –u sde –p sde
改完后重启sde服务。
注意:sde直连应用的情况下TCPKEEPALIVE参数不起作用。
TCPKEEPALIVE的TimeOut时间是可以更改的,我们可以更改操作系统设置TimeOut间隔时间(5分钟-2小时)。例如:
On Microsoft Windows set KeepAliveTime to 300000.
\HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\TCPIP\Parameters\KeepAliveTime
If the key does not already exist you will need to create it.
The time specified is in milliseconds.
On Sun Solaris use the ndd command with the -set option to configure the tcp_keepalive_interval.
# ndd -set /dev/tcp tcp_keepalive_interval 300000
The time specified is in milliseconds.
On IBM AIX use the no command to set communication parameters.
no -o tcp_keepidle=591
The time specified is in halfseconds.
On HP HP-UX use
ndd -set /dev/tcp tcp_time_wait_interval 300000
The time specified is in milliseconds.
On RedHat Linux modify the following kernel parameter by editing the /etc/sysctl.conf file, and restart the network daemon (/etc/rc.d/init.d/network restart).
# Decrease the time default value for tcp_keepalive_time
tcp_keepalive_time = 1800
分享到:
相关推荐
### 如何自动关闭空闲的SDE连接 在地理信息系统(GIS)领域中,空间数据库引擎(SDE)被广泛用于存储和管理大量的空间数据。SDE连接是用户与SDE数据库之间的通信桥梁,但长期空闲的SDE连接会占用系统资源,如CPU和...
自动回收 SDE 连接是解决 SDE 连接数超限的问题的最直接方法之一。通过使用 batch 文件来重启 ArcIMS 和 ArcSDE,可以清理无效的 SDE 连接。例如,可以使用以下命令来重启 ArcIMS Windows 服务: net stop arcims ...
对于那些无效的连接,SDE服务会自动删除它们,从而释放资源。 - **注册表设置**:为了使`TCPKEEPALIVE`功能生效,需要在系统注册表中创建名为`KeepAliveTime`的DWORD项,并设置合适的超时值。默认情况下,如果未设置...
4. **打开工作空间**:获取连接后,你可以使用`WorkspaceFactory.OpenFromFile`或`WorkspaceFactory.OpenFromConnectionFile`方法打开一个工作空间,这通常是你的SDE连接文件(.sde)。 5. **操作数据**:现在你...
总之,"SDE.rar_ArcEngine sde_SDE_arcengine _连接SDE"这个主题涉及到的是使用ArcEngine与SDE数据库进行交互的关键技术,涵盖了数据库连接、数据访问、并发控制等多个方面。掌握这些知识对于开发GIS应用来说至关...
本文将详细讨论如何解决在ArcEngine连接SDE时遇到的"ORA-12560: TNS:协议适配器错误"的问题,以及总结通过C#打开SDE数据库的不同方法。 首先,当出现"ORA-12560: TNS:协议适配器错误",通常意味着网络通信或Oracle...
本文将深入探讨如何利用ArcEngine结合C#来连接并操作SDE(Spatial Database Engine)空间数据库。 首先,我们需要理解SDE的含义。SDE是Esri公司开发的一种用于存储、管理和分发地理空间数据的系统,它支持多种...
教你如何利用Catalog远程连接sde数据库,希望对大家有帮助。
在ArcGIS中,通过“数据库连接”功能,输入之前设定的数据库平台、实例、管理员信息,以及SDE和地理数据库管理员的凭证,建立与SDE数据库的连接。 三、创建特征类(建立空间表) 在ArcMap中,通过右键新建Feature ...
ArcGIS通过SDE接口与PostgreSQL数据库建立连接,以便存储、查询和处理地理空间信息。 当尝试在ArcGIS中连接到PostgreSQL SDE时,可能遇到以下问题: 1. **驱动兼容性**:ArcGIS可能缺少与PostgreSQL版本兼容的驱动...
这是一个连接SDE的数据库的源代码,如果,你要看的话,就下载吧
### ArcGIS连接SDE与Oracle客户端的安装及配置 #### 一、背景介绍 在使用ArcGIS进行空间数据管理时,经常会遇到需要连接到Oracle数据库的情况。为了实现ArcGIS与Oracle Spatial and Graph (SDE)数据库的有效连接,...
在Oracle RAC(Real Application Clusters)环境下,安装和配置ArcGIS Desktop的SDE(Spatial Database Extensions)数据库连接时,可能会遇到"Stored procedures"错误。这个问题通常与Oracle RAC的特性有关,即其...
SDE(Spatial Database Engine)则是ArcGIS中用于连接和管理大型数据库(如Oracle、SQL Server等)的空间数据引擎,它提供了高效、安全的地理数据存储和访问机制。本篇将深入探讨ArcGIS SDE数据源直连的技术细节。 ...
本项目基于ArcGIS Engine 10.1,实现了对SDE(Spatial Database Engine)数据库的连接以及一些核心功能,旨在提供类似ArcCatalog的操作体验。ArcCatalog是Esri公司出品的用于管理地理空间数据的桌面应用,而通过...
在VB中连接SDE数据库,主要是通过ArcObjects(AO)组件来实现的,这是一个由Esri提供的GIS开发接口,用于访问和操作地理数据。在这个过程中,我们首先要理解AO的工作原理和数据模型,以及如何配置连接参数来访问...
### ArcEngine开发中连接SDE数据库的关键知识点 #### 一、使用C#连接Oracle数据库的基础配置与实践 在ArcEngine的二次开发过程中,连接Oracle数据库是常见需求之一。以下是使用Visual Studio 2010环境下C#语言进行...
标题"AE-SDE.rar_C#AE连接sde_SDE_ae"和描述中的"AE连接SDE读取数据"正是指的这一主题。 首先,SDE(Spatial Database Engine)是Esri公司开发的一种用于存储和管理地理空间数据的组件,它可以与多种数据库系统如...
在本压缩包“SDE.rar_SDE”中,可能包含了关于SDE空间数据管理、SDE连接以及相关操作的文档或软件工具,下面我们将详细探讨这些主题。 1. **SDE空间数据管理**:SDE允许用户存储、编辑和管理大量的空间数据,如地图...