现场出现了一个问题,oracle运行一段时间之后,process个数会溢出,然后新的连接会失败。通过分析,发现Arcgis Server 的ArcSOC进程在不段增长。ArcSOC是arcgis server 的一个容器进程,该容器中装载arcgis object。

计划尝试用两个方法来解决/缓解这一问题。

方法一

调整每个服务的配置信息,具体如下:

  1. 将空间实例可持续运行的最长时间由1800s降低到600s

  2. 将实例的隔离级别设置为"低隔离性",如下图:

建议:先使用第一种方法修改服务配置(除system与utility目录之外),然后试运行一段时间看效果。如果效果不明显,再尝试第二种方法。

方法二

将多个地图合并成一个地图,然后发布成一个服务。拟通过该方法减少服务的个数。

接下来按计划行事。使用第一种方法修改配置,然后重新启动地图服务,此时报错:"the base table definition string is invalid",查看数据库注册信息,然后使用该连接串尝试手动登陆,竟然提示登陆失败。再查看该账户的状态,显示为"EXPIRED"。

账户竟然过期了,这是不是arcsoc不断增长的原因呢?极有可能,当连接请求失败后,可能会不断地尝试重复请求连接,而每一次连接请求,arcgis server都会为其分配一个ArcSOC进程。如果是这样,解锁账户并重新赋密码应该就可以解决问题。执行如下SQL:

Alter user xx identified by xx account unlock;

Alter profile default limit password_life_time unlimited;

再次重启该地图服务,OK,启动成功。

持续观察操作系统的进程情况,发现ArcSOC进程个数长期保持较稳定的水平,且oracle processes没有再溢出。

至此,问题根因浮出水面,原来不是服务请求过多导致的,而是无效的登陆占用了process但却没有释放。

ArcSOC进程数不断增长导致oracle processes溢出原因分析的更多相关文章

  1. 避免因为Arcgis Server服务设置不当导致Oracle Process溢出的方法

    我之前写过一篇文章<arcsoc进程无限增长导致oracle processes溢出>(见链接:https://www.cnblogs.com/6yuhang/p/9379086.html ...

  2. 解决CentOS 7中php-fpm进程数过多导致服务器内存资源消耗较大的问题

    本文由荒原之梦原创,原文链接:http://zhaokaifeng.com/?p=653 什么是php-fpm: php-fpm即FastCGI进程管理器,用于控制php的内存和进程等. 操作环境: ...

  3. ShellExecuteEX打开iqy文件导致excel hang的原因分析

    1. 问题 当在console中调用API ShellExecuteEx打开"test.iqy"文件时,发现excel会hang住,console退出后excel才会响应,但直接双 ...

  4. tomcat 内存溢出原因分析及解决

    一.错误提示:java.lang.OutOfMemoryError: Java heap space [原因分析] tomcat默认可以使用内存为128MB,在较大型的应用项目中不足以满足运行要求,在 ...

  5. 定时任务起的java进程没有释放导致oracle的问题not availavle & out of memory

    最近发现一个问题,我们设置了一个定时任务,用于每天的对账,每天的对账都是启动一个java程序(jar包),时间久了,出现下面的问题: 有很多CardPaymentBatch.jar进程驻留在系统当中, ...

  6. mips64高精度时钟引起ktime_get时间不准,导致饿狗故障原因分析【转】

    转自:http://blog.csdn.net/chenyu105/article/details/7720162 重点关注关中断的情况.临时做了一个版本,在CPU 0上监控所有非0 CPU的时钟中断 ...

  7. 连接SQLServer时,因启用连接池导致孤立事务的原因分析和解决办法

    本文出处:http://www.cnblogs.com/wy123/p/6110349.html 之前遇到过这么一种情况: 连接数据库的部分Session会出现不定时的阻塞,这种阻塞时长时短,有时候持 ...

  8. 转载:/etc/security/limits.conf 控制文件描述符,进程数,栈大小

    原文地址:http://ilikedo.iteye.com/blog/1554822 linux下安装Oracle 一般都会修改/etc/security/limits.conf这个文件,但是这里面的 ...

  9. Linux记录-进程数和句柄数调整

    1.cat /etc/security/limits.confwebuser soft nofile 65535webuser hard nofile 65535webuser soft nproc ...

随机推荐

  1. Java线程安全面试题,你真的了解吗?

    多个线程不管以何种方式访问某个类,并且在主调代码中不需要进行同步,都能表现正确的行为. 线程安全有以下几种实现方式: 不可变 不可变(Immutable)的对象一定是线程安全的,不需要再采取任何的线程 ...

  2. Vue配置路由和传参方式及路由守卫!

    安装路由 npm i vue-router -S 引入路由 import VueRouter form VueRouter 注入路由模块 Vue.use(VueRouter) 定义路由匹配规则 let ...

  3. jdbc预编译实现方式

    jdbc预编译可以有两种方式: 方式一.jdbc自己实现的预编译,就是做一下特殊字符处理来防SQL注入,看PreparedStatement源码就可以了. public static void mai ...

  4. leetcode 学习心得 (4)

    645. Set Mismatch The set S originally contains numbers from 1 to n. But unfortunately, due to the d ...

  5. mysql 无法连接提示 Authentication plugin 'caching_sha2_password' cannot be loaded

    mysql 无法连接提示 Authentication plugin 'caching_sha2_password' cannot be loaded 可能是密码没有设置或者,密码设置类型不符,可参考 ...

  6. windows,linux里的hosts文件

    在解析主机名的IP地址时,会先访问本机的上hosts文件,这样先配置好就可以不通过DNS服务器就获得IP地址. linux vi /etc/hosts IP 空格  主机名 windows C:\Wi ...

  7. LoadRunner脚本录制常见问题

    LoadRunner录制脚本时为什么不弹出IE浏览器?当一台主机上安装多个浏览器时,LoadRunner录制脚本经常遇到不能打开浏览器的情况,可以用下面的方法来解决. 启动浏览器,打开Internet ...

  8. Docker搭建Wordpress

    搭建 wordpress 1.拉取 wordpress 镜像docker pull wordpress:latest 2.运行 wordpress 镜像 docker run --name wordp ...

  9. Jupyter 中的 10 个魔法函数

    1)%pwd 于显示Jupyter当前的工作空间. 2)%hist 显示当前Jupyter中,所有运行过的历史代码. 3)%who 显示当前Jupyter环境中的所有变量或名称. 4)%reset 删 ...

  10. 四步理解GloVe!(附代码实现)

    1. 说说GloVe 正如GloVe论文的标题而言,GloVe的全称叫Global Vectors for Word Representation,它是一个基于全局词频统计(count-based & ...