Zabbix 分布式監控系統架構設計與優化

一、概念

1.核心概念

  • Zabbix是一個CS(服務端/客戶端)架構的服務
  • Zabbix-Agent獲取數據-->發送給-->Zabbix-Server服務端--- >數據會被存放在數據庫 <--- Zabbix Web 頁面展示數據

2.部署流程

  • 部署ngx+php環境并測試
  • 部署數據庫 mariadb 10.5及以上 然后進行配置
  • 編譯安裝zabbix-server服務端及后續配置
  • 部署前端代碼代碼進行訪問
  • web訪問
  • 配置客戶端

3.官網資料

Zabbix 文檔

二、部署

1.部署ngx+php環境并測試

  • 配置ngx yum源并安裝

?#配置yum源vim /etc/yum.repos.d/nginx.repo?[nginx-stable]name=nginx stable repobaseurl=http://nginx.org/packages/centos/$releasever/$basearch/gpgcheck=1enabled=1gpgkey=https://nginx.org/keys/nginx_signing.keymodule_hotfixes=true?#安裝nginx-1.22.0-1.el7.ngx.x86_64 版本yum -y install nginx-1.22.0-1.el7.ngx.x86_64
  • 配置php并安裝

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repoyum -y install epel-releasecurl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo#webtatic源,一個web服務的源#安裝php7及其它依賴軟件rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm ?rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm ? ?yum install php72w-cli php72w-fpm php72w-gd php72w-mbstring php72w-bcmath php72w-xml php72w-ldap php72w-mysqlnd -y?rpm -qa |egrep 'nginx|php'
  • nginx配置

[root@m03-zbx ~]# vim /etc/nginx/conf.d/zbx.liux.cn.conf?server {listen 80;server_name zbx.liux.cn;root /app/code/zbx;location / {index index.php;}location ~ \.php$ {fastcgi_pass ?127.0.0.1:9000;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;include fastcgi_params;}}??nginx -tsystemctl enable nginxsystemctl start nginx
  • php配置

?#修改用戶名sed -ri '/^(user|group)/s#apache#nginx#g' /etc/php-fpm.d/www.conf egrep '^(user|group)' /etc/php-fpm.d/www.conf
  • 創建目錄并測試

 mkdir -p /app/code/zbxcd /app/code/zbx?[root@m03-zbx zbx]# vim info.php?<?phpphpinfo();?>?#啟動systemctl enable nginx php-fpmsystemctl start nginx php-fpm?#hosts解析10.0.0.63 zbx.liux.cn

2.部署數據庫

  • zabbix 6.0 不支持 mariadb 5.5(默認源中的mariadb)安裝mariadb 10.5
  • 配置maraidb yum源并安裝
vim  /etc/yum.repos.d/mariadb.repo[mariadb]
name = MariaDB
baseurl = https://mirrors.aliyun.com/mariadb/yum/10.5/centos7-amd64/
gpgkey = https://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck = 1
enable = 1#安裝
yum -y install  mariadb-server
[root@m03-zbx zbx]# rpm -qa |grep -i mariadb
MariaDB-common-10.5.19-1.el7.centos.x86_64
MariaDB-server-10.5.19-1.el7.centos.x86_64
MariaDB-compat-10.5.19-1.el7.centos.x86_64
MariaDB-client-10.5.19-1.el7.centos.x86_64
  • 啟動
systemctl enable mariadb
systemctl start mariadb
  • 初始化數據庫

?[root@Zabbix web]# mysql_secure_installationEnter current password for root (enter for none): ? #回車Switch to unix_socket authentication [Y/n] n ? ? ? #是否更改套接字Change the root password? [Y/n] y ? ? ? #改root密碼Remove anonymous users? [Y/n] y ? ? ?#清除匿名用戶Disallow root login remotely? [Y/n] y ? #是否允許root遠程登錄Remove test database and access to it? [Y/n] y ? ?#清除測試數據庫Reload privilege tables now? [Y/n] y ? ?#刷新表權限
  • 創建庫和用戶

?#1. 創建數據庫要指定字符集create database zabbix charset utf8 collate utf8_bin;?#2.創建zabbix用戶grant all on zabbix.* to 'zabbix'@'localhost' identified by 'zabbix' ;#如果數據庫與zbx,php不在一起#grant all on zabbix.* to 'zabbix'@'172.16.1.%' identified  by 'zabbix' ;
  • 向數據庫中導入數據 表,數據 ? 注意導入的順序

?tar xf zabbix-6.0.9.tar.gz cd zabbix-6.0.9/database/mysql/?mysql -uroot -p12366 zabbix <schema.sql mysql -uroot -p12366 zabbix <images.sql mysql -uroot -p12366 zabbix <data.sql mysql -uroot -p12366 zabbix <double.sql mysql -uroot -p12366 zabbix <history_pk_prepare.sql ??mysql -uroot -p12366 -e 'show tables from zabbix;' |wc -l

3. 編譯安裝zabbix-server服務端

  • 準備編譯安裝zabbix-server

?#安裝依賴yum install -y mysql-devel pcre-devel openssl-devel zlib-devel libxml2-devel net-snmp-devel net-snmp libssh2-devel OpenIPMI-devel libevent-devel openldap-devel ? libcurl-devel?#進行配置 在源代碼目錄并且ls 可以看見configure文件#--sysconfdir 指定配置文件目錄#--enable-server 服務端?./configure --sysconfdir=/etc/zabbix/ --enable-server --with-mysql \--with-net-snmp --with-libxml2 --with-ssh2 --with-openipmi --with-zlib --with-libpthread \--with-libevent --with-openssl --with-ldap --with-libcurl --with-libpcre?#根據提示執行make install make install?# 檢查是否成功echo $?
  • 修改zbx服務端配置文件

vim /etc/zabbix/zabbix_server.confgrep -n '^[a-Z]' /etc/zabbix/zabbix_server.confListenPort=10051LogFile=/tmp/zabbix_server.logDBHost=localhostDBName=zabbixDBUser=zabbixDBPassword=zabbixTimeout=4LogSlowQueries=3000StatsAllowedIP=127.0.0.1
  • 啟動zabbix服務端

?#添加個虛擬用戶useradd -s /sbin/nologin -M zabbix?#啟動zbx服務端zabbix_server#檢查端口ss -lntup|grep 10051#檢查進程ps -ef |grep zabbix
  • 書寫systemctl 啟動配置文件

vim /usr/lib/systemd/system/zabbix-server.service?[Unit]Description=Zabbix Server with MySQL DBAfter=syslog.target network.target?[Service]Type=simpleExecStart=/usr/local/sbin/zabbix_server -fUser=zabbix?[Install]WantedBy=multi-user.target?# 加載配置文件systemctl daemon-reload?#關閉手動啟動的zbx serverpkill zabbix_server?# 檢查是否關閉成功ps -ef |grep zabbix?#啟動與檢查systemctl enable zabbix-serversystemctl start zabbix-serversystemctl status zabbix-server

4.部署前端代碼進行訪問

#ui/*  安裝包zabbix-6.0.9里面
cp -r ui/* /app/code/zbx
chown -R nginx.nginx /app/code/zbx

5.web訪問

10.0.0.63 zbx.liux.cnhttp://zbx.liux.cn/
  • 選擇簡體中文 下一步

  • 解決報錯

vim  /etc/php.ini
max_execution_time = 300
max_input_time = 300
post_max_size = 16M#重啟php,刷新頁面,進入下一步
systemctl restart php-fpm.service
  • 輸入php連接數據庫的信息,進行下一步

  • 輸入網站名稱和選擇時區(上海),下一步,繼續下一步

  • 輸入用戶名和密碼,進入zbx Admin / zabbix

6.安裝zbx客戶端

yum -y install https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/6.0/rhel/7/x86_64/zabbix-agent2-6.0.9-release1.el7.x86_64.rpm#配置客戶端(服務端和客戶端在同一臺服務器時不需要配置)
vim /etc/zabbix/zabbix_agent2.conf 
Server=172.16.1.63
#啟動
systemctl enable zabbix-agent2.service
systemctl start zabbix-agent2.service
  • web頁面配置

7 解決zbx中文亂碼的問題

  • 上傳一個中文的ttf字體替換zabbix自用的字體

cd /app/code/zbx/assets/fonts
rm -rf DejaVuSans.ttf
mv STKAITI.TTF DejaVuSans.ttf

三、自定義監控

1.自定義監控-客戶端

  • linux:通過命令、腳本取出對應的值

  • linux:根據zbx要求按照格式,書寫配置文件,創建鍵值

  • linux:重啟客戶端,客戶端測試鍵值是否可用 zabbix_agent2 -t

判斷nginx是否存活
#1.客戶端寫命令
ss -lntup |grep -wc 80#2.創建鍵值、重啟
UserParameter=key,cmd
UserParameter=固定寫法,表示要自定義鍵值
key表示鍵值名字,命名最好就是 單詞+"." (點)
cmd表示命令或腳本vim /etc/zabbix/zabbix_agent2.d/web.conf
UserParameter=web.ngx.80,ss -lntup |grep -wc 80#3.重啟
systemctl restart zabbix-agent2.service#4.客戶端本地測試
zabbix_agent2  -t web.ngx.80

    2.自定義監控-服務端

    • linux:服務端測試鍵值是否可用 zabbix_get

    • web頁面:鍵值與監控項關聯

    • web頁面: 測試

    • web頁面:添加圖形

    • web頁面:添加觸發器(報警)

    rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/6.0/rhel/7/x86_64/zabbix-get-6.0.9-release1.el7.x86_64.rpm#手動測試
    #zabbix_get 向客戶端要指定鍵值的數據  -s客戶端ip地址  -p客戶端端口號(默認10050) -k指定鍵值
    zabbix_get -s 172.16.1.7 -p 10050 -k web.ngx.80#web頁面創建監控項、觸發器

    3.自定義監控-帶參數案例

    • 客戶端配置

    #實現取出指定用戶的登錄的ip地址
    lastlog |grep root |awk '{print $3}'#書寫鍵值key
    vim /etc/zabbix/zabbix_agent2.d/login.conf
    UserParameter=user.login.check[*],lastlog |grep "$1“ |awk '{print $$3}'systemctl restart zabbix-agent2.service 
    zabbix_agent2 -t user.login.check[root]#如果使用自定義鍵值傳參,awk取列的時候要使用$$列
    • 服務端配置

    [root@m03-zbx ~]# zabbix_get -s 172.16.1.7 -k user.login.check[root]
    10.0.0.1
    • 服務端配置監控項和觸發器 web頁面觸發器做對比

    四、常用鍵值與觸發器函數

    zbx客戶端鍵值:1 平臺支持的監控項 (zabbix.com)

    1.常用鍵值

    鍵值說明
    agent.hostname主機名 獲取的是客戶端配置文件中指定的主機名
    system.hostname主機名 系統的主機名 類似于hostname
    agent.ping服務端與客戶端是否通暢 通1 不通非1
    net.if.in[if,]網絡接口上傳(進入)流量統計。返回 整數 if表示網卡名字 可以忽略
    net.if.out[if,]流出流量統計。返回整數
    proc.num[,,,,]進程數。返回整數 name進程名字 user用戶 state進程狀態 cmdline進程對應的命令
    net.tcp.port[,port]檢查是否能建立 TCP 連接到指定端口 返回 0 - 不能連接;1 - 可以連接
    #過濾僵尸進程數量   state 寫為 zomb
    zabbix_get -s 172.16.1.7 -p 10050 -k proc.num[,,zomb]zabbix_get -s 172.16.1.7 -k net.if.in[eth0,]
    zabbix_get -s 172.16.1.7 -k proc.num[nginx]
    zabbix_get -s 172.16.1.7 -k net.tcp.port[,80]

    2.觸發器函數

    • 寫在觸發器表達式中.用于設置報警條件.

    • 觸發器函數要結合鍵值(監控項)

    函數說明
    last()最近值 (最新的值),取出最近一些值
    nodata()是否有數據
    diff()是否發生變化 一般配合md5check()
    avg()平均值
    min()最小值
    max()最大值
    • 分析案例: 目的是用來檢查/etc/passwd的變化情況,間接檢查是否有用戶增加或刪除(/etc/passwd has been changed)

    #倒數第1個 /etc/passwd 的md5值
    last(/web01/vfs.file.cksum[/etc/passwd,sha256],#1)
    <>
    #倒數第2個 /etc/passwd 的md5值
    last(/web01/vfs.file.cksum[/etc/passwd,sha256],#2)#兩個不相等,則報警
    • 書寫觸發器案例 swap

      • 條件1:swap總大小大于0

      • 條件2:swap當前使用的大小大于0(沒有直接可以使用的監控項,這里調整為當前swap空閑率小于100)

    #條件swap總大小大于0
    last(/web01/system.swap.size[,total])>0 
    and
    #swap空間空閑率小于100
    last(/web01/system.swap.size[,pfree])<100

    五、zabbix自動發現與自動注冊

    1.自動發現

    ? ? 服務端主動去找是否有新的主機,有則添加進來并關聯模板

    • 客戶端(zbx agent),配置文件

    • web配置自動發現規則. web頁面-->配置-->自動發現

    • web配置自動發現的動作 . web頁面-->配置-->動作-->Discovery actions

      • 添加主機

      • 添加到主機群組: Linux servers

      • 鏈接到模板: Linux by Zabbix agent

      • 鏈接到模板: all_sys_common

      • 啟用主機

    2.自動注冊

    客戶端主動去找服務端提交自己的信息,請求向服務端注冊

    • 關閉自動發現規則、動作

    • zbx客戶端配置文件

    • web頁面添加動作 web頁面-->配置-->動作-->Autoregistration actions

    2.1?zbx客戶端修改配置文件
    • 客戶端主動把自己的信息,提供給服務端

    客戶端配置說明
    Server=172.16.1.63服務端地址
    ServerActive=172.16.1.63主動模式下的服務端ip地址
    #Hostname=web01當前主機名,這個可以注釋掉或使用ansible配置。建議注釋使用下面的內容,自動獲取主機名
    HostnameItem=system.hostname通過后面指定的鍵值獲取主機名 ? Hostname和HostnameItem2選1 Item監控項、鍵值
    HostMetadataItem=system.uname主機的 元數據 鍵值,類似于自動發現中的system.uname判斷存活和獲取主機信息
    [root@web01 ~]# egrep '^[z-Z]' /etc/zabbix/zabbix_agent2.conf 
    PidFile=/run/zabbix/zabbix_agent2.pid
    LogFile=/var/log/zabbix/zabbix_agent2.log
    LogFileSize=0
    Server=172.16.1.63
    ServerActive=172.16.1.63
    HostnameItem=system.hostname
    HostMetadataItem=system.uname
    Include=/etc/zabbix/zabbix_agent2.d/*.conf	
    ControlSocket=/tmp/agent.sock
    Include=./zabbix_agent2.d/plugins.d/*.conf#主要修改下面四個
    Server=172.16.1.63
    ServerActive=172.16.1.63
    HostnameItem=system.hostname
    HostMetadataItem=system.uname
    2.2?zbx服務端頁面添加動作-->自動注冊

    六、監控告警

    ? ? ? 可以通過個人郵件、企業微信、OA系統告警通知,以下介紹個人郵件告警

    1.設置流程

    • 開啟個人郵箱 smtp功能 獲取授權碼

    • 發件人配置:zabbix web頁面 管理-->報警媒介類型

    • 收件人配置:zabbix web頁面 user settings-->profile-->報警媒介

    • 發件條件: zabbix web頁面 配置-->動作-->trigger actions

    2.設置告警模板

    #163郵箱授權碼
    POCENDSPAHJISVPRsmtp.163.com#添加告警郵件內容: Messages template
    #故障告警信息
    主題: ? 故障名稱: {EVENT.NAME}消息: 
    故障始于 時間: {EVENT.TIME} 日期: {EVENT.DATE}
    故障名稱: {EVENT.NAME}
    故障主機: {HOST.NAME}
    嚴重程度: {EVENT.SEVERITY}
    額外信息: {EVENT.OPDATA}
    故障ID: {EVENT.ID}
    觸發器地址: {TRIGGER.URL}#信息類型是: Problem recov 故障解決的時候
    主題: 故障解決 in {EVENT.DURATION}: {EVENT.NAME}
    消息: 
    故障已經解決 時間: {EVENT.RECOVERY.TIME} 日期: 
    {EVENT.RECOVERY.DATE}
    故障名稱: {EVENT.NAME}
    故障持續時間: {EVENT.DURATION}
    故障主機: {HOST.NAME}
    故障級別: {EVENT.SEVERITY}
    故障ID: {EVENT.ID}
    {TRIGGER.URL}

    3.頁面配置告警

    4.告警案例

    ? ?檢查用戶是否從堡壘機登錄

    #檢查腳本
    vim /server/scripts/check_baolei_login.sh########################################################
    # File Name:/server/scripts/check_baolei_login.sh
    # Version:V1.0
    # Author:liux
    # Desc:檢查是否從堡壘機登錄
    ########################################################ip=$1login_user_cnt=`who |wc -l`
    login_no_baolei_cnt=`who |grep -wv 10.0.0.1|wc -l`#如果登錄用戶數不為0 并且 登錄的ip不是堡壘機的ip
    if [ $login_user_cnt -gt 0 -a $login_no_baolei_cnt -gt 0 ];thenecho 0
    elseecho 1
    fi#監控腳本
    vim /etc/zabbix/zabbix_agent2.d/login.confUserParameter=user.login.check[*],lastlog |grep '$1' |awk '{print $$3}'
    UserParameter=user.check.bl.login[*],sh /server/scripts/check_baolei_login.sh "$1"#重啟zabbix
    systemctl restart zabbix-agent2.service
    #客戶端測試
    zabbix_agent2 -t user.check.bl.login[10.0.0.1]
    #服務端測試
    zabbix_get -s 172.16.1.7 -k user.check.bl.login[10.0.0.1]
    • 頁面配置監控項、觸發器

    七、zbx性能優化

    • 高并發需要對MySQL進行拆分

    • zabbix-agent被動上傳修改為主動上報模式

    • 地區較多情況盡量使用proxy代理模式

    • 系統自帶監控項優化:精簡無用的監控項,適當增加取值間隔,減少數據的保留周期

    • 進程優化(服務端)

    • 緩存優化(服務端)

    ????

    本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
    如若轉載,請注明出處:http://www.pswp.cn/pingmian/89245.shtml
    繁體地址,請注明出處:http://hk.pswp.cn/pingmian/89245.shtml
    英文地址,請注明出處:http://en.pswp.cn/pingmian/89245.shtml

    如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

    相關文章

    QT——文件選擇對話框 QFileDialog

    QFileDialog概述QFileDialog是Qt框架中提供的文件對話框類&#xff0c;用于讓用戶選擇文件或目錄。它提供了標準的文件選擇界面&#xff0c;支持文件打開、保存、多選等常見操作。基本使用方式QFileDialog提供了兩種使用方式&#xff1a;靜態方法&#xff1a;直接調用類方法快速…

    Flask+LayUI開發手記(十一):選項集合的數據庫擴展類

    條目較少的選項集合&#xff0c;確實可以在程序中直接定義&#xff08;其實最合適的還是存儲在一個分類別的數據庫表里&#xff09;&#xff0c;但條目較多的選項集合&#xff0c;或者是復雜的樹型結構選項集合&#xff0c;一般都是存儲在數據庫中的&#xff0c;這樣維護起來比…

    AI學習筆記三十二:YOLOv8-CPP-Inference測試(Linux版本)

    若該文為原創文章&#xff0c;轉載請注明原文出處。主要介紹如何在Linux系統上安裝和部署基于YOLOv8的C推理項目一、服務器準備使用AutoDL平臺租用服務器AutoDL有git加速&#xff0c;可以自行啟用二、環境配件1、檢查Opencv版本pkg-config --modversion opencv4如果版本為4.5&a…

    113:路徑總和 II

    題目&#xff1a;給你二叉樹的根節點 root 和一個整數目標和 targetSum &#xff0c;找出所有 從根節點到葉子節點 路徑總和等于給定目標和的路徑。葉子節點 是指沒有子節點的節點。解答&#xff1a;用 go主要坑有兩個&#xff0c;一個是二維結果切片傳遞用指針&#xff0c;一個…

    Perl 數組

    Perl 數組 在Perl編程語言中&#xff0c;數組是處理數據的一種強大工具。數組允許我們將多個值存儲在單個變量中&#xff0c;從而簡化了代碼并提高了效率。本文將詳細介紹Perl數組的創建、操作、遍歷以及一些高級用法。 數組的創建 在Perl中&#xff0c;創建一個數組非常簡單。…

    優先隊列的實現

    目錄 引言 堆的基本概念與特性 堆的插入與向上調整 堆的刪除與向下調整 優先隊列的設計思路 模板參數設計 比較器的作用 核心接口實現 push pop top 附錄(完整代碼) 引言 優先隊列&#xff08;Priority Queue&#xff09;是一種特殊的隊列數據結構&#xff0c;其中每…

    現代CSS實戰:用變量與嵌套重構可維護的前端樣式

    現代CSS實戰&#xff1a;用變量與嵌套重構可維護的前端樣式 引言 在傳統CSS開發中&#xff0c;我們常常陷入「樣式冗余」與「維護噩夢」的循環&#xff1a; 想調整主題色&#xff1f;得全局搜索所有 #3498db 手動替換&#xff0c;稍有不慎就漏改某個角落&#xff1b; 寫嵌套…

    DHTMLX Suite 9.2 重磅發布:支持歷史記錄、類Excel交互、剪貼板、拖放增強等多項升級

    全球知名的 JavaScript UI 組件庫 DHTMLX Suite 迎來 9.2 新版本&#xff01;此次更新雖為次版本號&#xff0c;卻實質性提升了 Grid 網格組件的交互能力與用戶體驗&#xff0c;引入了包括歷史記錄管理、剪貼板操作、數據選擇范圍管理、Block 區塊選擇等多項高級模塊&#xff0…

    深入理解Java中的Map.Entry接口

    文章目錄深入理解Java中的Map.Entry接口1. 接口定義2. 核心方法解析2.1 基本方法2.2 Java 8新增的靜態方法3. 基本使用示例3.1 遍歷Map的條目3.2 修改Map中的值3.3 使用比較器排序4. Java 8/9增強特性4.1 與Stream API結合4.2 Java 9的equals和hashCode默認方法5. 實際應用場景…

    AI培訓學習2

    不要打擾用戶的習慣&#xff0c;比如APP右下角的我的&#xff0c;放到第一個就不合適 先抄再超 lifeTime value NPS: 評價 Product market 平衡 ARPU&#xff1a; LT活躍時長 游戲中好友的重要性 不花錢存活率很少 如何花錢&#xff0c;1分錢買東西 聯影醫療 figma uizard…

    npm 安裝時候怎么指定某一個子包的版本 overrides

    有時候用 npm install 安裝的時候會報錯&#xff0c;比如 express 包依賴 "escape-html": "^1.0.2" 版本的包&#xff0c;但是因為 escape-html" 升級到 1.0.3 版本了&#xff0c;但是這個版本有問題&#xff0c;導致express 下載不下來。怎么固定下載…

    python學智能算法(十九)|SVM基礎概念-超平面

    引言 前序學習進程中&#xff0c;對向量相關的基本知識進行了學習&#xff0c;鏈接為&#xff1a; 向量的值和方向 向量點積 在實際的支持向量機算法使用中&#xff0c;最核心的目標是找出可以實現分類的超平面&#xff0c;超平面就是分割的點、線或者面&#xff0c;不要在這個…

    python 基于 httpx 的流式請求

    文章目錄1. 環境介紹2. 同步客戶端2.1. 面向過程2.1.1. 流式輸出2.1.2. 非流式輸出2.2. 面向對象3. 異步客戶端3.1. 面向過程3.2. 面向對象3.3. Attempted to call a sync iterator on an async stream.參考&#xff1a;https://www.jb51.net/article/262636.htm次要參考&#…

    Python 數據建模與分析項目實戰預備 Day 4 - EDA(探索性數據分析)與可視化

    ? 今日目標 使用 Pandas Matplotlib/Seaborn 對簡歷數據進行探索性分析分析不同字段與目標變量的相關性通過可視化呈現簡歷篩選的潛在規律&#x1f9fe; 一、建議分析內容 &#x1f539; 分類字段分析字段圖表建議說明degree柱狀圖&#xff08;分組通過率&#xff09;分析學歷…

    力扣每日一題--2025.7.17

    &#x1f4da; 力扣每日一題–2025.7.17 &#x1f4da; 3202. 找出有效子序列的最大長度 II&#xff08;中等&#xff09; 今天我們要解決的是力扣上的第 3202 題——找出有效子序列的最大長度 II。這道題是昨天 3201 題的擴展&#xff0c;需要我們處理更一般化的情況。 ??…

    github不能訪問怎么辦

    訪問&#xff1a;“github.com”國內多個地點網站測速結果_網站測速 - 站長工具訪問“github.global.ssl.fastly.net”國內多個地點網站測速結果_網站測速 - 站長工具復制紅框中的ip 打開“C:\Windows\System32\drivers\etc\hosts”文件輸入&#xff1a; 20.205.243.166 githu…

    【深度學習新浪潮】AI在finTech領域有哪些值得關注的進展?

    近年來,AI在金融科技(FinTech)領域的應用呈現爆發式增長,尤其在大模型技術突破和政策支持的雙重驅動下,多個關鍵領域取得了顯著進展。以下是值得關注的核心方向及具體案例: 一、大模型技術重塑金融服務范式 以DeepSeek為代表的國產大模型通過開源和低成本部署(本地化成…

    【中等】題解力扣22:括號生成

    題目詳情 數字 n 代表生成括號的對數&#xff0c;設計一個函數生成所有可能的并且有效的括號組合。 示例 1&#xff1a; 輸入&#xff1a;n 3 輸出&#xff1a;[“((()))”,“(()())”,“(())()”,“()(())”,“()()()”] 示例 2&#xff1a; 輸入&#xff1a;n 1 輸出&#…

    【JEECG 組件擴展】JSwitch開關組件擴展單個多選框樣式

    功能說明&#xff1a;基于JeecgBoot開源框架&#xff0c;JSwitch開關組件擴展&#xff0c;支持單個多選樣式。效果展示&#xff1a;使用示例&#xff1a;{field: JSwitch,component: JSwitch,label: JSwitch,},{field: JSwitchCheckBox,component: JSwitch,label: JSwitchCheck…

    (轉)Kubernetes基礎介紹

    Kubernetes是用于自動部署、擴展和管理容器化應用程序的開源系統。