当前位置: 首页 > news >正文

【Linux】sar常用选项介绍

sar 使用

安装sysstat

apt-get install sysstat -y
#或
yum install sysstat -y

选项

用法: sar [ 选项 ] [ <时间间隔> [ <次数> ] ]
选项:
[ -A ] [ -B ] [ -b ] [ -C ] [ -D ] [ -d ] [ -F [ MOUNT ] ] [ -H ] [ -h ]
[ -p ] [ -q ] [ -r [ ALL ] ] [ -S ] [ -t ] [ -u [ ALL ] ] [ -V ]
[ -v ] [ -W ] [ -w ] [ -y ] [ -z ]
[ -I { <中断列表> | SUM | ALL } ] [ -P { <cpu_列表> | ALL } ]
[ -m { <关键字> [,…] | ALL } ] [ -n { <关键字> [,…] | ALL } ]
[ --dev=<设备列表> ] [ --fs=<文件系统列表> ] [ --iface=<iface_列表> ]
[ --dec={ 0 | 1 | 2 } ] [ --help ] [ --human ] [ --sadc ]
[ -j { ID | LABEL | PATH | UUID | … } ]
[ -f [ <文件名> ] | -o [ <文件名> ] | -[0-9]+ ]
[ -i <时间间隔> ] [ -s [ <时:分[:秒]> ] ] [ -e [ <时:分[:秒]> ] ]

$ sar --help
用法: sar [ 选项 ] [ <时间间隔> [ <次数> ] ]
主要选项和报告(报告名以方括号分隔):-B      分页状况 [A_PAGE]-b      I/O 和传输速率信息状况 [A_IO]-d      块设备状况 [A_DISK]-F [ MOUNT ]文件系统统计信息 [A_FS]-H      巨大页面利用率 [A_HUGE]-I { <中断列表> | SUM | ALL }中断信息状况 [A_IRQ]-m { <关键字> [,...] | ALL }电源管理统计信息 [A_PWR_...]关键字:CPU     CPU 瞬时时钟频率FAN     风扇速度
\t\tFREQ\tCPU 平均时钟频率IN      输入电压TEMP    设备温度
\t\tUSB\t连接的 USB 设备-n { <关键字> [,...] | ALL }网络统计信息 [A_NET_...]关键字:DEV     网络接口EDEV    网络接口(错误)NFS     NFS 客户端NFSD    NFS 服务端SOCK    Sockets (v4)IP      IP 流   (v4)EIP     IP 流   (v4)(错误)ICMP    ICMP 流 (v4)EICMP   ICMP 流 (v4)(错误)TCP     TCP 流  (v4)ETCP    TCP 流  (v4) (错误)UDP     UDP 流  (v4)SOCK6   Sockets (v6)IP6     IP 流   (v6)EIP6    IP 流   (v6)(错误)ICMP6   ICMP 流 (v6)EICMP6  ICMP 流 (v6) (错误)UDP6    UDP 流  (v6)FC      Fibre channel HBAsSOFT    基于软件的网络处理-q      队列长度和平均负载统计信息 [A_QUEUE]-r [ ALL ]内存利用率信息 [A_MEMORY]-S      交换空间利用率信息 [A_MEMORY]-u [ ALL ]CPU 利用率信息 [A_CPU]-v      内核表统计信息 [A_KTABLES]-W      交换信息 [A_SWAP]-w      任务创建与系统切换信息 [A_PCSW]-y      TTY 设备信息 [A_SERIAL]

-A:所有报告的总和

-b:显示I/O和传递速率的统计信息

-B:显示换页状态

-d:输出每一块磁盘的使用信息

-e:设置显示报告的结束时间

-f:从制定的文件读取报告

-i:设置状态信息刷新的间隔时间

-P:报告每个CPU的状态

-R:显示内存状态

–u:输出cpu使用情况和统计信息

–v:显示索引节点、文件和其他内核表的状态

-w:显示交换分区的状态

-x:显示给定进程的装

-r:报告内存利用率的统计信息

CPU使用情况sar -u
$ sar 1 3 
#或
$ sar -u 1 3$ sar 1 3
Linux 5.10.0-amd64-desktop (uos-PC)     2022年07月26日  _x86_64_        (16 CPU)11时36分59秒     CPU     %user     %nice   %system   %iowait    %steal     %idle
11时37分00秒     all      0.38      0.00      0.19      0.00      0.00     99.44
11时37分01秒     all      0.50      0.00      0.44      0.00      0.00     99.06
11时37分02秒     all      0.38      0.00      0.19      0.00      0.00     99.44
平均时间:     all      0.42      0.00      0.27      0.00      0.00     99.31

%user 用户空间的CPU使用

%nice 改变过优先级的进程的CPU使用率

%system 内核空间的CPU使用率

%iowait CPU等待IO的百分比

%steal 虚拟机的虚拟机CPU使用的CPU

%idle 空闲的CPU

在以上的显示当中,主要看%iowait和%idle,%iowait过高表示存在I/O瓶颈,即磁盘IO无法满足业务需求,如果%idle过低表示CPU使用率比较严重,需要结合内存使用等情况判断CPU是否瓶颈。

保存文件,并读取文件sar -o | sar -f
sar -o filename 1 3  ## 保存 
sar -f filename   ## 查看
sar -f filename -r ALL  ## 查看内存状态 
sar -f filename -u ALL  ## 查看cpu状态
查看平均负载sar -q
$sar -q 1 3 
Linux 5.10.0-amd64-desktop (uos-PC)     2022年07月26日  _x86_64_        (16 CPU)11时41分00秒   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15   blocked
11时41分01秒         0      1886      0.16      0.43      0.54         0
11时41分02秒         0      1886      0.15      0.42      0.53         0
11时41分03秒         0      1886      0.15      0.42      0.53         0
平均时间:         0      1886      0.15      0.42      0.53         0

runq-sz 运行队列的长度(等待运行的进程数,每核的CP不能超过3个)

plist-sz 进程列表中的进程(processes)和线程数(threads)的数量

ldavg-1 最后1分钟的CPU平均负载,即将多核CPU过去一分钟的负载相加再除以核心数得出的平均值,5分钟和15分钟以此类推

ldavg-5 最后5分钟的CPU平均负载

ldavg-15 最后15分钟的CPU平均负载

blocked

内存使用情况 sar -r
$ sar -r 1 3 
Linux 5.10.0-amd64-desktop (uos-PC)     2022年07月26日  _x86_64_        (16 CPU)11时43分18秒 kbmemfree   kbavail kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact   kbdirty
11时43分19秒    364224  10025276   5702624     34.94   2242692   7342612  24669220     74.54   5592872   9422092       532                                                                                                  
11时43分20秒    365112  10026208   5701544     34.94   2242692   7342860  24669220     74.54   5592872   9421532       636                                                                                                  
11时43分21秒    365576  10026672   5701080     34.93   2242692   7342860  24669220     74.54   5592872   9421824       672                                                                                                  
平均时间:    364971  10026052   5701749     34.94   2242692   7342777  24669220     74.54   5592872   9421816       613    

kbmemfree 空闲的物理内存大小

kbmemused 使用中的物理内存大小

%memused 物理内存使用率

kbbuffers 内核中作为缓冲区使用的物理内存大小,kbbuffers和kbcached:这两个值就是free命令中的buffer和cache.

kbcached 缓存的文件大小

kbcommit 保证当前系统正常运行所需要的最小内存,即为了确保内存不溢出而需要的最少内存(物理内存+Swap分区)

commit 这个值是kbcommit与内存总量(物理内存+swap分区)的一个百分比的值

kbactive

kbinact

kbdirty

查看swap分区统计情况 sar -W
$ sar -W 1 3 
Linux 5.10.0-amd64-desktop (uos-PC)     2022年07月26日  _x86_64_        (16 CPU)11时44分31秒  pswpin/s pswpout/s
11时44分32秒      0.00      0.00
11时44分33秒      0.00      0.00
11时44分34秒      0.00      0.00
平均时间:      0.00      0.00

pswpin/s 每秒从交换分区到系统的交换页面(swap page)数量

pswpott/s 每秒从系统交换到swap的交换页面(swap page)的数量

查看IO和传递速率sar -b
$ sar -b 1 3 
Linux 5.10.0-amd64-desktop (uos-PC)     2022年07月26日  _x86_64_        (16 CPU)11时45分44秒       tps      rtps      wtps   bread/s   bwrtn/s
11时45分45秒      0.00      0.00      0.00      0.00      0.00
11时45分46秒      0.00      0.00      0.00      0.00      0.00
11时45分47秒      0.00      0.00      0.00      0.00      0.00
平均时间:      0.00      0.00      0.00      0.00      0.00

tps 磁盘每秒钟的IO总数,等于iostat中的tps

rtps 每秒钟从磁盘读取的IO总数

wtps 每秒钟从写入到磁盘的IO总数

bread/s 每秒钟从磁盘读取的块总数

bwrtn/s 每秒钟此写入到磁盘的块总数

查看磁盘使用情况sar -d
$ sar -d 1 3 
Linux 5.10.0-amd64-desktop (uos-PC)     2022年07月26日  _x86_64_        (16 CPU)11时48分17秒       DEV       tps     rkB/s     wkB/s   areq-sz    aqu-sz     await     svctm     %util
11时48分18秒  dev259-0     14.00      0.00     96.00      6.86      0.00      0.07      0.57      0.80
11时48分18秒    dev8-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.0011时48分18秒       DEV       tps     rkB/s     wkB/s   areq-sz    aqu-sz     await     svctm     %util
11时48分19秒  dev259-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
11时48分19秒    dev8-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.0011时48分19秒       DEV       tps     rkB/s     wkB/s   areq-sz    aqu-sz     await     svctm     %util
11时48分20秒  dev259-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
11时48分20秒    dev8-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00平均时间:       DEV       tps     rkB/s     wkB/s   areq-sz    aqu-sz     await     svctm     %util
平均时间:  dev259-0      4.67      0.00     32.00      6.86      0.00      0.07      0.57      0.27
平均时间:    dev8-0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00

DEV 磁盘设备的名称,如果不加-p,会显示dev253-0类似的设备名称,因此加上-p显示的名称更直接

tps 每秒I/O的传输总数

rd_sec/s 每秒读取的扇区的总数

wr_sec/s 每秒写入的扇区的总数

avgrq-sz 平均每次次磁盘I/O操作的数据大小(扇区)

avgqu-sz 磁盘请求队列的平均长度

await 从请求磁盘操作到系统完成处理,每次请求的平均消耗时间,包括请求队列等待时间,单位是毫秒(1秒等于1000毫秒),等于寻道时间+队列时间+服务时间

svctm I/O的服务处理时间,即不包括请求队列中的时间

%util I/O请求占用的CPU百分比,值越高,说明I/O越慢

统计网络信息 sar -n

-n { <关键词> [,…] | ALL }
关键词可以是
DEV 网卡
EDEV 网卡 (错误)
NFS NFS 客户端
NFSD NFS 服务器
SOCK Sockets (套接字) (v4)
IP IP 流 (v4)
EIP IP 流 (v4) (错误)
ICMP ICMP 流 (v4)
EICMP ICMP 流 (v4) (错误)
TCP TCP 流 (v4)
ETCP TCP 流 (v4) (错误)
UDP UDP 流 (v4)
SOCK6 Sockets (套接字) (v6)
IP6 IP 流 (v6)
EIP6 IP 流 (v6) (错误)
ICMP6 ICMP 流 (v6)
EICMP6 ICMP 流 (v6) (错误)
UDP6 UDP 流 (v6)

网络接口信息 sar -n DEV
$ sar -n DEV 1 3
Linux 5.10.0-amd64-desktop (uos-PC)     2022年07月26日  _x86_64_        (16 CPU)11时49分59秒     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s   %ifutil
11时50分00秒        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
11时50分00秒    enp5s0     22.00     14.00      6.22      1.81      0.00      0.00      3.00      0.01
11时50分00秒  macvtap0      4.00      0.00      0.23      0.00      0.00      0.00      4.00      0.0011时50分00秒     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s   %ifutil
11时50分01秒        lo      7.00      7.00      2.18      2.18      0.00      0.00      0.00      0.00
11时50分01秒    enp5s0     15.00     13.00      5.35      4.44      0.00      0.00      2.00      0.00
11时50分01秒  macvtap0      4.00      1.00      0.23      0.06      0.00      0.00      4.00      0.0011时50分01秒     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s   %ifutil
11时50分02秒        lo      2.00      2.00      0.31      0.31      0.00      0.00      0.00      0.00
11时50分02秒    enp5s0      8.00      4.00      0.82      0.53      0.00      0.00      1.00      0.00
11时50分02秒  macvtap0      3.00      1.00      0.18      0.33      0.00      0.00      3.00      0.00平均时间:     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s   %ifutil
平均时间:        lo      3.00      3.00      0.83      0.83      0.00      0.00      0.00      0.00
平均时间:    enp5s0     15.00     10.33      4.13      2.26      0.00      0.00      2.00      0.00
平均时间:  macvtap0      3.67      0.67      0.21      0.13      0.00      0.00      3.67      0.00

IFACE 本地网卡接口的名称

rxpck/s 每秒钟接受的数据包

txpck/s 每秒钟发送的数据库

rxKB/S 每秒钟接受的数据包大小,单位为KB

txKB/S 每秒钟发送的数据包大小,单位为KB

rxcmp/s 每秒钟接受的压缩数据包

txcmp/s 每秒钟发送的压缩包

rxmcst/s 每秒钟接收的多播数据包

网络设备统信失败信息 sar -n EDEV
sar -n EDEV 1 3
Linux 5.10.0-amd64-desktop (uos-PC)     2022年07月26日  _x86_64_        (16 CPU)11时50分53秒     IFACE   rxerr/s   txerr/s    coll/s  rxdrop/s  txdrop/s  txcarr/s  rxfram/s  rxfifo/s  txfifo/s
11时50分54秒        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00                                                                                                            
11时50分54秒    enp5s0      0.00      0.00      0.00      3.00      0.00      0.00      0.00      0.00      0.00                                                                                                            
11时50分54秒  macvtap0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00                                                                                                            11时50分54秒     IFACE   rxerr/s   txerr/s    coll/s  rxdrop/s  txdrop/s  txcarr/s  rxfram/s  rxfifo/s  txfifo/s
11时50分55秒        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00                                                                                                            
11时50分55秒    enp5s0      0.00      0.00      0.00      1.00      0.00      0.00      0.00      0.00      0.00                                                                                                            
11时50分55秒  macvtap0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00                                                                                                            11时50分55秒     IFACE   rxerr/s   txerr/s    coll/s  rxdrop/s  txdrop/s  txcarr/s  rxfram/s  rxfifo/s  txfifo/s
11时50分56秒        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00                                                                                                            
11时50分56秒    enp5s0      0.00      0.00      0.00      1.00      0.00      0.00      0.00      0.00      0.00                                                                                                            
11时50分56秒  macvtap0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00                                                                                                            平均时间:     IFACE   rxerr/s   txerr/s    coll/s  rxdrop/s  txdrop/s  txcarr/s  rxfram/s  rxfifo/s  txfifo/s
平均时间:        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
平均时间:    enp5s0      0.00      0.00      0.00      1.67      0.00      0.00      0.00      0.00      0.00
平均时间:  macvtap0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00

IFACE 网卡名称

rxerr/s 每秒钟接收到的损坏的数据包

txerr/s 每秒钟发送的数据包错误数

coll/s 当发送数据包时候,每秒钟发生的冲撞(collisions)数,这个是在半双工模式下才有

rxdrop/s 当由于缓冲区满的时候,网卡设备接收端每秒钟丢掉的网络包的数目

txdrop/s 当由于缓冲区满的时候,网络设备发送端每秒钟丢掉的网络包的数目

txcarr/s 当发送数据包的时候,每秒钟载波错误发生的次数

rxfram/s 在接收数据包的时候,每秒钟发生的帧对其错误的次数

rxfifo/s 在接收数据包的时候,每秒钟缓冲区溢出的错误发生的次数

txfifo/s 在发生数据包 的时候,每秒钟缓冲区溢出的错误发生的次数

统计socket链接信息 sar -n SOCK
$ sar -n SOCK 1 3
Linux 5.10.0-amd64-desktop (uos-PC)     2022年07月26日  _x86_64_        (16 CPU)11时51分56秒    totsck    tcpsck    udpsck    rawsck   ip-frag    tcp-tw
11时51分57秒      1598        15         3         0         0        13
11时51分58秒      1598        15         3         0         0        13
11时51分59秒      1598        15         3         0         0        13
平均时间:      1598        15         3         0         0        13

totsck 当前被使用的socket总数

tcpsck 当前正在被使用的TCP的socket总数

udpsck 当前正在被使用的UDP的socket总数

rawsck 当前正在被使用于RAW的skcket总数

if-frag 当前的IP分片的数目

tcp-tw TCP套接字中处于TIME-WAIT状态的连接数量

TCP链接的统计 sar -n TCP
$ sar -n TCP 1 3
Linux 5.10.0-amd64-desktop (uos-PC)     2022年07月26日  _x86_64_        (16 CPU)11时52分44秒  active/s passive/s    iseg/s    oseg/s
11时52分45秒      0.00      0.00      0.00      0.00
11时52分46秒      0.00      0.00      0.00      0.00
11时52分47秒      0.00      0.00      3.00      3.00
平均时间:      0.00      0.00      1.00      1.00

active/s 新的主动连接

passive/s 新的被动连接

iseg/s 接受的段

oseg/s 输出的段

使用总结

默认监控: sar 1 1 # CPU和IOWAIT统计状态

  • sar -b 1 1 # IO传送速率

  • sar -B 1 1 # 页交换速率

  • sar -c 1 1 # 进程创建的速率

  • sar -d 1 1 # 块设备的活跃信息

  • sar -n DEV 1 1 # 网路设备的状态信息

  • sar -n SOCK 1 1 # SOCK的使用情况

  • sar -n ALL 1 1 # 所有的网络状态信息

  • sar -P ALL 1 1 # 每颗CPU的使用状态信息和IOWAIT统计状态

  • sar -q 1 1 # 队列的长度(等待运行的进程数)和负载的状态

  • sar -r 1 1 # 内存和swap空间使用情况

  • sar -R 1 1 # 内存的统计信息(内存页的分配和释放、系统每秒作为BUFFER使用内存页、每秒被cache到的内存页)

  • sar -u 1 1 # CPU的使用情况和IOWAIT信息(同默认监控)

  • sar -v 1 1 # inode, file and other kernel tablesd的状态信息

  • sar -w 1 1 # 每秒上下文交换的数目

  • sar -W 1 1 # SWAP交换的统计信息(监控状态同iostat 的si so)

  • sar -x 2906 1 1 # 显示指定进程(2906)的统计信息,信息包括:进程造成的错误、用户级和系统级用户CPU的占用情况、运行在哪颗CPU上

  • sar -y 1 1 # TTY设备的活动状态

  • 将输出到文件(-o)和读取记录信息(-f)

相关文章:

【Linux】sar常用选项介绍

sar 使用 安装sysstat apt-get install sysstat -y #或 yum install sysstat -y选项 用法: sar [ 选项 ] [ <时间间隔> [ <次数> ] ] 选项&#xff1a; [ -A ] [ -B ] [ -b ] [ -C ] [ -D ] [ -d ] [ -F [ MOUNT ] ] [ -H ] [ -h ] [ -p ] [ -q ] [ -r [ ALL ] ]…...

PHP 单笔转账到支付宝账户,支付宝公钥证书实现版本

支付宝某些业务只能使用公钥证书方式来验签 如&#xff1a;即使转账 红包等 笔者就要实现这样一个功能&#xff0c;【单笔转账到支付宝账户】&#xff0c;采用支付宝公钥证书签名来实现。 话不多说&#xff0c;流程先走起 第一步&#xff1a;下载支付宝秘钥生成器 由于我们使…...

第十四届蓝桥杯大赛软件赛省赛 C/C++ 大学 A 组 E 题

颜色平衡树问题描述格式输入格式输出样例输入样例输出评测用例规模与约定解析参考程序问题描述 格式输入 输入的第一行包含一个整数 n &#xff0c;表示树的结点数。 接下来 n 行&#xff0c;每行包含两个整数 Ci , Fi&#xff0c;用一个空格分隔&#xff0c;表示第 i 个结点 …...

Python 小型项目大全 21~25

二十一、DNA 可视化 原文&#xff1a;http://inventwithpython.com/bigbookpython/project21.html 脱氧核糖核酸是一种微小的分子&#xff0c;存在于我们身体的每个细胞中&#xff0c;包含着我们身体如何生长的蓝图。它看起来像一对核苷酸分子的双螺旋结构&#xff1a;鸟嘌呤、…...

MinIO从信息泄漏到RCE

文章目录信息泄露漏洞利用漏洞分析漏洞修复RCE漏洞分析参考文章信息泄露 漏洞利用 如果MinIO以集群方式部署&#xff0c;存在信息泄露漏洞&#xff0c;攻击者可以通过HTTP请求获取目标进程的所有环境变量&#xff0c;包括MINIO_SECRET_KEY和MINIO_ROOT_PASSWORD. vulhub有环…...

202.Spark(九):SparkStreaming案例实操

目录 一、启动zookeeper,kafka基础环境 二、项目导好jar包,并且创建源数据,并在kafka中测试能否消费到数据...

GlusterFS(GFS)分布式文件系统

目录 一.文件系统简介 1.文件系统的组成 2.文件系统的作用 3.文件系统的挂载使用 二.GlusterFS概述 1.GlusterFS是什么&#xff1f; 2.GlusterFS的特点 3.GlusterFS术语介绍 3.1 Brick&#xff08;存储块&#xff09; 3.2 Volume&#xff08;逻辑卷&#xff09; 3.3…...

ChatGPT文本框再次升级,打造出新型操作系统

在ChatGPT到来之前&#xff0c;没有谁能够预见。但是&#xff0c;它最终还是来了&#xff0c;并引起了不小的轰动&#xff0c;甚至有可能颠覆整个行业。 从某种程度上说&#xff0c;ChatGPT可能是历史上增长最快的应用程序&#xff0c;仅在两个多月就拥有了1亿多活跃用户&…...

DPU02国产USB转UART控制芯片替代CP2102

目录DPU02简介DPU02芯片特性应用DPU02简介 DPU02是高度集成的USB转UART的桥接控制芯片&#xff0c;该芯片为RS-232设计更新为USB设计&#xff0c;并简化PCB组件空间提供了一个简单的解决方案。       DPU02包括了一个USB 2.0全速功能控制器、USB收发器、振荡器、EEPROM和带…...

Softing新版HART多路复用器软件支持西门子控制器

用于访问配置和诊断数据的HART多路复用器软件——Softing smartLink SW-HT&#xff0c;现在支持西门子的ET200远程IO和FDT/DTM接口。 smartLink SW-HT是一个基于Docker容器的软件应用。通过该软件&#xff0c;用户可以快速地访问以太网远程IO的HART设备&#xff0c;并且无需额外…...

〖Python网络爬虫实战⑫〗- XPATH语法介绍

订阅&#xff1a;新手可以订阅我的其他专栏。免费阶段订阅量1000python项目实战 Python编程基础教程系列&#xff08;零基础小白搬砖逆袭) 说明&#xff1a;本专栏持续更新中&#xff0c;目前专栏免费订阅&#xff0c;在转为付费专栏前订阅本专栏的&#xff0c;可以免费订阅付费…...

实例方法、类方法、静态方法、实例属性、类属性

背景&#xff1a;今天在复习类相关知识的时候&#xff0c;突然想到这几种类型的方法的区别和用法&#xff0c;感觉有点模棱两可&#xff0c;于是总结一下&#xff0c;加深记忆。 定义&#xff1a;想要区别和理解几种方法&#xff0c;首先要定义一个类&#xff0c;要在类中加深…...

数据结构---二叉树

专栏&#xff1a;数据结构 个人主页&#xff1a;HaiFan. 专栏简介&#xff1a;这里是HaiFan.的数据结构专栏&#xff0c;今天的内容是二叉树。 二叉树树的概念及结构二叉树概念及结构二叉树的概念二叉树的存储结构二叉树的顺序结构及实现大根堆和小根堆堆的实现及其各个接口堆的…...

CMake——从入门到百公里加速6.7s

目录 一、前言 二、HelloWorld 三、CMAKE 界面 3.1 gui正则表达式 3.2 GUI构建 四 关键字 4.1 add_library 4.2 add_subdirectory 4.3 add_executable 4.4 aux_source_directory 4.5 SET设置变量 4.6 INSTALL安装 4.7 ADD_LIBRARY 4.8 SET_TARGET_PROPERTIES 4.9…...

无公网IP,在外公网远程访问RabbitMQ服务「内网穿透」

文章目录前言1.安装erlang 语言2.安装rabbitMQ3. 内网穿透3.1 安装cpolar内网穿透(支持一键自动安装脚本)3.2 创建HTTP隧道4. 公网远程连接5.固定公网TCP地址5.1 保留一个固定的公网TCP端口地址5.2 配置固定公网TCP端口地址前言 RabbitMQ是一个在 AMQP(高级消息队列协议)基础上…...

Node【二】NPM

文章目录&#x1f31f;前言&#x1f31f;NPM使用&#x1f31f;NPM使用场景&#x1f31f;NPM的常用命令&#x1f31f;NPM命令使用介绍&#x1f31f; 使用NPM安装模块&#x1f31f; 下载三方包&#x1f31f; 全局安装VS本地安装&#x1f31f; 本地安装&#x1f31f; 全局安装&…...

【2023最新】超详细图文保姆级教程:App开发新手入门(2)

上章节我们已经成功的创建了一个 App 项目&#xff0c;接下来我们讲述一下&#xff0c;如何导入项目、编辑代码和提交项目代码。 Let’s Go! 4. 项目导入 当用户创建一个新的应用时&#xff0c;YonStudio 开发工具会自动导入模板项目的默认代码&#xff0c;不需要手动进行代…...

sftp使用

Client端使用Server端的账户username&#xff0c;sftp登录Server&#xff0c;除了IP地址&#xff0c;也可以使用/etc/hosts定义的域名&#xff0c;注意&#xff0c;Client的默认路径&#xff1a;Shell中的当前路径&#xff0c;Server的默认路径&#xff1a;server账户家目录 ​…...

FastGithub---------不再为访问github苦恼

声明&#xff1a;只解决github加速神器&#xff0c;解决github打不开、用户头像无法加载、releases无法上传下载、git-clone、git-pull、git-push失败等问题。 github为什么打不开&#xff1f; 其实不用加速的情况下&#xff0c;使用5G是可以打开的&#xff0c;只是资源加载…...

Spring Boot AOP @Pointcut拦截注解的表达式与运算符

项目场景&#xff1a; 这里主要说下Spring Boot AOP中Pointcut拦截类上面的注解与方法上面的注解&#xff0c;怎么写表达式怎么&#xff0c;还有Pointcut中使用运算符。 PointCut 表达式 拦截注解的表达式有3种&#xff1a;annotation、within、target 1、annotation 匹配有…...

在四层代理中还原真实客户端ngx_stream_realip_module

一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡&#xff08;如 HAProxy、AWS NLB、阿里 SLB&#xff09;发起上游连接时&#xff0c;将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后&#xff0c;ngx_stream_realip_module 从中提取原始信息…...

SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现

摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序&#xff0c;以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务&#xff0c;提供稳定高效的数据处理与业务逻辑支持&#xff1b;利用 uniapp 实现跨平台前…...

C++ 求圆面积的程序(Program to find area of a circle)

给定半径r&#xff0c;求圆的面积。圆的面积应精确到小数点后5位。 例子&#xff1a; 输入&#xff1a;r 5 输出&#xff1a;78.53982 解释&#xff1a;由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982&#xff0c;因为我们只保留小数点后 5 位数字。 输…...

是否存在路径(FIFOBB算法)

题目描述 一个具有 n 个顶点e条边的无向图&#xff0c;该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序&#xff0c;确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数&#xff0c;分别表示n 和 e 的值&#xff08;1…...

论文阅读:Matting by Generation

今天介绍一篇关于 matting 抠图的文章&#xff0c;抠图也算是计算机视觉里面非常经典的一个任务了。从早期的经典算法到如今的深度学习算法&#xff0c;已经有很多的工作和这个任务相关。这两年 diffusion 模型很火&#xff0c;大家又开始用 diffusion 模型做各种 CV 任务了&am…...

Python常用模块:time、os、shutil与flask初探

一、Flask初探 & PyCharm终端配置 目的: 快速搭建小型Web服务器以提供数据。 工具: 第三方Web框架 Flask (需 pip install flask 安装)。 安装 Flask: 建议: 使用 PyCharm 内置的 Terminal (模拟命令行) 进行安装,避免频繁切换。 PyCharm Terminal 配置建议: 打开 Py…...

密码学基础——SM4算法

博客主页&#xff1a;christine-rr-CSDN博客 ​​​​专栏主页&#xff1a;密码学 &#x1f4cc; 【今日更新】&#x1f4cc; 对称密码算法——SM4 目录 一、国密SM系列算法概述 二、SM4算法 2.1算法背景 2.2算法特点 2.3 基本部件 2.3.1 S盒 2.3.2 非线性变换 ​编辑…...

【免费数据】2005-2019年我国272个地级市的旅游竞争力多指标数据(33个指标)

旅游业是一个城市的重要产业构成。旅游竞争力是一个城市竞争力的重要构成部分。一个城市的旅游竞争力反映了其在旅游市场竞争中的比较优势。 今日我们分享的是2005-2019年我国272个地级市的旅游竞争力多指标数据&#xff01;该数据集源自2025年4月发表于《地理学报》的论文成果…...

PydanticAI快速入门示例

参考链接&#xff1a;https://ai.pydantic.dev/#why-use-pydanticai 示例代码 from pydantic_ai import Agent from pydantic_ai.models.openai import OpenAIModel from pydantic_ai.providers.openai import OpenAIProvider# 配置使用阿里云通义千问模型 model OpenAIMode…...

StarRocks 全面向量化执行引擎深度解析

StarRocks 全面向量化执行引擎深度解析 StarRocks 的向量化执行引擎是其高性能的核心设计&#xff0c;相比传统行式处理引擎&#xff08;如MySQL&#xff09;&#xff0c;性能可提升 5-10倍。以下是分层拆解&#xff1a; 1. 向量化 vs 传统行式处理 维度行式处理向量化处理数…...