Oralce集群管理-19C RAC 私有网络调整为BOND1
1 尝试在线添加私有网络的新接口 是否成功。
使用oifcfg命令在线添加新的网卡接口,在还没有配置bond1的条件下
也是可以添加成功的。
[grid@orcldb1 ~]$ oifcfg getif
eno3 192.168.224.0 global public
ens3f0 10.2.0.0 global cluster_interconnect,asm
eno3 4509:8002:5A06:0120:0010:0000:0002:D000 global public
[grid@orcldb1 ~]$ oifcfg setif -global bond1/10.2.0.0:cluster_interconnect,asm
[grid@orcldb1 ~]$ oifcfg getif
eno3 192.168.224.0 global public
ens3f0 10.2.0.0 global cluster_interconnect,asm
eno3 4509:8002:5A06:0120:0010:0000:0002:D000 global public
bond1 10.2.0.0 global cluster_interconnect,asm
[grid@orcldb1 ~]$ oifcfg delif -global bond1/10.2.0.0
[grid@orcldb1 ~]$ oifcfg getif
eno3 192.168.224.0 global public
ens3f0 10.2.0.0 global cluster_interconnect,asm
eno3 4509:8002:5A06:0120:0010:0000:0002:D000 global public
[grid@orcldb1 ~]$
2 OCR备份
[root@orcldb1 bin]# ./ocrconfig -showbackup
orcldb2 2023/06/29 06:53:23 +DATA:/orcldb/OCRBACKUP/backup00.ocr.272.1140764001 479021767
orcldb2 2023/06/29 02:53:20 +DATA:/orcldb/OCRBACKUP/backup01.ocr.258.1140749597 479021767
orcldb2 2023/06/28 22:53:15 +DATA:/orcldb/OCRBACKUP/backup02.ocr.274.1140735193 479021767
orcldb2 2023/06/27 06:51:06 +DATA:/orcldb/OCRBACKUP/day.ocr.262.1140591067 479021767
orcldb2 2023/06/17 18:58:03 +DATA:/orcldb/OCRBACKUP/week.ocr.260.1139770683 479021767
orcldb2 2023/03/27 10:33:33 +DATA:/orcldb/OCRBACKUP/backup_20230327_103333.ocr.273.1132569213 479021767
orcldb2 2023/03/27 10:22:42 +DATA:/orcldb/OCRBACKUP/backup_20230327_102242.ocr.271.1132568563 479021767
orcldb2 2023/03/24 14:09:26 +DATA:/orcldb/OCRBACKUP/backup_20230324_140926.ocr.259.1132322967 294213661
orcldb1 2020/08/04 15:28:17 +DATA:/orcldb/OCRBACKUP/backup_20200804_152817.ocr.269.1047569297 294213661
orcldb1 2020/05/13 13:17:36 +DATA:/orcldb/OCRBACKUP/backup_20200513_131736.ocr.261.1040303857 2798127435
[root@orcldb1 bin]# ./ocrconfig -manualbackup
orcldb2 2023/06/29 10:21:21 +DATA:/orcldb/OCRBACKUP/backup_20230629_102121.ocr.263.1140776483 479021767
orcldb2 2023/03/27 10:33:33 +DATA:/orcldb/OCRBACKUP/backup_20230327_103333.ocr.273.1132569213 479021767
orcldb2 2023/03/27 10:22:42 +DATA:/orcldb/OCRBACKUP/backup_20230327_102242.ocr.271.1132568563 479021767
orcldb2 2023/03/24 14:09:26 +DATA:/orcldb/OCRBACKUP/backup_20230324_140926.ocr.259.1132322967 294213661
orcldb1 2020/08/04 15:28:17 +DATA:/orcldb/OCRBACKUP/backup_20200804_152817.ocr.269.1047569297 294213661
[root@orcldb1 bin]#
3 查看当前网络信息
[root@orcldb1 bin]# ./oifcfg getif
eno3 192.168.224.0 global public
ens3f0 10.2.0.0 global cluster_interconnect,asm
eno3 4509:8002:5A06:0120:0010:0000:0002:D000 global public
[root@orcldb1 bin]#
oifcfg setif -global bond1/10.2.0.0:cluster_interconnect,asm
[root@orcldb2 bin]# ./oifcfg getif
eno3 192.168.224.0 global public
ens3f0 10.2.0.0 global cluster_interconnect,asm
eno3 4509:8002:5A06:0120:0010:0000:0002:D000 global public
bond1 10.2.0.0 global cluster_interconnect,asm
[root@orcldb2 bin]#
4 停止OGG复制进程
GGSCI (orcl_DB_01) 6> info all ---之前关闭集群总是出现 ogg无法umount的error,将dpe传输进程停止之后,报错消失。
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
EXTRACT RUNNING DPEARS_A 00:00:02 00:00:05
EXTRACT RUNNING DPEARS_B 00:00:00 00:00:07
EXTRACT STOPPED DPERAC_A 00:00:02 00:00:01
EXTRACT RUNNING EXTARS_A 00:00:00 00:00:01
EXTRACT RUNNING EXTARS_B 00:00:02 00:00:02
EXTRACT RUNNING EXTRAC_A 00:00:01 00:00:07
GGSCI (orcl_DB_01) 7>
5 关闭节点HAS
节点1节点2关闭has,
./crsctl stop has
6 配置私有网络BOND
---配置bond1 双网卡。
slave添加如下5行
USERCTL=no
MASTER=bond1
SLAVE=yes
NM_CONTROLLED=no
HOTPLUG=no
master配置
DEVICE=bond1
IPADDR=10.2.0.120
NETMASK=255.255.255.0
#GATEWAY=10.2.0.1
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
BONDING_OPTS="mode=1 miimon=100"
NM_CONTROLLED=no
HOTPLUG=no
7 重启网络服务
systemctl restart network
[root@orcldb1 ~]# ip addr
[orcl@orcldb1 ~]$ cat /proc/net/bonding/bond1
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: ens3f0
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
Slave Interface: ens3f0
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 34:0a:98:9c:ed:45
Slave queue ID: 0
Slave Interface: ens3f1
MII Status: down
Speed: Unknown
Duplex: Unknown
Link Failure Count: 0
Permanent HW addr: 34:0a:98:9c:ed:46
Slave queue ID: 0
[orcl@orcldb1 ~]$
[root@orcldb1 network-scripts]# more ifcfg-bond1
DEVICE=bond1
IPADDR=10.2.0.120
NETMASK=255.255.255.0
#GATEWAY=10.2.0.1
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
BONDING_OPTS="mode=1 miimon=100"
NM_CONTROLLED=no
HOTPLUG=no
[root@orcldb1 network-scripts]# more ifcfg-ens3f0
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens3f0
UUID=cc18f2de-d837-40d8-8445-a13c5da7a8cc
DEVICE=ens3f0
ONBOOT=yes
USERCTL=no
MASTER=bond1
SLAVE=yes
NM_CONTROLLED=no
HOTPLUG=no
[root@orcldb1 network-scripts]# more ifcfg-ens3f1
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens3f1
UUID=207bf934-ff44-4e05-aea7-bc330672369b
DEVICE=ens3f1
ONBOOT=yes
USERCTL=no
MASTER=bond1
SLAVE=yes
NM_CONTROLLED=no
HOTPLUG=no
[root@orcldb1 network-scripts]#
节点2 按照上面操作 配置bond1即可。
8 双网卡测试 :
9 启动集群 。
10 查看GIPC日志
2023-06-29 14:54:28.170 :GIPCDCLT:221996800: gipcdClientInterfaceMetrics: Received type(gipcdmsgtypeInterfaceMetrics), endp(000000000000028f), len(1024), buf(0x7f1ff4359488), inf(ip: 10.2.0.120:43466, mask: 255.255.255.0, subnet: 10.2.0.0, mac: , ifname: bond1) time(0), retry(0), stamp(3), send(2), recv(3)
2023-06-29 14:54:28.170 :GIPCDCLT:221996800: gipcdClientInterfaceMetrics: enqueue interface metrics (1:orcldb1:bond1) to worklist
2023-06-29 14:54:31.231 : CLSINET:217794304: (:CLSINE0018:)WARNING: failed to find interface available for interface definition ens3f0(:.*)?:10.2.0.0
2023-06-29 14:54:33.222 :GIPCDMON:217794304: gipcdMonitorSaveInfMetricsNonOda: inf[ 0] bond1 - rank 99, node orcldb2 , avgms 2.413793 [30/29/29]
2023-06-29 14:54:33.222 :GIPCDMON:217794304: gipcdMonitorSaveInfMetricsNonOda: inf[ 1] bond1 - rank 99, node orcldb1 , avgms 2.413793 [30/29/29]
2023-06-29 14:54:35.335 : CLSINET:217794304: (:CLSINE0018:)WARNING: failed to find interface available for interface definition ens3f0(:.*)?:10.2.0.0
2023-06-29 14:54:37.178 :GIPCHTHR:210466560: gipchaWorkerWork: workerThread heart beat, time interval since last heartBeat 30020 loopCount 31 sendCount 0 recvCount 18 postCount 0 sendCmplCount 0 recvCmplCount 0
2023-06-29 14:54:38.328 :GIPCDMON:217794304: gipcdMonitorSaveInfMetricsNonOda: inf[ 0] bond1 - rank 99, node orcldb2 , avgms 1.333333 [45/45/45]
2023-06-29 14:54:38.328 :GIPCDMON:217794304: gipcdMonitorSaveInfMetricsNonOda: inf[ 1] bond1 - rank 99, node orcldb1 , avgms 1.333333 [45/45/45]
2023-06-29 14:54:39.441 : CLSINET:217794304: (:CLSINE0018:)WARNING: failed to find interface available for interface definition ens3f0(:.*)?:10.2.0.0
2023-06-29 14:54:40.380 :GIPCHTHR:208365312: gipchaDaemonWork: DaemonThread heart beat, time interval since last heartBeat 30030 loopCount 42
发现 原来的网卡信息报错,bond1 rank正常
11 删除旧的私网信息
[grid@orcldb1 ~]$ oifcfg delif -global ens3f0/10.2.0.0
[grid@orcldb1 ~]$ oifcfg getif
eno3 192.168.224.0 global public
eno3 4509:8002:5A06:0120:0010:0000:0002:D000 global public
bond1 10.2.0.0 global cluster_interconnect,asm
[grid@orcldb1 ~]$
再次查看gipcd 的日志
grid@orcldb1 trace]$ tail -f gipcd.trc
2023-06-29 16:03:51.324 :GIPCDMON:217794304: gipcdMonitorSaveInfMetricsNonOda: inf[ 0] bond1 - rank 99, node orcldb2 , avgms 2.173913 [23/23/23]
2023-06-29 16:03:51.324 :GIPCDMON:217794304: gipcdMonitorSaveInfMetricsNonOda: inf[ 1] bond1 - rank 99, node orcldb1 , avgms 2.173913 [23/23/23]
2023-06-29 16:03:56.428 :GIPCDMON:217794304: gipcdMonitorSaveInfMetricsNonOda: inf[ 0] bond1 - rank 99, node orcldb2 , avgms 0.400000 [23/25/25]
2023-06-29 16:03:56.428 :GIPCDMON:217794304: gipcdMonitorSaveInfMetricsNonOda: inf[ 1] bond1 - rank 99, node orcldb1 , avgms 0.400000 [23/25/25]
2023-06-29 16:03:56.428 :GIPCDMON:217794304: gipcdMonitorPublishDiags: key gipc_round_trip_time handle 0x7f1fec392160 writeTime 12345264 value <orcldb2:58:12339264:192us>
2023-06-29 16:04:01.524 :GIPCDMON:217794304: gipcdMonitorSaveInfMetricsNonOda: inf[ 0] bond1 - rank 99, node orcldb2 , avgms 0.384615 [23/26/26]
2023-06-29 16:04:01.524 :GIPCDMON:217794304: gipcdMonitorSaveInfMetricsNonOda: inf[ 1] bond1 - rank 99, node orcldb1 , avgms 0.384615 [23/26/26]
2023-06-29 16:04:05.708 :GIPCHTHR:208365312: gipchaDaemonWork: DaemonThread heart beat, time interval since last heartBeat 30030 loopCount 42
2023-06-29 16:04:07.631 :GIPCDMON:217794304: gipcdMonitorSaveInfMetricsNonOda: inf[ 0] bond1 - rank 99, node orcldb2 , avgms 0.416667 [23/24/24]
2023-06-29 16:04:07.631 :GIPCDMON:217794304: gipcdMonitorSaveInfMetricsNonOda: inf[ 1] bond1 - rank 99, node orcldb1 , avgms 0.416667 [23/24/24]
2023-06-29 16:04:12.737 :GIPCDMON:217794304: gipcdMonitorSaveInfMetricsNonOda: inf[ 0] bond1 - rank 99, node orcldb2 , avgms 1.739130 [23/23/23]
2023-06-29 16:04:12.737 :GIPCDMON:217794304: gipcdMonitorSaveInfMetricsNonOda: inf[ 1] bond1 - rank 99, node orcldb1 , avgms 1.739130 [23/23/23]
2023-06-29 16:04:16.321 :GIPCHTHR:210466560: gipchaWorkerWork: workerThread heart beat, time interval since last heartBeat 30040 loopCount 48 sendCount 0 recvCount 18 postCount 0 sendCmplCount 0 recvCmplCount 0
2023-06-29 16:04:17.832 :GIPCDMON:217794304: gipcdMonitorSaveInfMetricsNonOda: inf[ 0] bond1 - rank 99, node orcldb2 , avgms 1.304348 [25/23/23]
2023-06-29 16:04:17.832 :GIPCDMON:217794304: gipcdMonitorSaveInfMetricsNonOda: inf[ 1] bond1 - rank 99, node orcldb1 , avgms 1.304348 [25/23/23]
2023-06-29 16:04:22.937 :GIPCDMON:217794304: gipcdMonitorSaveInfMetricsNonOda: inf[ 0] bond1 - rank 99, node orcldb2 , avgms 1.363636 [21/22/22]
2023-06-29 16:04:22.937 :GIPCDMON:217794304: gipcdMonitorSaveInfMetricsNonOda: inf[ 1] bond1 - rank 99, node orcldb1 , avgms 1.363636 [21/22/22]
报错已经终止。
12 启动OGG传输进程。
相关文章:
Oralce集群管理-19C RAC 私有网络调整为BOND1
1 尝试在线添加私有网络的新接口 是否成功。 使用oifcfg命令在线添加新的网卡接口,在还没有配置bond1的条件下 也是可以添加成功的。 [gridorcldb1 ~]$ oifcfg getif eno3 192.168.224.0 global public ens3f0 10.2.0.0 global cluster_interconnect,asm eno…...
洛谷 Array 数论
题目: 对于长度为n的数组A,A中只包含从1到n的整数(可重复)。如果A单调不上升或单调不下降,A就可称为美丽的。 找出在长度为n时,有几个美丽的A。 思路: 这是一道数论题。 我们先找找“单调不递…...
简明SQL条件查询指南:掌握WHERE实现数据筛选
条件查询是用于从数据库中根据特定条件筛选数据行的一种方式,它避免了检索整个表中的数据。通常,使用 WHERE 子句来定义过滤条件,只有符合这些条件的数据行才会被返回。 SQL中的运算符有:、!、<、> 等,用于进行…...
通过HbaseClient来写Phoenix表实现
由于数据存储在Hbase上,并且上层使用了Phoenix来读写数据。并且由于数据的列字段不固定,并且可能由于Hbase表列和Phoenix的表列字段不一致,使用Phoenix写入的数据会导致写出报错的问题出现。所以这里直接使用HbaseClient写入到Hbase表中&…...
uniapp qiun charts H5使用echarts的eopts配置不生效
原因是:使用web的要设置 echartsH5 :echartsH5"true" <template><view class"charts-box"><view class"chart-title"> 趋势</view><qiun-data-chartstype"column":eopts"eopts":cha…...
嵌入式Linux驱动开发(LCD屏幕专题)(三)
1. 硬件相关的操作 LCD驱动程序的核心就是: 分配fb_info设置fb_info注册fb_info硬件相关的设置 硬件相关的设置又可以分为3部分: 引脚设置时钟设置LCD控制器设置 2. 在设备树里指定LCD参数 framebuffer-mylcd {compatible "100ask,lcd_drv&qu…...
MySQL视图用户管理
文章目录 视图视图的规则用户用户信息创建用户删除用户修改密码 用户权限给用户授权回收权限 视图 视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。视图的数据变化会影响到基表,基表的数据变化也会…...
我发现了一个很好看的字体,霞鹜文楷!如何换windows和typora字体?
1、字体 官方地址如下,下载也很简单。 https://github.com/lxgw/LxgwWenKai 有1W多的stars。 方式: 直接打包下载。下载不来,可以联系我。 然后ttf的文件,全部安装就行了。 reg save "HKCU\Control Panel" .\res…...
微软8月系统更新引发问题:虚拟内存分页文件出现错误
微软的八月系统更新引发了一系列问题,其中包括“UNSUPPORTED_PROCESSOR”蓝屏错误和文件管理器故障。尽管微软已经修复了前者,但据国外科技媒体Windows Latest报道,仍有用户反馈在非微星设备上出现“fault in nonpaged area”蓝屏错误。 如果…...
swiper删除虚拟slide问题
在存在缓存的情况下,删除较前的slide,会出现当前slide与后一个slide重复出现的情况 假设当前存在5个slide,且这5个slide已缓存,则删除slide2后,仍为5个slide,且slide2的内容变为slide3的内容,此…...
FPGA实战小项目2
基于FPGA的贪吃蛇游戏 基于FPGA的贪吃蛇游戏 基于fpga的数字密码锁ego1 基于fpga的数字密码锁ego1 基于fpga的数字时钟 basys3 基于fpga的数字时钟 basys3...
一些关于完整小程序项目的优秀开源
转载自: 35个项目,开源,开源! (qq.com) 那几本霸占我休息时间的PDF! (qq.com) 13个超强的 SpringBoot 实战项目 (还不赶紧收藏起来) (qq.com) 用SpringBoot开发一个人脸识别系统!…...
Windows模拟器推荐
物是人非事事休,欲语泪先流 Windows模拟器推荐 如果你需要在 Windows 操作系统之外运行 Windows 应用程序或测试不同版本的 Windows,有几个 Windows 模拟器和虚拟机软件可供选择。以下是一些常用的 Windows 模拟器和虚拟机软件: VirtualBox&…...
搭建RabbitMQ消息服务,整合SpringBoot实现收发消息
作者主页:Designer 小郑 作者简介:3年JAVA全栈开发经验,专注JAVA技术、系统定制、远程指导,致力于企业数字化转型,CSDN博客专家,蓝桥云课认证讲师。 目录 一、前言1.1 什么是消息队列1.2 RabbitMQ 是什么1.…...
Web framework-Gin(二)
目录 一、Gin 1、Ajax 2、文件上传 2.1、form表单中文件上传(单个文件) 2.2、form表单中文件上传(多个文件) 2.3、ajax上传单个文件 2.4、ajax上传多个文件 3、模板语法 4、数据绑定 5、路由组 6、中间件 一、Gin 1、Ajax AJAX 即“Asynchronous Javascript And XM…...
【聚类】K-Means聚类
cluster:簇 原理: 这边暂时没有时间具体介绍kmeans聚类的原理。简单来说,就是首先初始化k个簇心;然后计算所有点到簇心的欧式距离,对一个点来说,距离最短就属于那个簇;然后更新不同簇的簇心&a…...
超图聚类论文阅读2:Last-step算法
超图聚类论文阅读2:Last-step算法 《使用超图模块化的社区检测算法》 《Community Detection Algorithm Using Hypergraph Modularity》 COMPLEX NETWORKS 2021, SCI 3区 具体实现源码见HyperNetX库 工作:提出了一种用于超图的社区检测算法。该算法的主要…...
React 防抖与节流用法
在React中,防抖和节流是优化性能和提升用户体验的常用技术。下面是它们的用法: 防抖(Debounce):防抖是指在某个事件触发后,等待一段时间后执行回调函数。如果在等待时间内再次触发该事件,将重新…...
发布 VectorTraits v1.0,它是 C# 下增强SIMD向量运算的类库
发布 VectorTraits v1.0, 它是C#下增强SIMD向量运算的类库 VectorTraits: SIMD Vector type traits methods (SIMD向量类型的特征方法). NuGet: https://www.nuget.org/packages/VectorTraits/1.0.0 源代码: https://github.com/zyl910/VectorTraits 用途 总所周知&#x…...
HCIA自学笔记01-冲突域
共享式网络(用同一根同轴电缆通信)中可能会出现信号冲突现象。 如图是一个10BASE5以太网,每个主机都是用同一根同轴电缆来与其它主机进行通信,因此,这里的同轴电缆又被称为共享介质,相应的网络被称为共享介…...
FFmpeg 低延迟同屏方案
引言 在实时互动需求激增的当下,无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作,还是游戏直播的画面实时传输,低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架,凭借其灵活的编解码、数据…...
理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端
🌟 什么是 MCP? 模型控制协议 (MCP) 是一种创新的协议,旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议,它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...
【JVM】- 内存结构
引言 JVM:Java Virtual Machine 定义:Java虚拟机,Java二进制字节码的运行环境好处: 一次编写,到处运行自动内存管理,垃圾回收的功能数组下标越界检查(会抛异常,不会覆盖到其他代码…...
蓝桥杯 2024 15届国赛 A组 儿童节快乐
P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡,轻快的音乐在耳边持续回荡,小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下,六一来了。 今天是六一儿童节,小蓝老师为了让大家在节…...
spring:实例工厂方法获取bean
spring处理使用静态工厂方法获取bean实例,也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下: 定义实例工厂类(Java代码),定义实例工厂(xml),定义调用实例工厂ÿ…...
Xen Server服务器释放磁盘空间
disk.sh #!/bin/bashcd /run/sr-mount/e54f0646-ae11-0457-b64f-eba4673b824c # 全部虚拟机物理磁盘文件存储 a$(ls -l | awk {print $NF} | cut -d. -f1) # 使用中的虚拟机物理磁盘文件 b$(xe vm-disk-list --multiple | grep uuid | awk {print $NF})printf "%s\n"…...
技术栈RabbitMq的介绍和使用
目录 1. 什么是消息队列?2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...
第7篇:中间件全链路监控与 SQL 性能分析实践
7.1 章节导读 在构建数据库中间件的过程中,可观测性 和 性能分析 是保障系统稳定性与可维护性的核心能力。 特别是在复杂分布式场景中,必须做到: 🔍 追踪每一条 SQL 的生命周期(从入口到数据库执行)&#…...
用鸿蒙HarmonyOS5实现中国象棋小游戏的过程
下面是一个基于鸿蒙OS (HarmonyOS) 的中国象棋小游戏的实现代码。这个实现使用Java语言和鸿蒙的Ability框架。 1. 项目结构 /src/main/java/com/example/chinesechess/├── MainAbilitySlice.java // 主界面逻辑├── ChessView.java // 游戏视图和逻辑├──…...
Linux 下 DMA 内存映射浅析
序 系统 I/O 设备驱动程序通常调用其特定子系统的接口为 DMA 分配内存,但最终会调到 DMA 子系统的dma_alloc_coherent()/dma_alloc_attrs() 等接口。 关于 dma_alloc_coherent 接口详细的代码讲解、调用流程,可以参考这篇文章,我觉得写的非常…...
