芍药BAHD酰基转移酶-文献精读128
PoDPBT, a BAHD acyltransferase, catalyses the benzoylation in paeoniflorin biosynthesis in Paeonia ostii
PoDPBT,一种BAHD酰基转移酶,在芍药(Paeonia ostii)中催化芍药苷生物合成中的苯甲酰化反应。
摘要
PoDPBT是属于BAHD家族的一种O-苯甲酰基转移酶,能够催化8-去苯甲酰基芍药苷转化为芍药苷。PoDPBT是第一个被证实参与芍药苷生物合成修改阶段的酶。在BAHD家族中发现了一个新的DFGGG模式,类似于DFGWG。转录组数据库为进一步研究参与芍药苷生物合成的其他酶基因提供了资源。
关键词:O-苯甲酰基转移酶,芍药苷生物合成,单萜,芍药(Paeonia ostii),BAHD酰基转移酶
芍药苷是一种双环单萜糖苷,是一种具有多种药理活性的重要药用化合物,如抗抑郁、抗血栓、免疫调节和神经保护等(张等人,2022年;赵等人,2020年)。此外,芍药苷仅存在于芍药科植物中,被认为是芍药科的特征性化合物(张等人,2019年)。然而,其生物合成途径仍需完全阐明。苯甲酰辅酶A:苯甲醇O-苯甲酰基转移酶(BEBTs)属于BAHD酰基转移酶家族,这些酶对苯甲酰辅酶A作为酰基供体具有高亲和力,可以利用不同的芳香醇作为酰基受体(Chedgy等人,2015年)。8-去苯甲酰基芍药苷是芍药苷的衍生物之一,也广泛存在于芍药科植物中。与芍药苷不同,8-去苯甲酰基芍药苷在C8位置具有羟基而非苯甲酰基,因此其结构类似于芳香醇。因此,我们推测芍药科植物中存在的一种O-苯甲酰基转移酶可以利用苯甲酰辅酶A和8-去苯甲酰基芍药苷作为底物来合成芍药苷(张等人,2022年)。这种酶将被指定为苯甲酰辅酶A:8-去苯甲酰基芍药苷8-O-苯甲酰基转移酶(DPBT)。
我们之前发现牡丹叶中的芍药苷含量与植物发育阶段显著相关(张等人,2019年)。为了筛选参与芍药苷生物合成的O-苯甲酰基转移酶编码基因,分别在牡丹发育的萌芽阶段(S3)、芽扩张阶段(S4)和开花阶段(S5)收集叶片的RNA样本(图S1),然后在BGISEQ-500平台上进行测序(图1a)。通过qRT-PCR验证了RNA-Seq数据的可靠性(图S2和表S1)。基于基因注释,确定了23个O-苯甲酰基转移酶候选基因(表S2),这些基因在不同发育阶段表现出不同的表达模式(图1b)。其中,Pos.gene26002、Pos.gene30573、Pos.gene35667、Pos.gene79215和Pos.gene81370的表达水平与芍药苷含量高度相关(相关系数>0.9)。然而,除了Pos.gene30573外,其他四个基因在所有三个发育阶段的FPKM值都低于1.00(表S2)。因此,我们关注Pos.gene30573在将8-去苯甲酰基芍药苷转化为芍药苷的作用,并将其命名为PoDPBT。
PoDPBT催化芍药苷生物合成中的苯甲酰化。 (a) RNA-Seq原始数据信息。(b) 牡丹三个发育阶段叶片中23个苯甲酰基转移酶候选基因的表达水平及其与芍药苷含量的相关性。(c, d) 不同发育阶段(c)和器官(d)中PoDPBT的表达水平和芍药苷含量。(e) PoDPBT与BEBTs的多序列比对。蓝色框显示HXXXD和DFGGG基序。红色框显示YPLAGR和QVTRLKCGG基序。(f) PoDPBT和已鉴定的BAHD成员的邻接连接法系统发育树。(g) PoDPBT催化的反应。(h) 纯化蛋白的SDS-PAGE分析。(i-k) 通过体外实验对PoDPBT的表征。空载体酶与8-去苯甲酰基芍药苷反应生成的产物的UPLC谱图(i)和PoDPBT与8-去苯甲酰基芍药苷反应产物的UPLC谱图(j);PoDPBT酶实验产物的质谱数据(k)。(l-n) PoDPBT对芍药苷产量的沉默效应。在蓝光下,TRV2-GFP和TRV2-PoDPBT-GFP感染的牡丹叶片与正常植物对照(CK)的图像,6天后(l);不同处理叶片中PoDPBT的表达水平,通过qRT-PCR测定(m);不同处理叶片中的芍药苷含量(n)。星号表示统计学上的显著差异(**P < 0.01,学生t检验)。
我们随后通过qRT-PCR检测了牡丹不同叶片发育阶段中PoDPBT的表达模式。在S3阶段,PoDPBT的表达量最高,其次是S4和S5阶段,这与芍药苷的积累一致(图1c)。我们之前的研究表明,芍药苷的水平在不同的牡丹器官中有所不同(张等人,2019年)。我们也检查了表达模式,结果显示PoDPBT在含有最多芍药苷的茎中表达量最高(图1d)。这些结果进一步确认了PoDPBT的表达水平与芍药苷含量之间的相关性,表明PoDPBT参与芍药苷的生物合成。
序列分析显示,PoDPBT编码一个预测的453氨基酸蛋白,分子量为49.91 kD。PoDPBT含有对BAHD成员高度保守的HXXXD基序,以及另一个保守区域DFGWG基序,其中色氨酸被甘氨酸替代。除了这两个保守基序外,还识别出了YPLAGR和QVTRLKCGG基序(图1e)(Tuominen等人,2011)。这些结果表明PoDPBT是BAHD酰基转移酶家族的成员。系统发育树显示PoDPBT归类于BAHD类群V-i(图1f),此类群的成员催化形成挥发性和非挥发性酯。PoDPBT与CbBEBT、NtBEBT(D'Auria等人,2002)、VhBEBT(Togami等人,2006)和PtBEBT(Chedgy等人,2015)关系密切。这些结果表明PoDPBT可以利用苯甲酰辅酶A和8-去苯甲酰基芍药苷合成芍药苷(图1g)。
PoDPBT在大肠杆菌中表达,纯化的蛋白大小与预期的49.91 kD一致(图1h)。使用苯甲酰辅酶A和8-去苯甲酰基芍药苷进行了体外酶活性测定。UPLC-MS结果显示,实验样品中的新峰与真正的芍药苷标准的保留时间和MS光谱相同(图1i-k)。这些结果证实PoDPBT作为一个O-苯甲酰基转移酶,能将8-去苯甲酰基芍药苷转化为芍药苷作为单一产物。为了确定其亲和力,使用不同浓度的8-去苯甲酰基芍药苷进行动力学分析,PoDPBT展示了米氏常数(Km)值为1364.54±166.28 μm,估算的催化常数(Kcat)值为0.54±0.05 s−1。
为了进一步验证PoDPBT在体内的功能,我们使用病毒诱导的基因沉默系统来抑制牡丹叶片中PoDPBT的表达。构建了一个含有绿色荧光蛋白(GFP)作为报告基因的烟草缩叶病毒2(TRV2)载体。在用TRV2-GFP和TRV2-PoDPBT-GFP浸润的叶片中,在蓝光下观察到绿色荧光斑点(图1l),但在正常植物中没有观察到。与正常植物和TRV2-GFP系列相比,用TRV2-PoDPBT-GFP浸润的叶片中PoDPBT的表达水平显著降低,后两者之间没有显著差异(图1m)。TRV2-PoDPBT-GFP系列叶片中检测到的芍药苷含量也最低(图1n),剩余的芍药苷是由于剩余的PoDPBT产生的。这些结果进一步证实了PoDPBT在芍药苷生物合成中的作用。
总的来说,PoDPBT是属于BAHD家族的一个O-苯甲酰基转移酶,已被鉴定并功能性地表征,该酶能将8-去苯甲酰基芍药苷催化为芍药苷作为单一产物。PoDPBT是参与芍药苷生物合成修改阶段的第一个酶。已预测此阶段涉及的其他酶,如羟化酶和糖基转移酶(张等人,2022年),这些酶将根据本研究建立的研究策略陆续进行表征。这些结果将为完全阐明芍药苷生物合成途径奠定基础。
方法
RNA测序和生物信息学分析
从芽生长阶段(S3)、芽扩张阶段(S4)和开花阶段(S5)的叶片中分别提取总RNA,使用的是RNA Prep Pure Plant Plus试剂盒(天根生物科技有限公司,北京,中国)。分别使用NanoDrop 2000(赛默飞世尔科技公司,加利福尼亚州,美国)和Agilent Bioanalyzer 2100(安捷伦科技公司,加利福尼亚州,美国)评估RNA的质量和数量。
图书馆构建由北京基因组研究所(武汉,中国)执行。mRNA通过Oligo (dT)附着的磁珠富集。目标RNA用片段缓冲液分割,然后通过随机六聚体引物引导的逆转录生成双链cDNA(dscDNA)。dscDNA在5'端经过磷酸修复,在3'端加上粘性“A”,然后在3'端粘上带有粘性“T”的接头。连接产物通过两个特异性PCR引物进行扩增。随后,PCR产物通过热变性,单链DNA通过夹板寡核苷酸和DNA连接酶环化。最终,cDNA文库在BGISEQ-500平台上进行测序。
所有原始测序读数通过SOAPnuke(李等,2008)过滤以去除低质量读数(接头序列,含有超过5%不明‘N’碱基的读数,以及含有超过20%低质量碱基的读数)。清洁读数以FASTQ格式存储,并通过HISAT2(金等,2015)和Bowtie2(Langmead和Salzberg,2012)映射到牡丹基因组序列。基因表达水平通过RSEM(李和Dewey,2011)计算,并以FPKM值(Mortazavi等,2008)表示。差异表达分析使用DESeq2(Love等,2014)进行,Q值≤ 0.05。为了识别基因的功能注释,对蛋白质数据库进行了BLASTx搜索(E值 < 0.00001),包括非冗余蛋白序列(Nr)数据库和京都基因与基因组百科全书(KEGG)。基于NR注释,使用Blast2GO程序(Conesa等,2005)(E值 < 0.00001)获取基因本体(GO)注释。
qRT-PCR分析
如上所述,从叶片、茎、花瓣和根部提取总RNA。每个样本使用1 μg的总RNA,通过带有gDNase的FastKing RT试剂盒(天根,北京,中国)制备一链cDNA。PCR在ABI StepOnePlus® 实时PCR系统(应用生物系统公司,加利福尼亚州,美国)上进行,按照制造商的说明进行。每个反应混合物(20 μl)包含10 μl的TB Green Premix Ex Taq II(Tli RNaseH Plus)(Takara),每个引物0.8 μl(10 μM),cDNA模板0.3 μl(1 μg)和8.1 μl的无酶RNase水。每个基因的PCR均进行三次重复,热循环条件如下:95°C 30秒;40个循环,95°C 5秒和64°C 30秒;95°C 15秒。通过熔解曲线分析确认引物特异性。测试基因的相对表达水平通过2-ΔΔCt方法计算,使用Actin(Pos.gene4533)基因作为内部对照。数据为三个生物重复的平均值±标准偏差。本研究中使用的基因特异性引物列在表S3中。
系统发育分析
使用DNAMAN 7(Lynnon Biosoft,魁北克,加拿大)进行多序列比对。使用MEGA X软件(Kumar等,2018)生成邻接连接树,设置选项如下:1000次bootstrap复制,Poisson模型,均匀率和成对删除。树中使用的蛋白质的GenBank登录号:Vh3MAT1, AAS77402; Lp3MAT1, AAS77404; 等等。
蛋白表达和纯化
从牡丹参考基因组获得了PoDPBT的全长序列。使用特定的正向和反向引物扩增PoDPBT的编码区。PCR产物经BamH I和Not I酶切后,克隆到带有六组氨酸-SUMO标签的pRSFDuet-1载体中。蛋白表达和纯化按照先前描述的方法进行(李等,2017)。使用SDS-PAGE分析鉴定纯化蛋白,并将其存储在含有20 mM Tris-pH 7.0、500 mM NaCl和5 mM二硫苏糖醇的缓冲液中。使用Bradford方法确定浓度,以BSA作为标准(Bradford,1976)。
酶测定和动力学
体外酶测定在一个40 μL的反应体系中进行,包括5 μL 8-去苯甲酰基芍药苷(20 mM)、5 μL苯甲酰辅酶A(50 mM)和30 μL纯化蛋白(0.64 mg/ml)。反应在30℃下进行1小时,通过液氮急速冷冻停止。用160 μL甲醇提取反应产物并超声波处理1分钟。混合物通过0.22毫米过滤器过滤,然后通过超高效液相色谱-质谱联用仪(UPLC-MS)进行分析。空载体酶作为阴性对照。
为了进行动力学测量,将0.5至20 mM范围内的8-去苯甲酰基芍药苷添加到上述反应体系中。反应时间为5分钟。米氏常数(Km)和催化常数(Kcat)值使用GraphPad Prism 7软件(GraphPad Software, Inc.)评估。数据为三个生物重复的平均值±标准偏差。
UPLC-MS分析
色谱分析使用Thermo Scientific Syncronis C18柱(100 mm × 2.1 mm,1.7 µm),基于Dionex UltiMate 3000 UPLC系统(Thermo Fisher Scientific,马萨诸塞州,美国)进行。质谱采集使用Q Exactive Plus杂交四极杆-轨道阱质谱仪(Thermo Fisher Scientific,马萨诸塞州,美国)。详细参数在我们之前的研究中有描述(张等人,2019)。使用真正的芍药苷绘制标准曲线进行定量。所有样本均进行三次重复测试,每个样本注射一次。数据为平均值 ± 标准偏差。
病毒诱导的基因沉默分析
如之前描述(谢等人,2019;杨等人,2021),通过病毒诱导的基因沉默在叶片中沉默PoDPBT。构建了一个带有绿色荧光蛋白(GFP)作为报告基因的烟草缩叶病毒2(TRV2)载体。TRV1和TRV2-GFP质粒保存在我们的实验室中。为了生成TRV2-PoDPBT-GFP构建,使用特定的引物(表S3)通过PCR扩增了332-bp的PoDPBT片段。所有三个TRV构建被转化到农杆菌株GV3101中,然后在28°C下连续振荡培养220 r/min过夜。细菌细胞在4000 g下离心并在渗透缓冲液(10 mM MgCl2、10 mM MES和200 μM 醋酰梧桐素)中重新悬浮,最终OD600为1.0。含有TRV1和TRV2构建的培养物在28°C下轻轻摇动6小时并以1:1体积比混合。对于真空渗透,整个植物在0.8 MPa压力下浸泡在渗透缓冲液中20分钟。正常植物的叶片和用TRV2-GFP浸润的植物叶片用作对照。渗透后6天,收集叶片进行GFP分析。渗透后10天,收集叶片进行qRT-PCR和芍药苷定量。数据为三个生物重复的平均值 ± 标准偏差。
相关文章:
芍药BAHD酰基转移酶-文献精读128
PoDPBT, a BAHD acyltransferase, catalyses the benzoylation in paeoniflorin biosynthesis in Paeonia ostii PoDPBT,一种BAHD酰基转移酶,在芍药(Paeonia ostii)中催化芍药苷生物合成中的苯甲酰化反应。 摘要 PoDPBT是属于BA…...
GTS-400 系列运动控制器板卡介绍(三十三)---运动程序单线程累加求和
运动控制器函数库的使用 运动控制器驱动程序、dll 文件、例程、Demo 等相关文件请通过固高科技官网下载,网 址为:www.googoltech.com.cn/pro_view-3.html 1 Windows 系统下动态链接库的使用 在 Windows 系统下使用运动控制器,首先要安装驱动程序。在安装前需要提前下载运动…...
C# 面向对象 构造函数带参无参细节解析
继承类构造时会先调用基类构造函数,不显式调用基类构造函数时,默认调用基类无参构造函数,但如果基类没有写无参构造函数,会无法调用从而报错;此时,要么显式的调用基类构造函数,并按其格式带上参…...
数字化工厂升级引擎:Modbus TCP转Profinet网关助力打造柔性生产系统
在当今的工业自动化领域,通信协议扮演着至关重要的角色。Modbus TCP和Profinet是两种广泛使用的工业通信协议,它们分别在不同的应用场景中发挥着重要作用。然而,有时我们可能需要将这两种协议进行转换,以实现不同设备之间的无缝通…...
【编译原理】词法分析器
//简单实现,伪代码 int code,value; strToken :" "; //置strToken为空串 GetChar();GetBC(); if(IsLetter()) beginwhile(IsLetter() or IsDigit())beginConcat();GetChar();endRetract();code:Reserve();if(code0)beginvalue:InsertId(strToken);retu…...
记录一次vue项目页面内嵌iframe页面实现跨域上传和下载附件的功能
功能背景:项目部署在外网,然后其中有一个功能需要上传下载附件,附件是上传到华为云对象存储服务OBS中(私有云),所以采用iframe嵌套页面的方式解决跨域问题。 实现思路: 1、父窗口封装一个组件专…...
【Win32 API】 lstrcpyA()
作用 将字符串复制到指定的字符串缓冲区。 函数 LPSTR lstrcpyA(LPSTR lpString1, LPCSTR lpString2); 参数 lpString1 类型:LPTSTR 一个缓冲区,用于接收由 lpString2 参数指向的字符串的内容。 缓冲区必须足够大才能包含字符串,包括终止…...
报表控件stimulsoft教程:如何在报表和仪表板中创建热图
Stimulsoft Ultimate (原Stimulsoft Reports.Ultimate)是用于创建报表和仪表板的通用工具集。该产品包括用于WinForms、ASP.NET、.NET Core、JavaScript、WPF、PHP、Java和其他环境的完整工具集。无需比较产品功能,Stimulsoft Ultimate包含了…...
Axure疑难杂症:剖析面包屑导航“用户不迷路”(玩转导航)
亲爱的小伙伴,在您浏览之前,烦请关注一下,在此深表感谢! Axure产品经理精品视频课已登录CSDN可点击学习https://edu.csdn.net/course/detail/40420 课程主题:剖析面包屑导航“用户不迷路” 主要内容:面包屑导航各种做法 应用场景:页面导航、页面路径、用户选择路径、…...
中exec()函数因$imagePath参数导致的命令注入漏洞
exec(zbarimg -q . $imagePath, $barcodeList, $returnVar); 针对PHP中exec()函数因$imagePath参数导致的命令注入漏洞,以下是安全解决方案和最佳实践: 一、漏洞原理分析 直接拼接用户输入$imagePath到系统命令中,攻击者可通过注入特殊字…...
HTML常用标签用法全解析:构建语义化网页的核心指南
HTML作为网页开发的基石,其标签的合理使用直接影响页面的可读性、SEO效果及维护性。本文系统梳理HTML核心标签的用法,结合语义化设计原则与实战示例,助你构建规范、高效的网页结构。 一、基础结构与排版标签 1.1 文档结构 <!DOCTYPE htm…...
【Linux】动静态库链接原理
📝前言: 这篇文章我们来讲讲Linux——动静态库链接原理 🎬个人简介:努力学习ing 📋个人专栏:Linux 🎀CSDN主页 愚润求学 🌄其他专栏:C学习笔记,C语言入门基础…...
Axure设计的“广东省网络信息化大数据平台”数据可视化大屏
在数据驱动决策的时代,数据可视化大屏成为了展示数据、洞察趋势的重要工具。今天,让我们一同深入了解由Axure设计的“广东省网络信息化大数据平台”数据可视化大屏,看看它如何通过精心的布局和丰富的图表类型,将复杂的数据以直观易…...
linux安装宝塔面板到数据盘
操作很简单,假如数据盘挂载在cipan1,在数据盘新建目录www,为了方便对应。 执行一下命令,创建软连接 ln -s /cipan1/www www 此时,根目录就出现了www文件夹 下面正常安装宝塔即可...
数学实验(Matlab编程基础)
一、函数文件 Matlab编程基础 Matlab作为一种广泛应用于科学计算的工具软件,不仅具有强大的数值计算、符号计算、矩阵运算能力和丰富的绘图功能,同时也具有和C、FORTRAN等高级语言一样进行程序设计 利用Matlab的程序控制功能,可以将有关Ma…...
不同坐标系下MATLAB绘制阵列的方向图
不同坐标系下MATLAB绘制阵列的方向图 球坐标系,极坐标系、直角坐标系 文章目录 前言一、极坐标系二、球坐标系三、直角坐标系总结 前言 \;\;\;\;\; 在阵列信号处理和天线设计中,方向图(Pattern)是描述波束形成性能的关键工具&…...
python可视化:北方省市人口流动与春运数据综合分析5
python可视化:北方省市人口流动与春运数据综合分析5 一、北方省市常住人口数据及变化趋势(2023-2024第一季度) 1. 主要城市常住人口数据(按城市等级分类) 城市类型2023Q1常住人口(万)2024Q1常住人口(万)变化量(万)变…...
Java并发编程-线程池(四)
文章目录 线程池实现原理WorkerWorker 核心设计总结 runWorker(Worker w)总结 线程池实现原理 上一篇我们看了 addWork 方法,那接下来就让我们详细看看内部类Worker。 Worker private final class Workerextends AbstractQueuedSynchronizerimplements Runnable …...
力扣热题——最长相邻不相等子序列 |
题目要求从字符串数组 words 中选出一个最长的子序列,使得该子序列中相邻字符串对应的 groups 数组中的值不同。通过贪心算法,可以高效地解决该问题。具体步骤为:初始化一个结果列表,遍历 words 数组,检查当前字符串的…...
筑牢信息安全防线:涉密计算机与互联网隔离的理论实践与风险防控
在数字化时代,信息安全已成为国家安全体系的重要组成部分。涉密计算机作为承载敏感信息的核心载体,其安全防护工作直接关系到国家利益与社会稳定。违规连接互联网这一行为,如同在严密的防护体系中打开一扇危险的"暗门",…...
sqli-labs靶场29-31关(http参数污染)
目录 前言 less29(单引号http参数污染) less30(双引号http参数污染) less31(双引号括号http参数污染) 前言 在JSP中,使用request.getParameter("id")获取请求参数时,如果存在多个同名参数&a…...
基于Linux环境实现Oracle goldengate远程抽取MySQL同步数据到MySQL
基于Linux环境实现Oracle goldengate远程抽取MySQL同步数据到MySQL 场景说明: 先有项目需要读取生产库数据,但是不能直接读取生产库数据,需要把生产数据同步到一个中间库,下游系统从中间库读取数据。 生产库mysql - OGG - 中间库…...
linux,我启动一个springboot项目, 用java -jar xxx.jar ,但是没多久这个java进程就会自动关掉
当使用 java -jar xxx.jar & 启动 Spring Boot 项目后进程自动关闭时,可能由多种原因导致。以下是常见排查步骤和解决方案: 一、查看日志定位原因 进程异常关闭通常会在控制台或日志中留下线索,建议先获取完整日志: 1. 查看…...
pytorch 14.3 Batch Normalization综合调参实践
文章目录 一、Batch Normalization与Batch_size综合调参二、复杂模型上的Batch_normalization表现1、BN对复杂模型(sigmoid)的影响2、模型复杂度对模型效果的影响3、BN对复杂模型(tanh)的影响 三、包含BN层的神经网络的学习率优化…...
供应链安全检测系列技术规范介绍之一|软件成分分析
软件成分分析的概念及意义 软件成分分析Software Compostition Analysis(SCA)是一种用于管理开源组件应用安全的方法。软件成分分析系统可以快速跟踪和分析应用软件的开源组件,发现相关组件、支持库以及它们之间直接和间接依赖关系࿰…...
pytorch 15.1 学习率调度基本概念与手动实现方法
文章目录 一、学习率对模型训练影响 二、学习率调度基本概念与手动实现方法1.模型调度基本概念2.手动实现学习率调度3.常用学习率调度思路 从本节开始,我们将介绍深度学习中学习率优化方法。学习率作为模型优化的重要超参数,在此前的学习中,我…...
c++ 类的语法4
测试析构函数、虚函数、纯虚函数: void testClass5() {class Parent {public:Parent(int x) { cout << "Parent构造: " << x << endl; }~Parent() {cout << "调用Parent析构函数" << endl;}virtual string toSt…...
品铂科技在UWB行业地位综述(2025年更新)
一、行业领先地位 国内UWB领域头部企业 在2025年中国UWB企业综合实力排行榜中位列第一,技术研发、市场份额及行业影响力均处于领先地位。连续多年获评中国物联网产业联盟“中国最有影响力物联网定位企业”。 2.全球技术竞争力 .2016年IPSN微软国际室内…...
muduo库EventLoop模块详解
muduo库EventLoop模块深度解析 EventLoop是muduo网络库实现Reactor模型的核心调度中枢,负责驱动整个事件循环机制,协调Poller、Channel、TimerQueue等组件的工作。其设计遵循"One Loop Per Thread"原则。 一、核心职责与设计思想 1. 核心职责…...
循环导入(Circular Import) 错误
ImportError: cannot import name event_type_data_tree from partially initialized module routers.ticket (most likely due to a circular import) (E:\ai12345\backend\app\routers\ticket.py) 这是什么错,中文回答 这个错误是 循环导入(Circular …...
基于大数据的租房信息可视化系统的设计与实现【源码+文档+部署】
课题名称 基于大数据的租房信息可视化系统的设计与实现 学 院 专 业 计算机科学与技术 学生姓名 指导教师 一、课题来源及意义 租房市场一直是社会关注的热点问题。随着城市化进程的加速,大量人口涌入城市,导致租房需求激增。传统的租…...
奥运数据可视化:探索数据讲述奥运故事
在数据可视化的世界里,体育数据因其丰富的历史和文化意义,常常成为最有吸引力的主题之一。今天我要分享一个令人着迷的奥运数据可视化项目,它巧妙地利用交互式图表和动态动画,展现了自1896年至今奥运会的发展历程和各国奥运成就的…...
linux环境下 安装svn并且创建svn版本库详细教程
一、安装SVN 通过yum安装Subversion 在Linux系统中执行以下命令安装: yum install subversion -y 安装完成后,验证版本: svnserve --version 二、创建版本库 选择存储路径并创建目录 通常将版本库放在/var/svn或/usr/local/…...
STM32控制电机
初始化时钟:在 STM32 的程序中,初始化系统时钟,一般会使用 RCC(Reset and Clock Control)相关函数来配置时钟。例如,对于 STM32F103 系列,可能会使用 RCC_APB2PeriphClockCmd 函数来使能 GPIO 和…...
Ubuntu 更改 Nginx 版本
将 1.25 降为 1.18 先卸载干净 # 1. 完全卸载当前Nginx sudo apt purge nginx nginx-common nginx-core# 2. 清理残留配置 sudo apt autoremove sudo rm -rf /etc/apt/sources.list.d/nginx*.list修改仓库地址 # 添加仓库(通用稳定版仓库) codename$(…...
微服务初步学习
系统架构演变过程 一、单体架构 前后端都在一个项目中,包括我们现在的前后端分离开发,都可以看作是一个单体项目。 二、集群架构 把一个服务部署多次,可以解决服务不够的问题,但是有些不必要的功能也跟着部署多次。 三、垂直架…...
旧 docker 版本通过 nvkind 搭建虚拟多节点 gpu 集群的坑
踩坑 参考nvkind教程安装到Setup这一步,由于docker版本较旧,–cdi.enabled 和 config 参数执行不了 手动修改 /etc/docker/daemon.json 配置文件 "features": {"cdi": true}手动修改 /etc/nvidia-container-runtime/config.toml 配…...
Fabric 服务端插件开发简述与聊天事件监听转发
原文链接:Fabric 服务端插件开发简述与聊天事件监听转发 < Ping通途说 0. 引言 以前写过Spigot的插件,非常简单,仅需调用官方封装好的Event类即可。但Fabric这边在开发时由于官方文档和现有互联网资料来看,可能会具有一定的误…...
Wise Disk Cleaner:免费系统清理工具,释放空间,提升性能
Wise Disk Cleaner是一款功能强大且完全免费的系统清理工具,专为帮助用户清理系统中的无用文件和垃圾文件而设计。它能够有效释放磁盘空间,提高系统运行速度,确保电脑始终保持最佳性能。无论是日常维护还是深度清理,Wise Disk Cle…...
排序算法之高效排序:快速排序,归并排序,堆排序详解
排序算法之高效排序:快速排序、归并排序、堆排序详解 前言一、快速排序(Quick Sort)1.1 算法原理1.2 代码实现(Python)1.3 性能分析 二、归并排序(Merge Sort)2.1 算法原理2.2 代码实现…...
主打「反激进」的一汽丰田,靠稳扎稳打的技术实现突围
文/王俣祺 导语:今年的上海车展,当新势力都在用“1000TOPS算力”“激光雷达矩阵”等参数堆砌着一个个技术神话的时候,一汽丰田却选择了一条不同的路——用“反激进”的技术哲学,在电动化和智能化的大风向中,构建独特的…...
变量赋值和数据类型
对象 Python是面相对象的编程语言,在Python一些都是对象,对象由标识、类型、值三部分组成,本质上来讲,系统分配一块内存,这块内存中存储了特定了的值,还支持特定类型的相关操作。 标识:即对象…...
【笔记】cri-docker.service和containerd
cri-docker.service 和 containerd 都是 Kubernetes 支持的容器运行时组件,但它们的架构、功能定位及与 Docker 的关系有显著差异。以下是它们的核心区别和关联: 1. 功能定位 组件核心角色是否直接支持 CRIcontainerd轻量级容器运行时,直接管…...
技术文章:解决汇川MD500系列变频器干扰问题——GRJ9000S EMC滤波器的应用
1. 引言 汇川MD500系列变频器(Variable Frequency Drive, VFD)以其高性能、宽功率范围(0.4kW-500kW)和灵活的控制方式,广泛应用于工业自动化领域,如风机、水泵、传送带和压缩机等。然而,MD500系…...
频域中的反射-信号完整性分析
频域中的反射: 频域与时域的桥梁是傅里叶变换,一个周期信号可以拆分为许多个正弦波。所谓从频域中看信号,看到的可以是很多个频域中的点,也可以是许多个正弦波。 所以在大家眼中看到的信号如图4-13所示。我们可以将该信号分解为图4-14所示信号。 让我们来思考下面这个问题:…...
window nvidia-smi命令 Failed to initialize NVML: Unknown Error
如果驱动目录下的可以执行,那可能版本原因 "C:\Program Files\NVIDIA Corporation\NVSMI\nvidia-smi"复制"C:\Program Files\NVIDIA Corporation\NVSMI\nvidia-smi.exe"替换 C:\Windows\System32\nvidia-smi.exe 或者 把C:\Windows\System3…...
ubuntu 20.04 更改国内镜像源-阿里源 确保可用
镜像源是跟linux版本一一对应的,查询自己系统的版本号: 命令:lsb_release -a macw:~$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.6 LTS Release: 20.04 Codename: focal macw:~$…...
Elasticsearch 学习(一)如何在Linux 系统中下载、安装
目录 一、Elasticsearch 下载二、使用 yum、dnf、zypper 命令下载安装三、使用 Docker 本地快速启动安装(ESKibana)【测试推荐】3.1 介绍3.2 下载、安装、启动3.3 访问3.4 修改配置,支持ip访问 官网地址: https://www.elastic.co/…...
PYTHON训练营DAY27
装饰器 编写一个装饰器 logger,在函数执行前后打印日志信息(如函数名、参数、返回值) logger def multiply(a, b):return a * bmultiply(2, 3) # 输出: # 开始执行函数 multiply,参数: (2, 3), {} # 函数 multiply 执行完毕&a…...
Shell脚本日志输出完整指南(AI)
一、基础日志输出方法 1. 标准输出与错误重定向 在Shell脚本中,可以使用重定向操作符将命令输出记录到日志文件: >:覆盖写入文件>>:追加写入文件2>:重定向错误输出&>:同时重定向标准…...