广告
返回顶部
首页 > 资讯 > 数据库 >Oracle 之 AIO (异步io)
  • 274
分享到

Oracle 之 AIO (异步io)

2024-04-02 19:04:59 274人浏览 八月长安
摘要

 linux 异步 I/O (Aio)是 Linux 内核中提供的一个增强的功能。它是Linux 2.6 版本内核的一个标准特性,aiO 背后的基本思想是允许进程发起很多 I/O 操作,而不用



linux 异步 I/O (Aio)是 Linux 内核中提供的一个增强的功能。它是Linux 2.6 版本内核的一个标准特性,aiO 背后的基本思想是允许进程发起很多 I/O 操作,而不用阻塞或等待任何操作完成。稍后或在接收到 I/O 操作完成的通知时,进程就可以检索 I/O 操作的结果。

同步IO:线程启动一个IO操作然后就立即进入等待状态,直到IO操作完成后才醒来继续执行。
异步IO:线程发送一个IO请求到内核,然后继续处理其他的事情,内核完成IO请求后,将会通知线程IO操作完成

补充:当后台等待事件排在第一的是 db file async I/O submit,这是一个异步IO相关的等待事件,可以考虑开启异步io。

1、--查看系统是否使用异步IO 。 slab是Linux的内存分配器,AIO相关的内存结构已经分配。
more /proc/slabinfo |grep kio
[root@localhost ~]# grep kio /proc/slabinfo
kioctx 0 0 384 10 1 : tunables 54 27 0 : slabdata 0 0 0
kiocb 0 0 256 15 1 : tunables 120 60 0 : slabdata 0 0 0
看到kiocb行显示为0,说明异步IO没有启动。

2、 查看数据库是否开启异步io
(11G)SYS@qixindb> show parameter disk_asynch_io
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
disk_asynch_io boolean TRUE

(11G)SYS@qixindb> show parameter filesystem
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
filesystemio_options string none

filesystemio_options 的四种值:
ASYNCH: enable asynchronous I/O on file system files, which has no timing requirement for transmission.
在文件系统文件上启用异步I/O,在数据传送上没有计时要求。
DIRECTIO: enable direct I/O on file system files, which bypasses the buffer cache.
在文件系统文件上启用直接I/O,绕过buffer cache。
SETALL: enable both asynchronous and direct I/O on file system files.
在文件系统文件上启用异步和直接I/O。
NONE: disable both asynchronous and direct I/O on file system files.
在文件系统文件上禁用异步和直接I/O。

3、 oracle已经链接了aio的包
[oracle@localhost ~]$ /usr/bin/ldd $ORACLE_HOME/bin/oracle | grep libaio
libaio.so.1 => /lib64/libaio.so.1 (0x0000003e13000000)
说明:检查显示oracle已经链接了aio的包

4、 调整数据库参数 开启aio
数据库中的filesystemio_options参数设置为none,看来oracle中也没有配置异步IO,
这里可以将数据库中的filesystemio_options参数调整为setall;

sql> alter system set filesystemio_options = setall scope=spfile; 
SQL> alter system set disk_asynch_io = true scope=spfile; 
SQL> shutdown immediate;
SQL> startup;

5、查看aio是否生效
[oracle@localhost ~]$ more /proc/slabinfo |grep kio
kioctx 130 160 384 10 1 : tunables 54 27 8 : slabdata 16 16 0
kiocb 16 30 256 15 1 : tunables 120 60 8 : slabdata 2 2 1

6、 数据库层面查看是否开启异步io
select name, asynch_io
from v$datafile f, v$iOStat_file i
where f.file# = i.file_no
and (filetype_name = 'Data File' or filetype_name = 'Temp File');

 


您可能感兴趣的文档:

--结束END--

本文标题: Oracle 之 AIO (异步io)

本文链接: https://www.lsjlt.com/news/48788.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Oracle 之 AIO (异步io)
     Linux 异步 I/O (AIO)是 Linux 内核中提供的一个增强的功能。它是Linux 2.6 版本内核的一个标准特性,AIO 背后的基本思想是允许进程发起很多 I/O 操作,而不用...
    99+
    2022-10-18
  • oracle 异步IO简述
           在同步IO中,线程启动一个IO请求之后就进入等待状态,知道IO结束后线程才结束等待,转而去处理其他请求。异步IO将IO请求发送到内...
    99+
    2022-10-18
  • python之事件驱动与异步IO
      写服务器处理模型的程序时,通常有以下几种模型:  1.每收到一个请求,创建一个新的进程来处理该请求  2.每收到一个请求,创建一个新的线程来处理该请求  3.每收到一个请求,放入一个事件列表,让主进程通过非阻塞I/O方式来处理请求(协程...
    99+
    2023-01-31
    事件 python IO
  • Java框架解说之BIO NIO AIO不同IO模型演进之路
    目录引言IO模型1、什么是IO2、应用程序IO交互(1)计算机资源统一管理(2)底层硬件调用统一封装3、5种IO模型(1)阻塞型IO(2)非阻塞型IO(3)多路复用IO(4)信号驱动...
    99+
    2022-11-12
  • Innodb关键特性之什么是异步IO
    这篇文章主要介绍“Innodb关键特性之什么是异步IO”,在日常操作中,相信很多人在Innodb关键特性之什么是异步IO问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Inno...
    99+
    2022-10-18
  • Python3 异步IO--asynci
    Python3 异步IO--asyncio asyncio是Python 3.4版本引入的标准库,直接内置了对异步IO的支持。 asyncio的编程模型就是一个消息循环。我们从asyncio模块中直接获取一个EventLoop的引用,然后...
    99+
    2023-01-31
    IO asynci
  • Python3 异步IO--async/
    Python3 异步IO--async/await 用asyncio提供的@asyncio.coroutine可以把一个generator标记为coroutine类型,然后在coroutine内部用yield from调用另一个corout...
    99+
    2023-01-31
    IO async
  • oracle异步IO中的filesystemio_options参数是怎样的
    本篇文章给大家分享的是有关oracle异步IO中的filesystemio_options参数是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看...
    99+
    2022-10-19
  • Python3 异步IO--协程
    Python3 异步IO--协程 概念: 协程,又称微线程,纤程。英文名Coroutine。 协程的概念很早就提出来了,但直到最近几年才在某些语言(如Lua)中得到广泛应用。 子程序,或者称为函数,在所有语言中都是层级调用,比如A调用B...
    99+
    2023-01-31
    IO 协程
  • golang是异步io吗
    golang不是异步io,但golang提供了一种简化并发编程的方式,使得在处理I/O操作时可以实现异步效果。在Golang中,可以使用goroutines和channels实现非阻塞的异步I/O操作,Golang还提供了一些标准库,例如n...
    99+
    2023-07-24
  • 一步步理解python的异步IO
      分享至:一步步理解python的异步IO 前言 看到越来越多的大佬都在使用python的异步IO,协程等概念来实现高效的IO处理过程,可是我对这些概念还不太懂,就学习了一下。 因为是初学者,在理解上有很多不到位的地方,如果有错误,还希...
    99+
    2023-01-31
    python IO
  • nodejs是同步还是异步io
    Node.js是一种基于Chrome V8引擎的JavaScript运行环境,它允许开发者使用JavaScript来编写服务器端代码。在Node.js中,I/O是一个核心概念,它非常重要,因为在服务器应用程序中,I/O操作往往是最常见的操作...
    99+
    2023-05-23
  • asyncio异步IO--协程(Coro
    摘要:本文翻译自Coroutines and Tasks,主要介绍asyncio中用于处理协程和任务的方法和接口。在翻译过程中,译者在官方文档的基础上增加了部分样例代码和示意图表,以帮助读者对文档的理解。本文内容主要针对python3.7...
    99+
    2023-01-30
    IO asyncio Coro
  • Python异步IO怎么理解
    这篇文章主要讲解了“Python异步IO怎么理解”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python异步IO怎么理解”吧!Python 3.4标准库有一个新模块asyncio,用来支持...
    99+
    2023-06-17
  • Oracle GoldenGate学习之--异构平台同步(Mysql到Oracle)
    Oracle GoldenGate学习之--异构平台同步(Mysql到Oracle)如图所示:源端采用Mysql库,目标端采用Oracle库一、OGG安装配置(源端)1、OGG下载https://edeli...
    99+
    2022-10-18
  • Python笔记-IO同步和异步、 读写
    IO:Input/Output 由于CPU和内存的速度远远高于外设的速度,所以,在IO编程中,就存在速度严重不匹配的问题。举个例子来说,比如要把100M的数据写入磁盘,CPU输出100M的数据只需要0.01秒,可是磁盘要接收这10...
    99+
    2023-01-31
    笔记 Python IO
  • Node.js 的异步 IO 性能探讨
    Python 和 Ruby 也有这样的框架,但因为在实际使用中会不可避免地用到含有同步代码的库,因此没能成长起来,而在 Node.js 之前,JavaScript 的服务器端编程几乎是空白,所以 Node....
    99+
    2022-06-04
    性能 Node js
  • Java非阻塞IO和异步IO的详细介绍
    这篇文章主要讲解了“Java非阻塞IO和异步IO的详细介绍”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java非阻塞IO和异步IO的详细介绍”吧!阻塞模式 IO我们已经介绍过使用 Java...
    99+
    2023-06-02
  • Nodejs中的非阻塞异步IO是什么
    这篇文章主要讲解了“Nodejs中的非阻塞异步IO是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Nodejs中的非阻塞异步IO是什么”吧!我们以网络请求IO为例,首先介绍服务端处理一次...
    99+
    2023-07-04
  • React Suspense前后端IO异步操作处理
    目录简单介绍SuspenseSuspense主要用法和场景一. React18之前的做法二. React18之后Suspense配合前端表格组件处理前后端IO异步操作简单介绍Susp...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作