Oracle监听的优化思路

news/2025/3/15 11:01:50/

Oracle监听的优化思路优化思路如下:

  1. 为减少客户端和服务端网络之间TCP包的传输数量,可在sqlplus客户端设置参数ARRAYSIZE。假设ARRAYSIZE默认大小为15,表示应用每次将获取15行的数据。如果TCP包大小(排除包头等元数据之后,真正可存放1460B大小的数据)超过ARRAYSIZE行数据的总字节大小时,我们应评估一个TCP包能容纳多少行数据,并设置最优的ARRAYSIZE大小。过小的ARRAYSIZE,需要用更多的TCP包来传递业务数据,这将影响业务程序的性能。
  2. 由2.1节可知Oracle Net Services位于OSI模型的会话层,参数SDU(Session Data Unit)表示网络会话层(Network Session (NS) layer)和网络传输层之间的缓冲大小。在Net*8 和 Oracle*Net (8.0 或更高版本)中,专用服务器模式的缓冲大小为2KB,共享服务器模式为32KB。从Oracle 11.2开始,专用服务器模式的缓冲大小增长为8KB,共享服务器模式为65KB。在静态注册的环境下可以在listener.ora和tnsnames.ora增加关键字(SDU=4096)来增加缓冲大小。如果是在共享服务器模式下,则可以在DISPATCHERS增加关键字SDU=8192来增加缓冲区大小。而对于动态注册环境,只需要在客户端和服务端的配置文件sqlnet.ora中增加DEFAULT_SDU_SIZE = 8192即可。
  3. 调整操作系统的TCP的发送和接受缓冲区大小。如:AIX系统的参数tcp_sendspace和tcp_recvspace。
  4. 调整Oracle的TCP的发送和接受缓冲区大小。从Oracle 10g开始,可以通过调整SEND/RECV_BUF_SIZE大小来达到这一目的。从经验上来看,这两个参数在广域网(WAN)传输中可能会提高一定的性能。
  5. 通过设置监听参数QUEUESIZE来提高监听处理的最大并发数,当最大并发数超过QUEUESIZE时可能会出现错误:TNS-12535 / ORA-12535: TNS:operation timed out。调整该参数需要结合操作系统相关参数来进行,详见MOS文章:214122.1。
  6. 增加监听来处理更多的并发数。比如在服务器端分别开设1521端口和1522端口的监听,根据监听的繁忙程度,客户端可以选择相对空闲的监听来连接数据库。
  7. 将客户端连接方式从短连接修改为长连接或者使用连接池。大量的短连接无疑会消耗更加多的系统CPU时间片和Oracle资源。
  8. 如果Oracle客户端和服务端处于同一台服务器,连接数据库可以考虑用IPC协议代替TCP协议。使用IPC协议可以绕过监听环节,直接和数据库相连。如下所示:

[ora10g@capaa ~]$ sqlplus "zhoul/zhoul"

  1. 检查监听日志大小,过大的监听日志在某些Oracle版本下可能会导致连接缓慢,甚至监听无法启动,如下所示:

[oracle@hzmc admin]$ lsnrctl start

LSNRCTL for Linux: Version 9.2.0.4.0 - Production on 02-MAR-2011 23:37:53

Copyright (c) 1991, 2002, Oracle Corporation.  All rights reserved.

Starting /oracle/app/oracle/product/9.2.0/bin/tnslsnr: please wait...

TNS-12547: TNS:lost contact

TNS-12560: TNS:protocol adapter error

  TNS-00517: Lost contact

   Linux Error: 32: Broken pipe

注意 ping命令调用的是ICMP/IP协议,而非TCP/IP协议,且不在节点之间传输TCP数据。用ping命令监测服务器之间的网络环境,其响应时间的快慢并不能真实地反应出网络环境。如果ping速度比较快,只能说明服务器通过各种路由能够快速到达对端服务器而已。


http://www.ppmy.cn/news/68460.html

相关文章

也谈零基础学编程,需要学什么

也谈零基础学编程,需要学什么 零基础人群语法1、注释2、变量2.1 变量命名2.2 数据类型2.3 类型强度 3、 运算符4、流程控制与代码块5、函数和方法6、类 算法学会使用第三方库小结 零基础人群 现在开发语言各种各样,越来越多,尤其是 python &…

微服务学习笔记--(Gateway网关)

统一网关Gateway 为什么需要网关gateway快速入门断言工厂过滤器工厂全局过滤器跨域问题 Gateway网关-网关作用介绍 为什么需要网关 网关功能: 身份认证和权限校验服务路由、负载均衡请求限流 网关的技术实现 在SpringCloud中网关的实现包括两种: …

ORACLE 新闻速递 ORACLE 23C 免费提供给开发者 为什么???

开头还是介绍一下群,如果感兴趣polardb ,mongodb ,mysql ,postgresql ,redis 等有问题,有需求都可以加群群内有各大数据库行业大咖,CTO,可以解决你的问题。加群请联系 liuaustin3 ,在新加的朋友会分到2群(共…

EXCEL: 查找符合多个条件,并且不重复的数据的个数的3种方法:公式,数据透视表,数组公式

1 目标问题:想筛选出(在a列月份为5)且不重复的b列数据有几个 有2个条件 查找第1列月份为5月的并且第2列不重复的数据个数 方法1:用加辅助列简单公式的办法 其实逻辑是更清晰的,就是显得步骤繁琐 第1个辅助列1,查找日期中的月份…

VMware 产品下载汇总 2023 持续更新中

本站 VMware 产品下载汇总:vSphere、NSX、Tanzu、Aria、Cloud… 请访问原文链接:https://sysin.org/blog/vmware/,查看最新版。原创作品,转载请保留出处。 作者主页:sysin.org 本站提供的 VMware 软件全部为 “试用版…

MySQL 日期函数

MySQL的日期函数主要用来对日期和时间类型的数据进行计算、格式化和转换,能够帮助程序员更加方便地处理存储在MySQL数据库中的时间数据。使用这些函数可以实现以下功能: 格式化日期和时间:通过指定不同的日期格式输出相应的日期或时间字符串…

数据结构lab3-图型结构的建立与搜索

title: 数据结构lab3-图型结构的建立与搜索 date: 2023-05-16 11:42:26 tags: 数据结构与算法 课程名称:数据结构与算法 课程类型:必修 实验项目:图型结构的建立与搜索 实验题目:图的存储结构的建立与搜索 实验日期&#xff1…

论文解读|MetaAI图像分割基础模型SAM——解锁数字大脑“视觉区”

原创 | 文 BFT机器人 内容提要 事件背景: 2023年4月5日,MetaAI研究团队发布论文“分割一切”一《Segment Anything》并在官网发布了图像分割基础模型一Segment Anything Model(SAM)以及图像注释数据集Segment-Anything 1-Billion(SA-1B)。 论文核心观点 : 目…