生信学习之通路富集一(GO分析)

生信学习之通路富集一(GO分析): 富集分析的理论知识 富集分析(Enrichment Analysis)是一种广泛应用于生物信息学研究的统计方法,主要用于检验一个基因集合中某些功能或特征的富集程度。富集分析的主要目的是从大量基因数据中找出有生物学意义的模式和功能。根据分析的目标和方法,富集分析可以分为以下几种类型: 基因本体论富集分析(Gene Ontology Enrichment Analysis):这是最常用的富集分析类型,用于检验基因集合中基因本体论(GO)条目的富集情况。这可以帮助研究者了解基因集合中的基因在生物学过程、分子功能和细胞组成方面的共同特征。 通路富集分析(Pathway Enrichment Analysis):这种类型的富集分析主要关注基因在代谢途径和信号传导通路中的作用。通过检测基因集合中通路的富集情况,研究者可以了解这些基因在生物体内的功能和调控机制。通路数据库如KEGG(Kyoto Encyclopedia of Genes and Genomes)和Reactome是进行通路富集分析的常用资源。 基因集富集分析(Gene Set Enrichment Analysis,GSEA):GSEA是一种旨在检测一个基因集合(如差异表达基因)与某些生物学特征(如基因本体论、通路、疾病、表型等)之间的关联的方法。GSEA可以帮助研究者了解基因集合与生物学功能和过程之间的关联,从而揭示潜在的生物学意义。 蛋白质-蛋白质相互作用富集分析(Protein-Protein Interaction Enrichment Analysis):这种类型的富集分析关注蛋白质之间的相互作用,帮助研究者了解基因集合中蛋白质在细胞信号和代谢过程中的功能。 基因表达调控富集分析:这种类型的富集分析关注转录因子、miRNA等调控因子对基因表达的调控作用。通过这种富集分析,研究者可以了解基因表达的调控机制和相互关系。 GO分析的理论知识 基因本体论(Gene Ontology, GO)是一个用于描述基因和基因产品属性的标准术语体系。它提供了一个有组织的方式来表示基因在生物体内的各种角色。基因本体论通常从三个层面对基因进行描述:细胞成分(Cellular Component,CC)、生物学过程(Biological Process,BP)和分子功能(Molecular Function,MF)。 细胞成分(Cellular Component,CC):这个层面描述了基因产物(如蛋白质)在细胞内的定位。例如,它们可能位于细胞核、细胞质、线粒体膜或其他细胞器上。这有助于了解基因产物在细胞内的作用和功能。 生物学过程(Biological Process,BP):这个层面描述了基因参与的生物学过程。这些过程可能包括细胞生长、信号传导、基因表达调控、代谢途径等。通过了解基因参与的生物学过程,我们可以更好地理解生物体的生理功能和疾病发生机制。 分子功能(Molecular Function,MF):这个层面描述了基因产物在分子层面的功能,通常涉及到与其他分子的相互作用或催化生化反应。例如,某个基因产物可能是一个酶,它能够催化某个特定的生化反应;或者它可能是一个结构蛋白,参与细胞骨架的组装和维持。 基因本体论为研究者提供了一个系统的方法来表示和共享关于基因和基因产品在生物体内的功能和过程的知识。这有助于促进基因功能研究的发展,提高研究效率,为疾病治疗和药物研发提供重要信息。 show一些相关的图 GO分析基本原理: 准备基因列表:首先,你需要一个待分析的基因列表,这通常是从实验数据中获得的差异表达基因或与特定条件相关的基因集合。 映射基因到GO条目:然后,需要将基因列表中的每个基因映射到相应的GO条目。这可以通过使用生物信息学工具和数据库(如DAVID、Ensembl、AmiGO等)来实现。 统计富集情况:接下来,需要计算每个GO条目在基因列表中的富集情况。这通常通过比较实际观察到的基因数目与根据背景基因组随机分布预期的基因数目之间的比例来完成。常用的统计方法包括超几何检验、Fisher精确检验和卡方检验等。 多重比较校正:由于GO富集分析涉及到大量假设检验,因此需要进行多重比较校正,以减少假阳性结果。常用的多重比较校正方法包括Bonferroni校正、Benjamini-Hochberg校正(FDR)等。 解释和可视化结果:最后,可以根据富集分析的结果对基因列表进行解释,找出具有生物学意义的功能、过程和分子功能。此外,还可以通过各种可视化工具(如Cytoscape、REVIGO等)将富集结果以图形形式展示,便于理解和交流。 基因本体论分析通过评估基因集合中特定生物学功能、过程或分子功能的富集程度,帮助研究者从基因表达数据中提取生物学意义。这有助于揭示基因在生物学过程和功能方面的关联,从而促进对生物体内的基因调控和作用机制的理解。 GO分析代码 // An highlighted block degdf <- FindMarkers(scRNA1,ident.1 = "DapiNeg1",ident.2 = "DapiNeg2", logfc.threshold = 0.5,group.by = "orig.ident",ident=1) degdf <- FindAllMarkers(scRNA1) saveRDS(degdf,"markers.rds") # degdf<-readRDS("

【安装记录】Centos7.6下载安装配置教程(十分详细)

文章目录 前言一、Centos下载地址二、安装步骤(一)创建虚拟机(二)安装Centos7.6(三)开启虚拟机(四)继续配置(五)登录 到此,安装完成!!! !!!!文章禁止转载谢谢!!!! 前言 配置环境:win10 、VMware 一、Centos下载地址 首先,下载相应的安装包:https://www.centos.org/download/ 我也传到了百度网盘里,直接下载即可 链接:https://pan.baidu.com/s/1u8t7QdNEfUR5ZjNfCJje8A 提取码:lko5 如果链接失效,请私信我!!! 文章出自专栏:【安装教程】 二、安装步骤 (一)创建虚拟机 1、首先,打开VMware,界面如下: 2、文件->新建虚拟机 3、选择“典型”,点击“下一步” 4、选择“稍后安装操作系统”,点击“下一步” 5、选择’linux’和’Red Hat Enterprise Linux 7 64 位’ 6、给虚拟机起个名字,下面更改路径,建议安装在空间比较大的磁盘 7、点击“下一步”,建议选择“拆分为多个文件” (划分20G是随着使用慢慢占用,并不是一下子占用) 8、选择“自定义硬件” (1)内存2g即可,处理器分配取决于主机情况 比如说主机2个CPU,一共8个内核,则分配2个处理器,每个处理器2个内核就行。我的电脑是1个CPU,4个内核,则分配1个处理器,每个处理器2个内核即可。(查看CPU和内核数量的方法见下方) 查看CPU和内核数量 打开 ‘资源监视器’,有一个CPU Ctrl+Shift+Esc 打开 ‘任务管理器’ ,有4个内核 (2)网络适配器 选择 “NAT模式”->关闭->完成 (二)安装Centos7.6 1、右键->设置 2、如图,找到刚才下载的iso的位置,打开后,点击“确定” (三)开启虚拟机 1、打开虚拟机 2、选择 “ Install Centos 7 ” ,按 “ Enter ” 3、再次点击 “ Enter ” ,可能会花一些时间,之后会出现如下界面 选择简体中文->点击“继续”,等待 4、等待后,出现如下界面: 实际开发中,可以选择 “ 最小安装 ” ,学习过程可以如下配置:点击 “ 软件选择”按下图选择->点击 “ 完成 ” (等待过程可能比较长,不要乱点,可能会卡死)

“use strict“是什么? 使用它有什么优缺点?

严格模式 - JavaScript | MDN Javascript 严格模式详解 - 阮一峰的网络日志 1、"use strict" 是什么? "use strict" :指定代码在严格条件下执行; 2、 使用 "use strict" 有什么优缺点? ① 严格模式通过抛出错误来消除了一些原有静默错误; ② 严格模式修复了一些导致 JavaScript引擎难以执行优化的缺陷; 有时候,相同的代码,严格模式可以比非严格模式下运行得更快。 ③ 严格模式禁用了在ECMAScript的未来版本中可能会定义的一些语法严格模式,其实就是更严格了设立"严格模式"的目的,主要有以下几个: - 消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为; - 消除代码运行的一些不安全之处,保证代码运行的安全; - 提高编译器效率,增加运行速度; - 为未来新版本的Javascript做好铺垫。 3、常见的在严格模式下的现象 ① 禁止this关键字指向全局对象 ② 禁止在函数内部遍历调用栈 ③ 全局变量必须显式声明 ④ arguments不再追踪参数的变化 ⑤ 不能使用未声明的变量。 (function(){ "use strict" b=1 // Uncaught ReferenceError: b is not defined })()

Java 反射机制

目录 一、反射机制概述 二、理解并获取Class实例 三、反射的用法 1. 通过反射创建运行时类的对象 2. 通过反射获取运行时类的属性结构 3. 通过反射获取运行时类的方法结构 4. 通过反射获取运行时类的构造器结构 5. 通过反射获取运行时类的父类 6. 通过反射获取运行时类的接口、所在包、注解 7. 通过反射调用指定属性 8. 通过反射调用指定方法 9. 通过反射调用指定构造器 四、应用场景 五、总结 一、反射机制概述 Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。 加载完类之后,在堆内存的方法区中就产生了一个Class类型的对象 (一个类只有一个Class对象),这个对象就包含了完整的类的结构信息。我们可以通过这个对象看到类的结构。这个对象就像一面镜子,透过这个镜子看到类的结构,所以,我们形象的称之为:反射 二、理解并获取Class实例 关于java.lang.Class类的理解 1.类的加载过程:程序经过javac.exe命令以后,会生成一个或多个字节码文件(.class结尾)。接着我们使用java.exe命今对某个字节码文件进行解释运行。相当于将某个字节码文件加载到内存中。此过程就称为类的加载。加载到内存中的类,我们就称为运行时类,此运行时类,就作为Class的一个实例。 2.换句话说,Class的实例就对应着一个运行时类。 3.加载到内存中的运行时类,会缓存一定的时间。在此时间内,我们可以通过不同的方式来获取此运行时类 获取Class实例的四种方式: //方式一: 调用运行时类的属性: .class Class clazz1 = Person.class; System.out.println(clazz1); //方式二: 通过运行时类的对象,调用getclass() Person p1 = new Person(); Class clazz2 = p1.getClass(); System.out.println(clazz2); //方式三: 调用CLass的静态方法: forName(String classPath) Class clazz3 = Class .forName("com.fd.java.Person"); //clazz3 = Class.forName("java.lang.String"); System.out.println(clazz3); //方式四: 使用类的加载器: CLassLoader ClassLoader classLoader = ReflectionTest.

PaddleDetection的学习笔记

1. PaddleDetection介绍 PaddleDetection是由百度推出的目标检测开源模型库; 1.1 常见格式 .pdparams:保存参数权重的文件格式。 2. 安装PaddleDetection Python版本:python <= 3.10; PaddlePaddle PaddlePaddle版本:[PaddlePaddle/PaddleDetection],需要到安装说明中查看,一般是在满足最低版本要求后安装最新的稳定版本; PaddlePaddle安装:开始使用_飞桨 3. 数据集设置:COCO 数据集目录结构如下: PaddleDetection └── dataset └── coco ├── train2017 ├── val2017 └── annotations 4. 模型训练/评估/预测 train.py —— 模型训练 python -m paddle.distributed.launch --gpus 0,1,2,3,4,5,6,7 tools/train.py -c configs/ppyoloe/ppyoloe_plus_crn_l_80e_coco.yml --eval --amp -c:指定配置文件 -r: resume,恢复训练 后面加上存档的epoch索引(从0开始); infer.py —— 模型预测 # 预测 python tools/infer.py -c configs/faster_rcnn_r50_1x.yml --infer_img=demo/000000570688.jpg # 在CPU上进行推理 python tools/infer.py -c configs/ppyolo/ppyolo_r50vd_dcn_1x_coco.yml -o use_gpu=false weights=https://paddledet.bj.bcebos.com/models/ppyolo_r50vd_dcn_1x_coco.pdparams --infer_img=demo/000000014439.jpg # CPU推理需要显式指定:use_gpu=false # demo/000000014439.

Android使用Webview展示微信公众号链接碰到的问题

碰到微信公众号链接展示的时候内容出现部分空白,没有关注啊等信息展示出来,图片也是一直在转圈,部分内容空白展示失败 看一下这几个有没有配置, webSettings.domStorageEnabled = true webSettings.blockNetworkImage = false // 设置它可以解决部分手机视频不能播放的问题 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { webSettings.mixedContentMode=WebSettings.MIXED_CONTENT_ALWAYS_ALLOW }

泰克Tektronix DPO5204B混合信号示波器

特征 带宽:2 GHz输入通道:4采样率:1 或 2 个通道上为 5 GS/s、10 GS/s记录长度:所有 4 个通道 25M,50M:1 或 2 个通道上升时间:175 皮秒MultiView zoom™ 记录长度高达 250 兆点>250,000 wfms/s 最大波形捕获率,采用 FastAcq™ 采集FastFrame™ 分段存储器采集模式,具有高达 290,000 段和每秒 >310,000 个波形的捕获率具有小于 4 pF 电容负载和 500 MHz 或 1 GHz 模拟带宽的标准 10 MΩ 无源电压探头>11 位垂直分辨率,使用 HiRes 采样用户可选择的带宽限制和 DSP 滤波器可降低噪声并提高测量精度 主要分析功能 Wave inspector® 控件提供轻松导航和自动搜索波形数据高级触发器套件,带有标准的可视化触发器和搜索53 种自动测量、可选滤波、波形数学和 FFT 分析波形直方图、眼图、TIE(抖动/时序)测量和分析使用 MATLAB、Visual Studio 和 Excel 的用户可定义数学内存、高级抖动、串行数据、功率和宽带 RF 的可选分析 主要协议功能 中速(100 Mb/s 至 1 Gb/s)总线的触发和解码选项低速 (<10 Mb/s) 总线的触发和解码选项USB2.0、以太网、USB 电源、MOST、BroadR-Reach 的一致性测试选项通信、计算和视频标准的模板测试 规格

Ficus: 一款 markdown 编辑管理软件

Ficus Ficus 是一款 markdown 文档的编辑管理软件,由 gg=G 团队开发。 Ficus 释义为“榕树”,榕树具有“冠盖如伞、一木成林“的特点。这也恰是本款软件想要为用户提供的核心服务:让用户的 md 文档可以像一棵榕树一样被浏览和编辑,同时让用户的多个 md 文档像榕树林一样进行多种形式的关联。我们希望用户的体验如这款软件的标语一样: Ficus 基于 Vue3, Electron 框架开发,提供 Windows、macOS 和 Linux 系统的安装包。 详细信息可以在ficus官网进一步了解。 核心特征 独创性的 Ficus 架构 ficus 架构一共分为 3 个层次: 文档内:每个 md 文档都可以根据标题等语法符号解析成一个 榕树 (ficus tree)。文档间:对多个文档进行结构化联合编辑,每个文档对应一棵树,多个文档组成 榕林 (ficus forest)。文档库:将每个文档视为一个节点,并构建多样化的联系。组成成一个 榕图 (ficus graph)。 在文档内,榕树可以帮您更加详略得当地了解文档的组织结构,同时您可以通过编辑榕树调整文档的脉络,更加符合内容输出的直观逻辑。 在文档间,榕林为您拆分、嫁接、整合多棵榕树提供了可视化支持,您可以轻松拆分冗长的文档,构建有层次的文档,复用精彩文档。 在文档库,您可以构建多种文档间的联系,如榕根 (ficus root),榕柱 (ficus prop),榕须 (ficus aerial)。这些不同的联系能够帮助您进行更加有条理的文档管理、更加高效的文档检索、更加直观的思维导图构建、更加便捷的多文档联合编辑。同时您可以对这些联系进行编辑,是您可以直观地构建您自己的动态知识体系。 舒适自然的 md 编辑器 Ficus 内置“所见即所得”的 md 编辑器,支持以下功能特性: 所见即所得的实时渲染。markdown 语法高亮。提供“源代码模式”和“渲染模式”的自由切换。 LaTeX \LaTeX{} LATE​X 数学公式渲染和补全支持。查找替换功能。编辑快捷键支持。…… 简约慵懒的设计风格 Ficus 以用户为中心,会尽最大的努力来满足用户的期望,同时不增加用户的理解和使用负担。Ficus 风格具有以下特点:

计算机视觉技术 - 图像平滑

计算机视觉技术 - 图像平滑 目录 计算机视觉技术 - 图像平滑2D卷积(图像过滤)图像模糊(图像平滑)参考资料 图像平滑是指受硬件、环境等因素的影响,图像上会出现某些亮度变化过大的区域,或出现一些亮点(也称噪声)。这种为了抑制噪声,使图像亮度趋于平缓的处理方法就是图像平滑。图像平滑实际上是低通滤波,平滑过程会导致图像边缘模糊化。 2D卷积(图像过滤) 与一维信号一样,可以使用各种低通滤波器(LPF),高通滤波器(HPF)等对图像进行滤波。LPF有助于消除噪声,使图像模糊等。HPF滤波器有助于在图像中找到边缘。 OpenCV提供了一个函数 filter2D() 来将内核与图像进行卷积。例如,我们将尝试对图像进行平均滤波。5x5平均滤波器内核如下所示: K = 1 25 [ 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ] K = \frac{1}{25}\begin{bmatrix} 1 & 1 & 1 & 1 & 1 \\ 1 & 1 & 1 & 1 & 1 \\ 1 & 1 & 1 & 1 & 1 \\ 1 & 1 & 1 & 1 & 1 \\ 1 & 1 & 1 & 1 & 1 \end{bmatrix} K=251​ ​11111​11111​11111​11111​11111​ ​

maven手动安装oracle驱动

maven 中安装本地的 oracle驱动 注意下面路径,是我电脑的路径,请更换为自己的电脑路径 cmd执行语句: mvn install:install-file -Dfile=C:/Users/yw/.m2/repository/com/oracle/ojdbc6/10.2.0.4.0/ojdbc6-10.2.0.4.0.jar -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=10.2.0.4.0 -Dpackaging=jar -DgeneratePom=true //提供下载链接 链接:https://pan.baidu.com/s/1-8p-zvx1DJE55RfJeE91Sg?pwd=long 提取码:long

蓝桥杯模拟赛1:奇怪的捐赠(数学知识的运用)

题目描述:地产大亨Q先生临终的遗愿是:拿出100万元给X社区的居民抽奖,以稍慰藉心中愧疚。 麻烦的是,他有个很奇怪的要求: 1. 100万元必须被正好分成若干份(不能剩余)。 每份必须是7的若干次方元。 比如:1元, 7元,49元,343元,... 2. 相同金额的份数不能超过5份。 3. 在满足上述要求的情况下,分成的份数越多越好! 请你帮忙计算一下,最多可以分为多少份? 思路:本题可以类比思考,若我要将14321 元分为1,10,100,1000,10000元的组合,每份不超过十,最多分多少份。那么结果就是该数的各个位相加。同样本题可以考虑将1000000转换为7进制数进行判断。 代码: #include<stdio.h> int a[100] = {0}; int main() { int n = 1000000,k = 0; while(n > 0) { a[k++] = n%7; n /= 7; } for(int i = k - 1 ; i >= 0 ; i--) { printf("%d",a[i]); } printf("\n"); return 0; } 原文链接:https://blog.csdn.net/zhangge138/article/details/79566991

海康 安防平台视频插件 弹窗遮挡 问题解决

开始海康插件使用不熟悉,海康插件一直置顶,会把项目的弹窗挡住,最终找到解决办法。 1、使用下面方法,可以让海康控件的部分窗体,不显示 2、操作完成后,可使用下面方法,还原回去。

Python中Pandas中pd.DataFrame().loc()方法的使用

Pandas中pd.DataFrame().loc()方法的使用 pd.DataFrame().loc[] 是pandas中用于基于标签选择数据的方法。这个方法接受一个单一的标签,或者一个标签列表、切片对象、布尔型数组等作为输入,并返回一个符合条件的新DataFrame。 下面是一个简单的例子,假设有如下的数据: import pandas as pd data = {'Name': ['Tom', 'Jack', 'Steve', 'Ricky'], 'Age': [28, 34, 29, 42], 'Country': ['US', 'UK', 'Canada', 'Australia']} df = pd.DataFrame(data, index=['row1', 'row2', 'row3', 'row4']) DataFrame的样子是这样的: Name Age Country row1 Tom 28 US row2 Jack 34 UK row3 Steve 29 Canada row4 Ricky 42 Australia 假设我们想要选取第二行的数据,可以使用loc方法: row2 = df.loc['row2'] print(row2) 这个方法会返回一个Series对象,包含第二行的数据: Name Jack Age 34 Country UK Name: row2, dtype: object 我们也可以使用loc方法来选取多行数据,比如选取第二行和第四行:

Linux创建和删除软链接

文件管理 1.创建: 普通文件:touch a 2.写内容进入文件: echo name > a 注:创建普通文件的方法:touch;>,>>;vi/vim;tee 3.创建软硬链接: 软硬链接:ln 源文件 链接文件名称 (硬) ln -s 源文件 链接文件名称 (软) 目录文件:mkdir a(-p) 4.删除 rm a(-r -f) 实践如下: 1.创建文件,以及查看创建文件的目录 2.使用echo name > 命令写内容到该文件中,并用cat命令查看a中的内容 3.创建硬连接 4.创建软连接 5.根据性质经过软连接更改文件内容:发现所有都变为更改后的内容 6.现在删除a:我们发现a.hart还能继续显示而a.soft则会出现错误。因为a.soft的路径已经没有了它找不到路径。 已经访问不到原来的a a.soft只能访问到a.hard

java跨服务调用接口

Java程序跨服务调用接口,通常可以使用以下方式: RESTful API:通过HTTP协议进行通信,使用RESTful API调用其他服务的接口。 RPC:使用远程过程调用(RPC)框架,如Dubbo、gRPC等,通过序列化和反序列化技术实现跨服务调用。 消息队列:使用消息队列,如Kafka、RabbitMQ等,服务之间通过消息队列进行异步通信。 HTTP客户端:使用Java内置的HTTP客户端,如HttpURLConnection、Apache HttpClient等,通过HTTP协议调用其他服务的接口。 无论使用哪种方式,都需要了解其他服务的接口定义和调用方式,以及网络通信的安全性和稳定性等方面的考虑。同时,需要注意接口版本的兼容性和错误处理等问题。 这里提供一个使用Java内置的HttpURLConnection进行POST请求的示例代码: import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; public class HttpPostExample { private static final String POST_URL = "http://engine-server-host:port/api/client/data/push"; private static final String USER_AGENT = "Mozilla/5.0"; public static void main(String[] args) throws IOException { URL obj = new URL(POST_URL); HttpURLConnection con = (HttpURLConnection) obj.openConnection(); // 添加请求头 con.setRequestMethod("POST"); con.setRequestProperty("User-Agent", USER_AGENT); con.setRequestProperty("Accept-Language", "en-US,en;q=0.5"); // 设置POST请求体 String postBody = "

【linux系列】融会贯通 linux 内核编程集合 -- logsys练习项目

【linux系列】融会贯通 linux 内核编程集合 -- logsys练习项目 logsysEnvironmentStructureTutorialsRelated logsys This is a comprehensive exercise project for linux kernel modification, including adding system calls, modifying the xfs file system, adding block device drivers, timer usage and page fault interrupt statistics. We have combined these five parts into a log management system, of course the effect is very simple, but I believe it is enough for an exercise. In addition to providing the source code of the final effect, a detailed tutorial on the operation of different modules is also specially prepared.

一键生成!如何为整个go项目自动添加单测

效果 为go项目中每个go文件生成对应的test文件,为每个接口生成对应的单测接口。 类似于这样,为go项目中每个包都生成一个test文件,单测模板如下: 比如函数接口为func releaseEndpoint(instanceID string, endpointID string) error 生成的单测为: 准备工具 GitHub - cweill/gotests: Automatically generate Go test boilerplate from your source code. 下载命令: $ go get -u github.com/cweill/gotests/... 使用方式(可以按照自己的想法设置): Usage of gotests: -all generate tests for all functions and methods -excl string regexp. generate tests for functions and methods that don't match. Takes precedence over -only, -exported, and -all -exported generate tests for exported functions and methods. Takes precedence over -only and -all

MultipartFile 和 file 的区别在于:

MultipartFile 和 file 的区别在于: 定义不同:MultipartFile 是Spring 框架中的一个类,而 file 是 Java 标准库中的一个类。用途不同:MultipartFile 主要用于上传文件,而 file 主要用于读写文件。类型不同:MultipartFile 是一个接口类型,而 file 是一个基本类型。读写方式不同:MultipartFile 可以读取二进制数据和文件名称,而 file 只能读取文件名称。处理方式不同:MultipartFile 可以使用 Spring 框架提供的方法进行处理,而 file 需要使用 Java 标准库提供的方法进行处理。

Zipkin介绍与在SpringCloud alibaba中的使用

Zipkin 在微服务(分布式系统)等多个服务组成的系统中,一个请求是跨多个服务处理的,这样就很难理解整个请求处理流程(可追溯性)。当故障和请求延迟因可追溯性降低而加剧时,这也使得更难找到哪个服务有问题。通过可视化服务间依赖和调用的系统称为分布式跟踪系统,它的作用就是帮助去解决此类问题。 介绍 官网地址:https://zipkin.io/ Zipkin是一个分布式跟踪系统,它能聚集来自各个异构系统的实时监控数据。类似的分布式跟踪系统还有其他比较成熟的实现,例如:Naver的Pinpoint、Apache的HTrace、阿里的鹰眼Tracing、京东的Hydra、新浪的Watchman,美团点评的CAT,skywalking等。 构成 Reporter Reporter 负责将日志从您的应用程序转发到 Zipkin 服务器,有三种主要的传输方式:HTTP、Kafka和Scribe。 Collector 跟踪数据到达Zipkin收集器守护进程后,Zipkin收集器将对其进行验证、存储和索引,以便进行查找。 Storage 负责存储的持久化,最初是为了在Cassandra上存储数据而构建的,因为Cassandra是灵活且可扩展的,并且在Twitter中被大量使用。=除了Cassandra,Zipkin原生支持ElasticSearch和MySQL。 API API 提供以各种方式从存储中提取数据的功能。 UI 它是一个 UI,可将存储在浏览器中的日志数据可视化。 部署与使用 docker docker run -d -p 9411:9411 openzipkin/zipkin Java(>1.8) curl -sSL https://zipkin.io/quickstart.sh | bash -s java -jar zipkin.jar 源码 # get the latest source git clone https://github.com/openzipkin/zipkin cd zipkin # Build the server and also make its dependencies ./mvnw -DskipTests --also-make -pl zipkin-server clean install # Run the server java -jar .

资料资源大全(地学资料,语言教程,地图土里利用,shp矢量数据,年鉴) (待审核)

*树谷资料库目录一览* 1软件、语言类教程资源 1、太强了!Python115集视频教程+海量PDF资料免费送,学会Python很难吗? 2、干货丨R语言(视频教程+PDF资源,免费赠送) 3、3.44G视频教程丨Meta零基础教程(10节课) 4、SPSS丨全套SPSS视频教程+课件+数据免费送 5、Origin绘图丨62集视频课+安装包 免费领 6、最强干货丨全套Matlab学习资源(视频+教程) 7、顶级Origin课程视频(免费)3天搞定168张Science/Nature顶刊美图 8、这个400G的科研大礼包,快速收藏 9、分享一套ENVI最值得学习的教程,非常全面,值得推荐 10、5.0G全套CAD精品教学视频免费看-工程必备 11、树谷资源站丨快速学习SCI作图技巧的6个免费视频领取 12、树谷资源站丨CASS视频教程全集(2G)免费领取,工程制图必备 13、数据统计软件SAS(视频、课件、教程)共计3.98G,免费领取 14、1.5G视频教程丨R语言与多元统计方法(包含广义线性模型、聚类分析、主成分分析) 15、EndNote 和NoteExpress 文献管理软件和视频教程 16、插件分享1:CAD插件超实用 17、插件分享2: GIS插件,能够一键获取多种在线地图资源(谷歌,高德,天地图,搜搜地图) 18、插件分享3:让浏览器秒变科研神器的5款插件,简直太绝了! 19、全行业碳排放核算Excel自动计算表(含更新说明、工具指南) 20、今日分享 | 84G科研必备工具包!覆盖17款软件,从安装到教程一招搞定!(附下载) 21、水文模型教程合集(含SWAT、MIKE、VIC、SWMM、EFDC等)免费下载 22、科研最常用Stata软件安装+视频教学+电子书讲义 23、最全的水土保持资料大合集!含公报、规范、报告、规划、技术资料等共6.35G 免费下载 2数据资源 1、免费下载 | 最全的全国分省、市、县、乡镇行政区划矢量图(shp格式) 2、资源站丨全国最新地级市和气象站空气质量和60年气候详细数据下载 3、100个经典地球化学图解,全部经过CorelDRAW矢量化,速来免费领取~ 4、重磅资源丨全国水系图 ,全部SHP格式免费下载 5、资源站丨地质灾害图式图例-MAPGIS格式 速来免费领取! 6、全国shp数据免费领取!(包含:区域、河流、湖泊、铁路、公路) 7、数据分享丨中国地级市PM2.5数据(2000-2018年) 7+ 、中国各区县PM2.5数据和全国各区县二氧化碳排放数据2850县,2000-2018年 8、百度&高德人口迁徙等人口数据集(免费下载) 9、资源站丨 中国土地利用数据1980-2015 (免费获取) 10、多个自然资源(大气、土地、水等)面板数据 免费下载 11、树谷资源站丨15省《中国土壤分布》土壤分布矢量数据,含使用说明,免费下载! 12、树谷资源站丨中国区域各省界30mDEM地形图数据,免费下载 13、中国年度植被指数(NDVI)空间分布数据(1998-2018)免费下载 14、免费下载丨中国陆地生态系统服务价值空间分布数据 15、中国河流矢量数据免费下载(含一、三、四、五级河流数据及河湖矢量数据) 16、树谷资源站丨中国1980年以来逐年年降水量空间插值数据集,免费下载 17、树谷资源站丨省级统计面板数据1994-2019(免费下载)共26年220+特征! 18、树谷资源站丨2000~2019 年中国各省、市、区县分年、分月、逐日平均降水量数据 19、树谷资源站丨中国地区工业环境污染面板数据[1989~](免费下载) 20、树谷资源站丨基于DEM提取的中国流域、河网数据免费下载 21、树谷资源站丨全国DEM 1km、500m和250m数据(SRTM 90m) 22、2020年最新 中国各行政区域土地利用遥感监测数据丨免费下载 23、中国地质数据库shap格式可任意截取研究区地质构造