CN115657932A - 业务处理方法及相关设备 - Google Patents
业务处理方法及相关设备 Download PDFInfo
- Publication number
- CN115657932A CN115657932A CN202211103257.0A CN202211103257A CN115657932A CN 115657932 A CN115657932 A CN 115657932A CN 202211103257 A CN202211103257 A CN 202211103257A CN 115657932 A CN115657932 A CN 115657932A
- Authority
- CN
- China
- Prior art keywords
- hard disk
- array card
- service command
- service
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 39
- 230000001133 acceleration Effects 0.000 claims abstract description 76
- 238000012545 processing Methods 0.000 claims abstract description 45
- 238000000034 method Methods 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 10
- 238000004458 analytical method Methods 0.000 claims description 5
- 230000009286 beneficial effect Effects 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000013403 standard screening design Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本申请公开了一种业务处理方法,应用于阵列卡固件,包括当获取到业务命令时,对所述业务命令进行解析,获得头信息;根据所述头信息中的硬盘信息确定所述业务命令对应的硬盘设备;若所述硬盘设备为预设加速硬盘,则在所述业务命令中增设绑定标识,以使所述阵列卡驱动根据所述绑定标识将所述预设加速硬盘所在的阵列卡与所述阵列卡对应的CPU内核进行绑定,并利用所述CPU内核执行所述业务命令。应用本申请所提供的技术方案,可以在不同应用场景下,发挥出硬盘的最大性能,提高硬盘所在阵列卡的易用性。本申请还公开了另一种业务处理方法、业务处理装置、电子设备及计算机可读存储介质,均具有上述有益效果。
Description
技术领域
本申请涉及硬件开发技术领域,特别涉及一种业务处理方法以及相关设备。
背景技术
随着硬盘技术的快速发展和更新换代,单个硬盘的性能在不断提高,客户对高性能盘的需求也在不断增加。但是,伴随着单个硬盘性能的提高,如何在兼顾数据安全的前提下发挥出每个硬盘的最大性能成为新的难点。
例如,NVMe(Non-Volatile Memory express,非易失性内存主机控制器接口规范)SSD(Solid State Disk、Solid State Drive,固态驱动器)可以通过PCIe(PeripheralComponent Interconnect express,一种高速串行计算机扩展总线标准)转接卡直接板载接CPU(central processing unit,中央处理器)使用;SATA(Serial Advanced TechnologyAttachment,串行高级技术附件)SSD可以通过主板上面的板载SATA和sSATA接口(Supports.SATA接口,拓展SATA接口)接CPU使用,并能组软RAID(Redundant Arrays ofIndependent Disks,磁盘阵列)阵列。NVMe、SAS(Serial Attached SCSI,串行连接SCSI)、SATA等都可以通过支持Tri-mode功能的RAID卡/SAS卡来使用,并可以组硬RAID来实现冗余数据保护功能。然而,NVMe SSD通过PCIe转接卡板载使用,在盘数量比较少时可以发挥到单盘最大性能,但是随着盘数量增加,性能会有下降并且大幅波动,另外,板载NVMe没有数据保护功能;SATA SSD板载使用,其性能存在较低的瓶颈(2G),不符合目前主流需求,另外,软RAID会占用较大的CPU资源,在CPU使用率比较高的情况下,性能下降严重;使用Tri-mode功能的RAID卡/SAS卡,在支持多个高性能的NVMe SSD或SAS SSD时,会出现性能降低和大幅波动,而且每个盘性能分布不平均。
因此,如何在不同应用场景下,发挥出硬盘的最大性能,提高硬盘所在阵列卡的易用性是本领域技术人员亟待解决的问题。
发明内容
本申请的目的是提供一种业务处理方法,该业务处理方法可以在不同应用场景下,发挥出硬盘的最大性能,提高硬盘所在阵列卡的易用性;本申请的另一目的是提供另一种业务处理方法、业务处理装置、电子设备及计算机可读存储介质,均具有上述有益效果。
第一方面,本申请提供了一种业务处理方法,应用于阵列卡固件,包括:
当获取到业务命令时,对所述业务命令进行解析,获得头信息;
根据所述头信息中的硬盘信息确定所述业务命令对应的硬盘设备;
若所述硬盘设备为预设加速硬盘,则在所述业务命令中增设绑定标识,以使所述阵列卡驱动根据所述绑定标识将所述预设加速硬盘所在的阵列卡与所述阵列卡对应的CPU内核进行绑定,并利用所述CPU内核执行所述业务命令。
可选地,所述当获取到业务命令时,对所述业务命令进行解析,获得头信息之前,还包括:
当接收到阵列卡加载指令时,获取所述阵列卡的拓扑结构;
获取关于所述拓扑结构的配置信息;
根据所述配置信息确定所述预设加速硬盘。
可选地,所述根据所述配置信息确定所述预设加速硬盘之后,还包括:
当所述拓扑结构为Expander配置结构或Switch配置结构时,确定所述预设加速硬盘的硬盘数量与上行链路数量的占比;
当所述占比低于预设阈值时,对所述预设加速硬盘进行上行链路绑定。
可选地,所述预设加速硬盘为NVMe硬盘和/或SAS硬盘;
当所述预设加速硬盘为所述NVMe硬盘时,所述硬盘信息为硬盘设备号;
当所述预设加速硬盘为所述SAS硬盘时,所述硬盘信息为硬盘地址。
第二方面,本申请提供了另一种业务处理方法,应用于阵列卡驱动,包括:
获取业务命令;
判断所述业务命令是否包含绑定标识;
若是,则确定所述业务命令对应的硬盘设备,并根据所述绑定标识将所述硬盘设备所在的阵列卡与所述阵列卡对应的CPU内核进行绑定;
利用所述CPU内核执行所述业务命令。
可选地,所述获取业务命令之前,还包括:
获取所述阵列卡对应的PCIe信息;
从所述PCIe信息中提取获得NUMA信息;
在CPU内核列表中查询获得所述NUMA信息对应的CPU内核信息;
根据所述CPU内核信息确定所述阵列卡对应的CPU内核。
第三方面,本申请还公开了一种业务处理装置,应用于阵列卡固件,包括:
解析模块,用于当获取到业务命令时,对所述业务命令进行解析,获得头信息;
确定模块,用于根据所述头信息中的硬盘信息确定所述业务命令对应的硬盘设备;
设置模块,用于若所述硬盘设备为预设加速硬盘,则在所述业务命令中增设绑定标识,以使所述阵列卡驱动根据所述绑定标识将所述预设加速硬盘所在的阵列卡与所述阵列卡对应的CPU内核进行绑定,并利用所述CPU内核执行所述业务命令。
第四方面,本申请还公开了另一种业务处理装置,应用于阵列卡驱动,包括:
获取模块,用于获取业务命令;
判断模块,用于判断所述业务命令是否包含绑定标识;
绑定模块,用于若所述业务命令中包含所述绑定标识,则确定所述业务命令对应的硬盘设备,并根据所述绑定标识将所述硬盘设备所在的阵列卡与所述阵列卡对应的CPU内核进行绑定;
执行模块,用于利用所述CPU内核执行所述业务命令。
第五方面,本申请还公开了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上所述的任一种业务处理方法的步骤。
第六方面,本申请还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的任一种业务处理方法的步骤。
应用本申请所提供的技术方案,通过阵列卡固件对阵列卡中需要加速的硬盘(即上述预设加速硬盘)对应的业务命令增加绑定标识,进而通过阵列卡驱动在获得设置有绑定标识的业务命令时,可以先将阵列卡与其对应的CPU内核进行绑定,再利用绑定的CPU内核执行该业务命令,从而实现业务处理,由此,实现了阵列卡中所有针对预设加速硬盘的业务命令均被绑定了CPU内核,可以有效避免业务命令走较远的CPU和内存的链路,从而保证了预设加速硬盘性能最大程度的发挥,可见,该种实现方式可以在不同应用场景下,发挥出硬盘的最大性能,提高硬盘所在阵列卡的易用性。
附图说明
为了更清楚地说明现有技术和本申请实施例中的技术方案,下面将对现有技术和本申请实施例描述中需要使用的附图作简要的介绍。当然,下面有关本申请实施例的附图描述的仅仅是本申请中的一部分实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图,所获得的其他附图也属于本申请的保护范围。
图1为本申请所提供的一种业务处理方法的流程示意图;
图2为本申请所提供的另一种业务处理方法的流程示意图;
图3为本申请所提供的一种业务处理装置的结构示意图;
图4为本申请所提供的另一种业务处理装置的结构示意图;
图5为本申请所提供的一种电子设备的结构示意图。
具体实施方式
本申请的核心是提供一种业务处理方法,该业务处理方法可以在不同应用场景下,发挥出硬盘的最大性能,提高硬盘所在阵列卡的易用性;本申请的另一核心是提供另一种业务处理方法、业务处理装置、电子设备及计算机可读存储介质,均具有上述有益效果。
为了对本申请实施例中的技术方案进行更加清楚、完整地描述,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行介绍。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供了一种业务处理方法。
请参考图1,图1为本申请所提供的一种业务处理方法的流程示意图,该业务处理方法可以包括如下S101至S103。
首先,需要说明的是,本申请实施例所提供的业务处理方法应用于阵列卡固件,即S101和S103的实现流程由阵列卡固件执行。
S101:当获取到业务命令时,对业务命令进行解析,获得头信息;
本步骤旨在实现业务命令的获取与解析,其中,业务命令即为接收到的需要执行的业务命令,用以实现相应的业务处理。当获取到业务命令时,则可以对其进行命令解析,得到其中的头信息,即Header信息,该头信息中包含有该业务命令对应的硬盘的硬盘信息,用于实现硬盘识别,即识别该业务命令所对应的硬盘设备。其中,业务命令的获取方式并不唯一,可以由用户直接输入,也可以是响应预设条件自动触发,本申请对此不做赘述。
S102:根据头信息中的硬盘信息确定业务命令对应的硬盘设备;
本步骤旨在基于头信息实现业务命令对应的硬盘设备的实现。在从业务命令中解析得到头信息之后,即可从中提取获得硬盘信息,该硬盘信息是指业务命令所对应的硬盘设备的相关信息,包括但不限于设备号、功能号、总线号、地址信息等,由此,即可根据这些硬件信息实现硬件设备识别,确定上述业务命令对应的硬盘设备。
S103:若硬盘设备为预设加速硬盘,则在业务命令中增设绑定标识,以使阵列卡驱动根据绑定标识将预设加速硬盘所在的阵列卡与阵列卡对应的CPU内核进行绑定,并利用CPU内核执行业务命令。
本步骤旨在实现预设加速硬盘的业务命令绑定。在识别确定业务命令对应的硬盘设备之后,首先判断该硬盘设备是否为预设加速硬盘,其中,预设加速硬盘是指阵列卡中预先指定的需要发挥最大性能的硬盘设备,可以理解的是,阵列卡是由多个硬盘设备组成的硬盘阵列,其中可以包含有各种类型的硬盘设备,如高性能硬盘和普通硬盘等,此处,可以设置阵列卡中的高性能硬盘作为预设加速硬盘,即预先指定对阵列卡中的高性能硬盘进行性能加速,以发挥其最大性能。
进一步,当业务命令对应的硬盘设备为预设加速硬盘时,即可在业务命令中增设一个绑定标识,由此,当将业务命令发送至阵列卡确定进行执行时,阵列卡驱动在读取该业务命令的过程中,必然将会读取到其中的绑定标识,此时,即可根据该绑定标识将当前阵列卡(即硬盘设备所在的阵列卡)与其对应的CPU内核进行绑定,以便于利用该CPU内核执行业务命令,从而实现业务处理。显然,对于阵列卡中需要进行性能加速的硬盘设备,通过对其对应的业务命令增设绑定标识,即可实现阵列卡与相应CPU内核的绑定,使得业务命令可以直接由阵列卡对应的CPU内核执行,避免业务命令被分配到其他CPU内核上进行处理,进而避免不必要的链路传输,以实现硬盘加速,发挥出硬盘的最大性能。
反之,当业务命令对应的硬盘设备不是预设加速硬盘时,说明该硬盘设备无需进行性能加速,此时,按照常规的处理流程进行业务命令的执行即可。可以理解的是,在此情况下,执行业务命令的CPU内核可以为主体设备中的任意一个CPU内核。
可见,本申请实施例所提供的业务处理方法,通过阵列卡固件对阵列卡中需要加速的硬盘(即上述预设加速硬盘)对应的业务命令增加绑定标识,进而通过阵列卡驱动在获得设置有绑定标识的业务命令时,可以先将阵列卡与其对应的CPU内核进行绑定,再利用绑定的CPU内核执行该业务命令,从而实现业务处理,由此,实现了阵列卡中所有针对预设加速硬盘的业务命令均被绑定了CPU内核,可以有效避免业务命令走较远的CPU和内存的链路,从而保证了预设加速硬盘性能最大程度的发挥,可见,该种实现方式可以在不同应用场景下,发挥出硬盘的最大性能,提高硬盘所在阵列卡的易用性。
在本申请的一个实施例中,上述当获取到业务命令时,对业务命令进行解析,获得头信息之前,还可以包括如下步骤:
当接收到阵列卡加载指令时,获取阵列卡的拓扑结构;
获取关于拓扑结构的配置信息;
根据配置信息确定预设加速硬盘。
本申请实施例提供了一种确定预设加速硬盘的实现方法。具体而言,在主体设备开机运行之后,阵列卡会被正常加载,此时,将会采集到关于该阵列卡的加载指令;进一步,在接收到阵列卡加载指令时,即可采集阵列卡的拓扑结构,该拓扑结构包括有相应阵列卡下的盘设备、背板设备等的拓扑信息,由此,即可输出该拓扑结构至可视化界面,以便于用户可以根据实际需求选择阵列卡中需要进行性能加速的硬盘设备,并生成相应的配置信息,当然,该配置信息即包括有用户指定的需要进行性能加速的硬盘设备的相关信息,用于指定相应的硬盘设备为预设加速硬盘;最后,在获得用户输入的关于拓扑结构的配置信息之后,即可根据该配置信息确定预设加速硬盘。
在本申请的一个实施例中,上述根据配置信息确定预设加速硬盘之后,还可以包括如下步骤:
当拓扑结构为Expander配置结构或Switch配置结构时,确定预设加速硬盘的硬盘数量与上行链路数量的占比;
当占比低于预设阈值时,对预设加速硬盘进行上行链路绑定。
本申请实施例所提供的业务处理方法可以进一步实现上行链路的绑定操作。具体而言,在确定当前开启指定硬盘设备加速功能之后,可以先获取阵列卡的拓扑结构,可以理解的是,阵列卡的拓扑结构可以包括直连配置结构、Expander配置结构、Switch配置结构等,其中,对于直连配置结构,无需进行上行链路绑定处理;对于Expander配置结构或Switch配置结构,则可以根据实际情况确定是否进行上行链路绑定处理。
因此,当确定拓扑结构为Expander配置结构或Switch配置结构时,可以先确定阵列卡中预设加速硬盘的数量,然后计算该数量与上行链路数量之间的比值,获得上述预设加速硬盘的硬盘数量与上行链路数量的占比;进一步,如若该占比低于预设阈值,则可以对预设加速硬盘执行上行链路绑定操作,即绑定上行链路只传递预设加速硬盘的业务命令,反之,如若该占比不低于预设阈值,为保证链路的整体性能,则无需执行上行链路绑定操作。其中,预设阈值的具体取值并不影响本技术方案的实施,由技术人员根据实际情况进行设置即可,本申请对此不做限定。
在本申请的一个实施例中,上述预设加速硬盘可以为NVMe硬盘和/或SAS硬盘;
当预设加速硬盘为NVMe硬盘时,硬盘信息为硬盘设备号;
当预设加速硬盘为SAS硬盘时,硬盘信息为硬盘地址。
本申请实施例提供了具体类型的预设加速硬盘,如上述NVMe硬盘和/或SAS硬盘,也就是说,可以指定对阵列卡中的NVMe硬盘和/或SAS硬盘进行性能加速。
需要说明的是,当预设加速硬盘为NVMe硬盘时,硬盘信息为硬盘设备号,也就是说,可以根据业务命令中头信息的硬盘设备号实现硬盘设备的识别,以确定其是否属于需要进行性能加速的NVMe硬盘;当预设加速硬盘为SAS硬盘时,硬盘信息为硬盘地址,也就是说,可以根据业务命令中头信息的硬盘地址实现硬盘设备的实现,以确定其是否属于需要进行性能加速的SAS硬盘。
本申请实施例提供了另一种业务处理方法。
请参考图2,图2为本申请所提供的另一种业务处理方法的流程示意图,该业务处理方法可以包括如下S201和S204。
首先,需要说明的是,本申请实施例所提供的业务处理方法应用于阵列卡驱动,即S201和S204的实现流程由阵列卡驱动执行。
S201:获取业务命令;
本步骤旨在实现业务命令的获取,该业务命令即为接收到的需要执行的业务命令,用以实现相应的业务处理。需要说明的是,该业务命令是预先由阵列卡固件已经处理过(此处处理是指设置绑定标识或者不设置绑定标识)的业务命令,以便于在执行业务命令的过程中,可以根据其中是否包含有绑定标识确定是否执行CPU内核绑定操作。
S202:判断业务命令是否包含绑定标识;
本步骤旨在实现绑定标识判定,即判断业务命令中是否包含绑定标识。在获取到业务命令之后,即可先对其进行字段解析,以确定其中是否包含有绑定标识,该绑定标识由上述阵列卡固件设置。进一步,如若业务命令中包含有绑定标识,则说明当前需要对该业务命令对应的硬盘设备进行性能加速处理,也即需要进行CPU内核绑定操作;如若业务命令中不包含有绑定标识,则说明当前并不需要对该业务命令对应的硬盘设备进行性能加速处理,也即不需要进行CPU内核绑定操作。
S203:若是,则确定业务命令对应的硬盘设备,并根据绑定标识将硬盘设备所在的阵列卡与阵列卡对应的CPU内核进行绑定;
本步骤旨在实现CPU内核绑定操作。当确定业务命令中包含有绑定标识时,可以先确定该业务命令对应的硬盘设备,此时,说明该硬盘设备即为预先指定的阵列卡中需要进行性能加速的硬盘设备,也即上一实施例中的预设加速硬盘;进一步,确定该硬盘设备所在的阵列卡,并将该阵列卡与其对应的CPU内核进行绑定,从而实现CPU内核绑定操作。由此,对于阵列卡中需要进行性能加速的硬盘设备,通过相应业务命令中被设置的绑定标识,实现了阵列卡与相应CPU内核的绑定。当然,如若业务命令中不包含有绑定标识,则无需执行CPU内核绑定操作。
S204:利用CPU内核执行业务命令。
本步骤旨在实现业务命令的执行,在将业务命令对应的硬盘设备所在的阵列卡绑定其对应的CPU内核之后,即可直接利用该被绑定的CPU内核执行业务命令。显然,由于进行了CPU内核绑定操作,使得业务命令可以直接由阵列卡对应的CPU内核执行,避免业务命令被分配到其他CPU内核上进行处理,进而避免不必要的链路传输,以实现硬盘加速,发挥出硬盘的最大性能。
当然,对于未设置有绑定标识的业务命令,按照常规的处理流程进行业务命令的执行即可。可以理解的是,在此情况下,执行业务命令的CPU内核可以为主体设备中的任意一个CPU内核。
可见,本申请实施例所提供的业务处理方法,通过阵列卡固件对阵列卡中需要加速的硬盘(即上述预设加速硬盘)对应的业务命令增加绑定标识,进而通过阵列卡驱动在获得设置有绑定标识的业务命令时,可以先将阵列卡与其对应的CPU内核进行绑定,再利用绑定的CPU内核执行该业务命令,从而实现业务处理,由此,实现了阵列卡中所有针对预设加速硬盘的业务命令均被绑定了CPU内核,可以有效避免业务命令走较远的CPU和内存的链路,从而保证了预设加速硬盘性能最大程度的发挥,可见,该种实现方式可以在不同应用场景下,发挥出硬盘的最大性能,提高硬盘所在阵列卡的易用性。
在本申请的一个实施例中,上述获取业务命令之前,还可以包括如下步骤:
获取阵列卡对应的PCIe信息;
从PCIe信息中提取获得NUMA信息;
在CPU内核列表中查询获得NUMA信息对应的CPU内核信息;
根据CPU内核信息确定阵列卡对应的CPU内核。
本申请实施例提供了一种确定阵列卡对应的CPU内核的实现方法,以便于在需要执行CPU内核绑定操作时,可以将阵列卡与其对应的CPU内核进行绑定。具体而言,在设备开机进行系统之后,系统内核会加载阵列卡驱动,由阵列卡驱动获取该阵列卡在系统下被分配到的PCIe相关信息,并可以从中提取出NUMA(Non Uniform Memory Access,非统一内存访问)信息;然后,将该NUMA信息与CPU内核表进行比对,即可确定该NUMA信息对应的CPU内核信息,进而实现CPU内核的确定。其中,CPU内核表中包括有当前设备主体中的所有CPU内核的相关信息。
更进一步地,可以将查询到的阵列卡对应的CPU内核信息进行保存,以便于在需要执行CPU内核绑定操作时,可以直接根据该CPU内核信息执行CPU内核绑定操作。
本申请实施例提供了又一种业务处理方法。
本申请实施例所提供的业务处理方法可以包括如下步骤:
(1)在设备主体正常开机运行后,阵列卡正常加载,可以同时获取挂载在阵列卡下面的盘、背板等拓扑结构信息。并且,在阵列卡固件中设置有可选项,用于选择是否针对硬盘设备进行加速处理,此处,可以默认针对NVMe SSD和SAS SSD开启此功能。
(2)开启高性能盘加速功能后,阵列卡固件优先判断拓阵列卡的扑结构,如果是直连配置,则不做链路上面的特殊处理;如果是Expander配置或者Switch配置,则进一步判断高性能盘是否大于上行链路最大数量的一半(预设阈值),如果小于一半,则针对高性能盘进行链路绑定,即绑定上行链路只传递高性能盘的业务命令;如果大于一半,考虑到整体链路性能,则不对链路进行绑定处理。
(3)正常进入系统后,系统内核会加载阵列卡驱动,阵列卡驱动将会获取阵列卡在系统下分配到的PCIe相关信息,从中提取出阵列卡的NUMA,并将其与系统中CPU list(CPU内核表)的CPU内核信息进行对比,将对比到的阵列卡所在的CPU内核信息存放到阵列卡驱动中备用。
(4)针对NVMe SSD,每个NVMe SSD会使用和阵列卡一样的总线号(Bus Number),然后配有一个独立的设备号(Device Number)和功能号(Function Number)。随后,阵列卡固件在所有事务层数据报文(也即业务命令)中,把Header中指向NVMe SSD的Device Number的事务层数据报文,增加一个特定的前缀(该前缀即为上述绑定标识)。由此,阵列卡驱动在传输该报文时,一旦读到这个特定的前缀,就增加一个绑定阵列卡所在CPU内核的操作。在此情况下,所有针对NVMe SSD的业务命令都被绑定了CPU内核,不会走较远CPU和内存的链路,从而保证了NVMe SSD性能最大程度的发挥,不受CPU和内存资源的影响。
(5)针对SAS SSD,阵列卡固件可以先对需要加速的SAS SSD的SAS地址进行收集汇总,随后,将所有业务命令的Header中指向这些SAS地址的命令增加一个特殊的前缀。由此,阵列卡驱动在传输该业务命令时,一旦读到这个特殊的前缀(该前缀即为上述绑定标识),就增加一个绑定阵列卡所在CPU内核的操作。在此情况下,所有针对SAS SSD的业务命令都被绑定了CPU内核,不会走较远CPU和内存的链路,从而保证了SAS SSD性能最大程度的发挥,不受CPU和内存资源的影响。
可见,本申请实施例所提供的业务处理方法,通过阵列卡固件对阵列卡中需要加速的硬盘(即上述预设加速硬盘)对应的业务命令增加绑定标识,进而通过阵列卡驱动在获得设置有绑定标识的业务命令时,可以先将阵列卡与其对应的CPU内核进行绑定,再利用绑定的CPU内核执行该业务命令,从而实现业务处理,由此,实现了阵列卡中所有针对预设加速硬盘的业务命令均被绑定了CPU内核,可以有效避免业务命令走较远的CPU和内存的链路,从而保证了预设加速硬盘性能最大程度的发挥,可见,该种实现方式可以在不同应用场景下,发挥出硬盘的最大性能,提高硬盘所在阵列卡的易用性。
本申请实施例提供了一种业务处理装置。
请参考图3,图3为本申请所提供的一种业务处理装置的结构示意图,该业务处理装置可应用于阵列卡固件,包括:
解析模块1,用于当获取到业务命令时,对业务命令进行解析,获得头信息;
确定模块2,用于根据头信息中的硬盘信息确定业务命令对应的硬盘设备;
设置模块3,用于若硬盘设备为预设加速硬盘,则在业务命令中增设绑定标识,以使阵列卡驱动根据绑定标识将预设加速硬盘所在的阵列卡与阵列卡对应的CPU内核进行绑定,并利用CPU内核执行业务命令。
可见,本申请实施例所提供的业务处理装置,通过阵列卡固件对阵列卡中需要加速的硬盘(即上述预设加速硬盘)对应的业务命令增加绑定标识,进而通过阵列卡驱动在获得设置有绑定标识的业务命令时,可以先将阵列卡与其对应的CPU内核进行绑定,再利用绑定的CPU内核执行该业务命令,从而实现业务处理,由此,实现了阵列卡中所有针对预设加速硬盘的业务命令均被绑定了CPU内核,可以有效避免业务命令走较远的CPU和内存的链路,从而保证了预设加速硬盘性能最大程度的发挥,可见,该种实现方式可以在不同应用场景下,发挥出硬盘的最大性能,提高硬盘所在阵列卡的易用性。
在本申请的一个实施例中,该业务处理装置还可以包括预设加速硬盘确定模块,用于在上述当获取到业务命令时,对业务命令进行解析,获得头信息之前,当接收到阵列卡加载指令时,获取阵列卡的拓扑结构;获取关于拓扑结构的配置信息;根据配置信息确定预设加速硬盘。
在本申请的一个实施例中,该业务处理装置还可以包括上行链路绑定模块,用于在上述根据配置信息确定预设加速硬盘之后,当拓扑结构为Expander配置结构或Switch配置结构时,确定预设加速硬盘的硬盘数量与上行链路数量的占比;当占比低于预设阈值时,对预设加速硬盘进行上行链路绑定。
在本申请的一个实施例中,上述预设加速硬盘可以为NVMe硬盘和/或SAS硬盘;当预设加速硬盘为NVMe硬盘时,硬盘信息为硬盘设备号;当预设加速硬盘为SAS硬盘时,硬盘信息为硬盘地址。
对于本申请实施例提供的装置的介绍请参照上述方法实施例,本申请在此不做赘述。
本申请实施例提供了另一种业务处理装置。
请参考图4,图4为本申请所提供的另一种业务处理装置的结构示意图,该业务处理装置可应用于阵列卡驱动,包括:
获取模块4,用于获取业务命令;
判断模块5,用于判断业务命令是否包含绑定标识;
绑定模块6,用于若业务命令中包含绑定标识,则确定业务命令对应的硬盘设备,并根据绑定标识将硬盘设备所在的阵列卡与阵列卡对应的CPU内核进行绑定;
执行模块7,用于利用CPU内核执行业务命令。
可见,本申请实施例所提供的业务处理装置,通过阵列卡固件对阵列卡中需要加速的硬盘(即上述预设加速硬盘)对应的业务命令增加绑定标识,进而通过阵列卡驱动在获得设置有绑定标识的业务命令时,可以先将阵列卡与其对应的CPU内核进行绑定,再利用绑定的CPU内核执行该业务命令,从而实现业务处理,由此,实现了阵列卡中所有针对预设加速硬盘的业务命令均被绑定了CPU内核,可以有效避免业务命令走较远的CPU和内存的链路,从而保证了预设加速硬盘性能最大程度的发挥,可见,该种实现方式可以在不同应用场景下,发挥出硬盘的最大性能,提高硬盘所在阵列卡的易用性。
在本申请的一个实施例中,该业务处理装置还可以包括CPU内核确定模块,用于在上述获取业务命令之前,获取阵列卡对应的PCIe信息;从PCIe信息中提取获得NUMA信息;在CPU内核列表中查询获得NUMA信息对应的CPU内核信息;根据CPU内核信息确定阵列卡对应的CPU内核。
对于本申请实施例提供的装置的介绍请参照上述方法实施例,本申请在此不做赘述。
本申请实施例提供了一种电子设备。
请参考图5,图5为本申请所提供的一种电子设备的结构示意图,该电子设备可包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时可实现如上述任意一种业务处理方法的步骤。
如图5所示,为电子设备的组成结构示意图,电子设备可以包括:处理器10、存储器11、通信接口12和通信总线13。处理器10、存储器11、通信接口12均通过通信总线13完成相互间的通信。
在本申请实施例中,处理器10可以为中央处理器(Central Processing Unit,CPU)、特定应用集成电路、数字信号处理器、现场可编程门阵列或者其他可编程逻辑器件等。
处理器10可以调用存储器11中存储的程序,具体的,处理器10可以执行业务处理方法的实施例中的操作。
存储器11中用于存放一个或者一个以上程序,程序可以包括程序代码,程序代码包括计算机操作指令,在本申请实施例中,存储器11中至少存储有用于实现以下功能的程序:
当获取到业务命令时,对业务命令进行解析,获得头信息;
根据头信息中的硬盘信息确定业务命令对应的硬盘设备;
若硬盘设备为预设加速硬盘,则在业务命令中增设绑定标识,以使阵列卡驱动根据绑定标识将预设加速硬盘所在的阵列卡与阵列卡对应的CPU内核进行绑定,并利用CPU内核执行业务命令;
或者,
获取业务命令;
判断业务命令是否包含绑定标识;
若是,则确定业务命令对应的硬盘设备,并根据绑定标识将硬盘设备所在的阵列卡与阵列卡对应的CPU内核进行绑定;
利用CPU内核执行业务命令。
在一种可能的实现方式中,存储器11可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统,以及至少一个功能所需的应用程序等;存储数据区可存储使用过程中所创建的数据。
此外,存储器11可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件或其他易失性固态存储器件。
通信接口12可以为通信模块的接口,用于与其他设备或者系统连接。
当然,需要说明的是,图5所示的结构并不构成对本申请实施例中电子设备的限定,在实际应用中电子设备可以包括比图5所示的更多或更少的部件,或者组合某些部件。
本申请实施例提供了一种计算机可读存储介质。
本申请实施例所提供的计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现如上述任意一种业务处理方法的步骤。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
对于本申请实施例提供的计算机可读存储介质的介绍请参照上述方法实施例,本申请在此不做赘述。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的技术方案进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请的保护范围内。
Claims (10)
1.一种业务处理方法,其特征在于,应用于阵列卡固件,包括:
当获取到业务命令时,对所述业务命令进行解析,获得头信息;
根据所述头信息中的硬盘信息确定所述业务命令对应的硬盘设备;
若所述硬盘设备为预设加速硬盘,则在所述业务命令中增设绑定标识,以使所述阵列卡驱动根据所述绑定标识将所述预设加速硬盘所在的阵列卡与所述阵列卡对应的CPU内核进行绑定,并利用所述CPU内核执行所述业务命令。
2.根据权利要求1所述的业务处理方法,其特征在于,所述当获取到业务命令时,对所述业务命令进行解析,获得头信息之前,还包括:
当接收到阵列卡加载指令时,获取所述阵列卡的拓扑结构;
获取关于所述拓扑结构的配置信息;
根据所述配置信息确定所述预设加速硬盘。
3.根据权利要求2所述的业务处理方法,其特征在于,所述根据所述配置信息确定所述预设加速硬盘之后,还包括:
当所述拓扑结构为Expander配置结构或Switch配置结构时,确定所述预设加速硬盘的硬盘数量与上行链路数量的占比;
当所述占比低于预设阈值时,对所述预设加速硬盘进行上行链路绑定。
4.根据权利要求1所述的业务处理方法,其特征在于,所述预设加速硬盘为NVMe硬盘和/或SAS硬盘;
当所述预设加速硬盘为所述NVMe硬盘时,所述硬盘信息为硬盘设备号;
当所述预设加速硬盘为所述SAS硬盘时,所述硬盘信息为硬盘地址。
5.一种业务处理方法,其特征在于,应用于阵列卡驱动,包括:
获取业务命令;
判断所述业务命令是否包含绑定标识;
若是,则确定所述业务命令对应的硬盘设备,并根据所述绑定标识将所述硬盘设备所在的阵列卡与所述阵列卡对应的CPU内核进行绑定;
利用所述CPU内核执行所述业务命令。
6.根据权利要求5所述的业务处理方法,其特征在于,所述获取业务命令之前,还包括:
获取所述阵列卡对应的PCIe信息;
从所述PCIe信息中提取获得NUMA信息;
在CPU内核列表中查询获得所述NUMA信息对应的CPU内核信息;
根据所述CPU内核信息确定所述阵列卡对应的CPU内核。
7.一种业务处理装置,其特征在于,应用于阵列卡固件,包括:
解析模块,用于当获取到业务命令时,对所述业务命令进行解析,获得头信息;
确定模块,用于根据所述头信息中的硬盘信息确定所述业务命令对应的硬盘设备;
设置模块,用于若所述硬盘设备为预设加速硬盘,则在所述业务命令中增设绑定标识,以使所述阵列卡驱动根据所述绑定标识将所述预设加速硬盘所在的阵列卡与所述阵列卡对应的CPU内核进行绑定,并利用所述CPU内核执行所述业务命令。
8.一种业务处理装置,其特征在于,应用于阵列卡驱动,包括:
获取模块,用于获取业务命令;
判断模块,用于判断所述业务命令是否包含绑定标识;
绑定模块,用于若所述业务命令中包含所述绑定标识,则确定所述业务命令对应的硬盘设备,并根据所述绑定标识将所述硬盘设备所在的阵列卡与所述阵列卡对应的CPU内核进行绑定;
执行模块,用于利用所述CPU内核执行所述业务命令。
9.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述的业务处理方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的业务处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211103257.0A CN115657932A (zh) | 2022-09-09 | 2022-09-09 | 业务处理方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211103257.0A CN115657932A (zh) | 2022-09-09 | 2022-09-09 | 业务处理方法及相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115657932A true CN115657932A (zh) | 2023-01-31 |
Family
ID=84983248
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211103257.0A Pending CN115657932A (zh) | 2022-09-09 | 2022-09-09 | 业务处理方法及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115657932A (zh) |
-
2022
- 2022-09-09 CN CN202211103257.0A patent/CN115657932A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9614931B2 (en) | Identifying a resource set require for a requested application and launching the resource set in a container for execution in a host operating system | |
CN108874324B (zh) | 一种访问请求处理方法、装置、设备及可读存储介质 | |
CN110209605B (zh) | Pcie总线网卡的寄存器读写方法和计算设备 | |
CN104969167A (zh) | 控制装置及控制方法 | |
CN114296909A (zh) | 一种根据kubernetes事件的节点自动扩容缩容方法及系统 | |
CN112015352B (zh) | 存储块设备识别装置、系统和存储块设备读写方法 | |
CN110399168A (zh) | 多数据盘存储服务器的系统启动方法、装置及设备 | |
CN113626882A (zh) | 一种生成设备标识符的方法、装置、介质 | |
CN110569157B (zh) | 存储测试方法、装置、服务器及存储介质 | |
CN110069217B (zh) | 一种数据存储方法及装置 | |
CN115543222B (zh) | 一种存储优化方法、系统、设备及可读存储介质 | |
CN115657932A (zh) | 业务处理方法及相关设备 | |
CN113127258A (zh) | 一种数据备份方法、装置、设备及介质 | |
CN115185874B (zh) | 一种pcie资源的分配方法及相关装置 | |
CN116633766A (zh) | 故障处理方法、装置、电子设备及存储介质 | |
CN109710187A (zh) | NVMe SSD主控芯片的读命令加速方法、装置、计算机设备及存储介质 | |
CN115048255A (zh) | 一种自动化测试方法、装置,主机及存储介质 | |
CN113821157B (zh) | 一种本地磁盘挂载方法、装置、设备及存储介质 | |
CN109309588B (zh) | 保证动态化配置数据一致性的方法和装置 | |
CN115061632A (zh) | 存储区域网络性能优化方法、系统、终端及存储介质 | |
CN113076273B (zh) | 组件接入方法、装置、电子设备、存储介质及程序产品 | |
CN117931097B (zh) | 应用于边缘计算集群的服务器的信息提供方法及装置 | |
CN110058866B (zh) | 集群组件安装方法及设备 | |
CN110046120B (zh) | 基于iic协议的数据处理方法、装置、系统及存储介质 | |
CN111124882B (zh) | 一种实现应用测试的方法、装置、计算机存储介质及终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |