LVS負(fù)載均衡集群指南
一、什么是集群集群Cluster 是指將多臺(tái)獨(dú)立的計(jì)算機(jī)服務(wù)器通過(guò)高速網(wǎng)絡(luò)連接起來(lái)協(xié)同完成特定任務(wù)的計(jì)算系統(tǒng)。從外部看整個(gè)集群就像一臺(tái)性能超強(qiáng)的超級(jí)計(jì)算機(jī)。為什么需要集群高可用性HA單點(diǎn)故障時(shí)自動(dòng)切換保證服務(wù)7×24小時(shí)在線高性能HP將請(qǐng)求分散到多臺(tái)服務(wù)器提升整體處理能力高可擴(kuò)展性HS通過(guò)增加節(jié)點(diǎn)即可線性擴(kuò)展性能二、集群分類(lèi)根據(jù)功能和目標(biāo)集群主要分為三大類(lèi)類(lèi)型英文縮寫(xiě)核心目標(biāo)典型產(chǎn)品負(fù)載均衡集群LBLoad Balancing將請(qǐng)求流量分發(fā)到多個(gè)后端服務(wù)器LVS、Nginx、HAProxy高可用集群HAHigh Availability保證服務(wù)持續(xù)在線故障自動(dòng)切換Keepalived、Heartbeat高性能集群HPHigh Performance并行計(jì)算解決大規(guī)??茖W(xué)計(jì)算問(wèn)題Hadoop、MPI關(guān)系圖解三、LVS的作用LVSLinux Virtual Server是Linux內(nèi)核自帶的四層負(fù)載均衡軟件由章文嵩博士開(kāi)發(fā)現(xiàn)已成為L(zhǎng)inux內(nèi)核標(biāo)準(zhǔn)組件。核心作用請(qǐng)求分發(fā)將用戶(hù)請(qǐng)求按規(guī)則分發(fā)到后端真實(shí)服務(wù)器RealServer服務(wù)隱藏后端服務(wù)器的真實(shí)IP對(duì)內(nèi)網(wǎng)可見(jiàn)對(duì)外只暴露VIP虛擬IP水平擴(kuò)展通過(guò)增加后端服務(wù)器提升服務(wù)能力高可用性配合Keepalived實(shí)現(xiàn)故障自動(dòng)切換LVS vs Nginx七層負(fù)載對(duì)比項(xiàng)LVS四層Nginx七層工作層級(jí)傳輸層TCP/UDP應(yīng)用層HTTP/HTTPS處理速度極快內(nèi)核態(tài)較快用戶(hù)態(tài)協(xié)議支持所有TCP/UDP協(xié)議僅HTTP/HTTPS等配置復(fù)雜度相對(duì)簡(jiǎn)單靈活但復(fù)雜典型場(chǎng)景大流量入口、數(shù)據(jù)庫(kù)負(fù)載Web應(yīng)用、API網(wǎng)關(guān)四、LVS的4種模式及原理圖解LVS通過(guò)修改數(shù)據(jù)包來(lái)實(shí)現(xiàn)流量轉(zhuǎn)發(fā)主要有4種工作模式1. NAT模式網(wǎng)絡(luò)地址轉(zhuǎn)換原理請(qǐng)求包到達(dá)LVS后將目標(biāo)IPVIP改為RealServer的IPDNATRS處理請(qǐng)求后將響應(yīng)包發(fā)回LVSLVS再將源IP改為VIP后返回客戶(hù)端SNAT特點(diǎn)優(yōu)支持端口映射RS可以使用任何操作系統(tǒng)缺進(jìn)出流量都經(jīng)過(guò)LVS成為瓶頸性能最低需修改IP和端口2. DR模式直接路由-最常用原理LVS和RS必須在同一物理網(wǎng)段二層可達(dá)RS的lo接口配置VIP非ARP響應(yīng)LVS僅修改請(qǐng)求包的目標(biāo)MAC地址IP和端口不變RS直接響應(yīng)客戶(hù)端不經(jīng)過(guò)LVS特點(diǎn)優(yōu)性能最高響應(yīng)不走LVS可處理大規(guī)模流量缺LVS和RS必須在同一VLANRS需要配置VIP和抑制ARPRS配置示例# 在RS上配置VIP到lo ifconfig lo:0 172.25.254.100 netmask 255.255.255.255 up # 抑制ARP響應(yīng) echo 1 /proc/sys/net/ipv4/conf/lo/arp_ignore echo 2 /proc/sys/net/ipv4/conf/lo/arp_announce3. TUN模式隧道原理LVS將原始請(qǐng)求包封裝在IPIP隧道中發(fā)送給RSRS解封裝后處理請(qǐng)求直接響應(yīng)客戶(hù)端RS需要配置tunl接口和VIP特點(diǎn)優(yōu)支持跨網(wǎng)段部署響應(yīng)流量不經(jīng)過(guò)LVS缺有隧道封裝開(kāi)銷(xiāo)RS需要支持IPIP隧道4. FULLNAT模式全網(wǎng)絡(luò)地址轉(zhuǎn)換— 阿里開(kāi)源原理同時(shí)修改源IP和目標(biāo)IPLVS和RS可以跨網(wǎng)段部署RS默認(rèn)網(wǎng)關(guān)指向LVS的內(nèi)網(wǎng)IP特點(diǎn)優(yōu)LVS和RS可跨網(wǎng)段解決了DR模式的網(wǎng)絡(luò)限制缺進(jìn)出流量都經(jīng)過(guò)LVS性能折中五、LVS的13種調(diào)度算法LVS內(nèi)核支持豐富的調(diào)度算法可分為靜態(tài)算法和動(dòng)態(tài)算法兩類(lèi)。靜態(tài)算法不檢查RS負(fù)載狀態(tài)算法縮寫(xiě)原理適用場(chǎng)景輪詢(xún)r(jià)r按順序輪流分配RS性能一致時(shí)加權(quán)輪詢(xún)wrr按權(quán)重比例分配RS性能有差異時(shí)目標(biāo)地址散列dh同一目標(biāo)IP固定到同一RS緩存服務(wù)器源地址散列sh同一源IP固定到同一RS需要會(huì)話保持動(dòng)態(tài)算法檢查RS負(fù)載狀態(tài)算法縮寫(xiě)原理適用場(chǎng)景最小連接lc分配給連接數(shù)最少的RS長(zhǎng)連接服務(wù)加權(quán)最小連接wlc按權(quán)重比例優(yōu)先給連接數(shù)少的通用推薦最短期望延遲sed特殊wlc算法除以權(quán)重高性能場(chǎng)景永不排隊(duì)nqsed優(yōu)化版無(wú)空閑時(shí)不排隊(duì)防止空閑RS等待局部最小連接lblc同一目標(biāo)IP到同一RS的lc帶緩存的Web帶復(fù)制的局部最小連接lblcr先找目標(biāo)IP找不到再用lc大規(guī)模緩存目標(biāo)地址散列dh目標(biāo)IP哈希防火墻集群源地址散列sh源IP哈希會(huì)話保持最少隊(duì)列調(diào)度seq等待隊(duì)列最短的優(yōu)先算法選擇建議# 最常用組合 # 短連接HTTPwlc 或 rr ipvsadm -A -t VIP:80 -s wlc # 長(zhǎng)連接數(shù)據(jù)庫(kù)lc ipvsadm -A -t VIP:3306 -s lc # 有緩存場(chǎng)景sh源地址哈希 ipvsadm -A -t VIP:80 -s sh六、LVS多端口輪詢(xún)問(wèn)題解決方案問(wèn)題描述當(dāng)后端服務(wù)有多個(gè)端口如HTTP的80和HTTPS的443我們需要將兩種流量都負(fù)載均衡但LVS的傳統(tǒng)做法是每個(gè)端口單獨(dú)配置# 80端口 ipvsadm -A -t VIP:80 -s rr ipvsadm -a -t VIP:80 -r RS1:80 -m ipvsadm -a -t VIP:80 -r RS2:80 -m # 443端口 ipvsadm -A -t VIP:443 -s rr ipvsadm -a -t VIP:443 -r RS1:443 -m ipvsadm -a -t VIP:443 -r RS2:443 -m缺端口越多配置越繁瑣且無(wú)法實(shí)現(xiàn)一組RS同時(shí)支持多個(gè)端口的策略統(tǒng)一。解決方案一防火墻標(biāo)記FWM利用iptables給多個(gè)端口打上相同的防火墻標(biāo)記LVS基于標(biāo)記進(jìn)行調(diào)度# 1. 用iptables給80和443端口打標(biāo)記66 iptables -t mangle -A PREROUTING -d VIP -p tcp --dport 80 -j MARK --set-mark 66 iptables -t mangle -A PREROUTING -d VIP -p tcp --dport 443 -j MARK --set-mark 66 # 2. LVS使用-f指定防火墻標(biāo)記而非端口 ipvsadm -A -f 66 -s rr # 3. 添加RS使用實(shí)際端口 ipvsadm -a -f 66 -r RS1:80 -m ipvsadm -a -f 66 -r RS2:80 -m # 443同理 ipvsadm -a -f 66 -r RS1:443 -m ipvsadm -a -f 66 -r RS2:443 -m優(yōu)多個(gè)端口共享同一組調(diào)度策略和會(huì)話保持。解決方案二配置文件中統(tǒng)一管理# /etc/sysconfig/ipvsadm 配置示例 -A -f 66 -s wlc -a -f 66 -r 192.168.0.10:80 -m -w 2 -a -f 66 -r 192.168.0.10:443 -m -w 2 -a -f 66 -r 192.168.0.20:80 -m -w 1 -a -f 66 -r 192.168.0.20:443 -m -w 1七、LVS會(huì)話粘滯解決方案問(wèn)題描述會(huì)話粘滯Session Sticky用戶(hù)登錄后后續(xù)請(qǐng)求必須轉(zhuǎn)發(fā)到同一臺(tái)RS否則會(huì)出現(xiàn)未登錄或購(gòu)物車(chē)丟失等問(wèn)題。LVS默認(rèn)的輪詢(xún)算法會(huì)導(dǎo)致同一用戶(hù)的請(qǐng)求被分發(fā)到不同RS造成會(huì)話失效。解決方案方案一源地址哈希sh算法 — 簡(jiǎn)單有效# 使用源地址哈希同一源IP始終到同一RS ipvsadm -A -t VIP:80 -s sh ipvsadm -a -t VIP:80 -r RS1 -m ipvsadm -a -t VIP:80 -r RS2 -m優(yōu)點(diǎn)配置簡(jiǎn)單無(wú)額外開(kāi)銷(xiāo)缺點(diǎn)若RS宕機(jī)該IP的所有用戶(hù)都會(huì)受影響無(wú)法解決NAT網(wǎng)絡(luò)下多用戶(hù)共享IP的問(wèn)題方案二持久連接-p參數(shù)# 指定持久超時(shí)時(shí)間單位秒 ipvsadm -A -t VIP:80 -s rr -p 300 ipvsadm -a -t VIP:80 -r RS1 -m ipvsadm -a -t VIP:80 -r RS2 -m原理LVS在內(nèi)存中維護(hù)一個(gè)連接跟蹤表記錄源IP→選定RS的映射超時(shí)時(shí)間內(nèi)同一源IP的請(qǐng)求都發(fā)往同一RS。適用配合其他調(diào)度算法如wlc使用兼顧負(fù)載均衡和會(huì)話保持。方案三防火墻標(biāo)記 持久連接解決多端口會(huì)話# 80和443標(biāo)記為66 iptables -t mangle -A PREROUTING -d VIP -p tcp --dport 80 -j MARK --set-mark 66 iptables -t mangle -A PREROUTING -d VIP -p tcp --dport 443 -j MARK --set-mark 66 # LVS使用標(biāo)記并開(kāi)啟持久 ipvsadm -A -f 66 -s rr -p 600 ipvsadm -a -f 66 -r RS1 -m ipvsadm -a -f 66 -r RS2 -m效果用戶(hù)從HTTP跳轉(zhuǎn)到HTTPS時(shí)仍然保持在同一臺(tái)RS不會(huì)丟失會(huì)話。方案四應(yīng)用層會(huì)話共享終極方案將Session存儲(chǔ)在Redis/Memcached等共享緩存中后端RS無(wú)論哪臺(tái)處理都能讀取到用戶(hù)會(huì)話。優(yōu)點(diǎn)徹底解決粘滯問(wèn)題后端RS可隨意擴(kuò)縮容缺點(diǎn)需要修改應(yīng)用程序代碼八、一鍵配置腳本實(shí)戰(zhàn)以下是一個(gè)規(guī)范化的Bash腳本涵蓋了LVS四種模式配置、算法切換、防火墻標(biāo)記和會(huì)話保持等所有核心功能。#!/bin/bash # LVS 四種模式及高級(jí)功能完整配置腳本 (重構(gòu)版) # 適用場(chǎng)景學(xué)習(xí)/測(cè)試 LVS 各項(xiàng)核心配置 # 基于截圖內(nèi)容整理添加了環(huán)境檢查與邏輯控制 # 1. 基礎(chǔ)環(huán)境變量 (按需修改) VIP172.25.254.100 RS1172.25.254.10 RS2172.25.254.11 INTERFACEeth0 # 若VIP綁定的網(wǎng)卡名稱(chēng)不一致請(qǐng)修改這里 # 2. 基礎(chǔ)環(huán)境安裝 (所有模式通用) install_env() { echo 開(kāi)始安裝 LVS 基礎(chǔ)環(huán)境... # 截圖中的 yum 或 apt此處用最通用的判斷 if command -v yum /dev/null; then yum install -y ipvsadm elif command -v apt /dev/null; then apt update apt install -y ipvsadm else echo 不支持的系統(tǒng)包管理器請(qǐng)手動(dòng)安裝 ipvsadm exit 1 fi # 開(kāi)啟 IP 轉(zhuǎn)發(fā) (NAT 模式必須) echo 1 /proc/sys/net/ipv4/ip_forward echo 環(huán)境安裝完成。 } # 3. 規(guī)則清理 (每次切換模式前執(zhí)行) clear_rules() { echo 清空所有已有的 LVS 規(guī)則和綁定... ipvsadm -C ip addr del $VIP/32 dev $INTERFACE 2/dev/null echo 規(guī)則已清空。 } # 4. 四種核心模式配置函數(shù) # 模式 A: NAT 模式 (配置 VIP 在 Director 上后端 RS 網(wǎng)關(guān)指向 Director) conf_nat() { clear_rules echo 配置 NAT 模式... ip addr add $VIP/32 dev $INTERFACE ipvsadm -A -t $VIP:80 -s rr ipvsadm -a -t $VIP:80 -r $RS1:80 -m ipvsadm -a -t $VIP:80 -r $RS2:80 -m # NAT 模式下后端 RS 的網(wǎng)關(guān)必須指向 Director 的 DIP需在 RS 手動(dòng)配置 echo 注意NAT 模式請(qǐng)確保 RS 的默認(rèn)網(wǎng)關(guān)指向本機(jī)內(nèi)網(wǎng) IP。 } # 模式 B: DR 模式 (企業(yè)常用VIP 綁定在 Lo 網(wǎng)卡抑制 ARP) conf_dr() { clear_rules echo 配置 DR 模式... # Director 上綁定 VIP ip addr add $VIP/32 dev $INTERFACE ipvsadm -A -t $VIP:80 -s rr ipvsadm -a -t $VIP:80 -r $RS1:80 -g ipvsadm -a -t $VIP:80 -r $RS2:80 -g echo 注意DR 模式需要在 RS 上執(zhí)行以下命令 echo ip addr add $VIP/32 dev lo:0 echo echo 1 /proc/sys/net/ipv4/conf/lo/arp_ignore echo echo 2 /proc/sys/net/ipv4/conf/lo/arp_announce echo echo 1 /proc/sys/net/ipv4/conf/all/arp_ignore echo echo 2 /proc/sys/net/ipv4/conf/all/arp_announce } # 模式 C: TUN 模式 (IP 隧道) conf_tun() { clear_rules echo 配置 TUN (隧道) 模式... ip addr add $VIP/32 dev $INTERFACE ipvsadm -A -t $VIP:80 -s rr ipvsadm -a -t $VIP:80 -r $RS1:80 -i ipvsadm -a -t $VIP:80 -r $RS2:80 -i echo 注意TUN 模式需要 RS 支持隧道并配置 tunl0。 } # 模式 D: FULLNAT 模式 conf_fullnat() { clear_rules echo 配置 FULLNAT 模式 (需內(nèi)核支持)... ip addr add $VIP/32 dev $INTERFACE ipvsadm -A -t $VIP:80 -s rr ipvsadm -a -t $VIP:80 -r $RS1:80 -f ipvsadm -a -t $VIP:80 -r $RS2:80 -f echo 注意FULLNAT 需要特殊的內(nèi)核補(bǔ)丁 (如 LVS 全 NAT 版本)。 } # 5. 調(diào)度算法切換 (常用: 輪詢(xún) rr / 加權(quán) wlc) # 用法示例change_algo wlc change_algo() { local new_algo$1 echo 正在將調(diào)度算法切換為: $new_algo # 需要先用 -E 編輯虛擬服務(wù)來(lái)修改調(diào)度算法 ipvsadm -E -t $VIP:80 -s $new_algo # 用 -e 編輯真實(shí)服務(wù)器保持后端權(quán)重等屬性 ipvsadm -e -t $VIP:80 -r $RS1:80 -m -w 1 ipvsadm -e -t $VIP:80 -r $RS2:80 -m -w 2 echo 算法切換完成。 } # 6. 端口輪詢(xún) / FWMARK (防火墻標(biāo)記) # 示例標(biāo)記 80 和 443 為一組 conf_fwmark() { clear_rules echo 配置 FWMARK 標(biāo)準(zhǔn)解決多端口輪詢(xún)問(wèn)題... # 1. 配置 iptables 進(jìn)行端口標(biāo)記 iptables -t mangle -A PREROUTING -p tcp --dport 80 -j MARK --set-mark 10 iptables -t mangle -A PREROUTING -p tcp --dport 443 -j MARK --set-mark 10 # 2. 配置 LVS 按 FWMARK 轉(zhuǎn)發(fā) ipvsadm -A -f 10 -s rr ipvsadm -a -f 10 -r $RS1:80 -m ipvsadm -a -f 10 -r $RS2:80 -m echo FWMARK 配置完成。 } # 7. 會(huì)話保持 (粘滯 Persistent) # 方案 1: SH (源地址哈希) conf_sh_affinity() { clear_rules echo 配置 SH 哈希會(huì)話保持... ipvsadm -A -t $VIP:80 -s sh ipvsadm -a -t $VIP:80 -r $RS1:80 -g -w 1 ipvsadm -a -t $VIP:80 -r $RS2:80 -g -w 2 } # 方案 2: 持久化超時(shí) (LVS 原生) conf_timeout_persistence() { clear_rules local persist_time300 # 設(shè)置 300 秒持久化 echo 配置 LVS 持久化超時(shí) ($persist_time 秒)... ipvsadm -A -t $VIP:80 -s rr -p $persist_time ipvsadm -a -t $VIP:80 -r $RS1:80 -m ipvsadm -a -t $VIP:80 -r $RS2:80 -m } # 方案 3: Redis 共享會(huì)話 (僅提示LVS 只負(fù)責(zé)轉(zhuǎn)發(fā)) conf_redis_session() { echo Redis 共享會(huì)話方案 (無(wú)需修改 LVS) echo 此方案不依賴(lài) LVS 配置而是修改后端 Web 應(yīng)用 (如 PHP/Java) 的 Session 存儲(chǔ)。 echo LVS 無(wú)需特意配置持久化只需用輪詢(xún) rr/wlc應(yīng)用層通過(guò) Redis 共享 Session 即可。 echo 這樣故障時(shí)也無(wú)需擔(dān)心 Session 丟失。 } # 8. 策略保存與開(kāi)機(jī)自啟 save_rules() { echo 保存當(dāng)前 LVS 規(guī)則... ipvsadm-save /etc/sysconfig/ipvsadm echo 規(guī)則已保存至 /etc/sysconfig/ipvsadm echo 啟用開(kāi)機(jī)自啟動(dòng)... systemctl enable ipvsadm --now 2/dev/null || echo 請(qǐng)手動(dòng)執(zhí)行: systemctl enable ipvsadm } # 9. 查看當(dāng)前規(guī)則 show_rules() { echo 當(dāng)前 LVS 配置: ipvsadm -Ln echo 連接統(tǒng)計(jì): ipvsadm -Ln --stats } # 10. 使用示例菜單 show_menu() { echo LVS 一鍵配置腳本菜單 echo 1. 安裝基礎(chǔ)環(huán)境 echo 2. 配置 NAT 模式 echo 3. 配置 DR 模式 echo 4. 配置 TUN 模式 echo 5. 配置 FULLNAT 模式 echo 6. 切換調(diào)度算法 (需指定算法名) echo 7. 配置 FWMARK 多端口負(fù)載均衡 echo 8. 配置 SH 源地址哈希會(huì)話保持 echo 9. 配置持久連接會(huì)話保持 echo 10. 保存規(guī)則并設(shè)置開(kāi)機(jī)自啟 echo 11. 查看當(dāng)前規(guī)則 echo 12. 清空所有規(guī)則 echo 0. 退出 } # 主程序 (支持命令行參數(shù)和交互菜單) main() { # 如果帶了參數(shù)直接執(zhí)行對(duì)應(yīng)功能 case $1 in install) install_env ;; nat) conf_nat ;; dr) conf_dr ;; tun) conf_tun ;; fullnat) conf_fullnat ;; algo) change_algo $2 ;; fwmark) conf_fwmark ;; sh) conf_sh_affinity ;; persist) conf_timeout_persistence ;; save) save_rules ;; show) show_rules ;; clear) clear_rules ;; *) # 沒(méi)有參數(shù)則顯示交互菜單 while true; do show_menu read -p 請(qǐng)輸入選項(xiàng)編號(hào): choice case $choice in 1) install_env ;; 2) conf_nat ;; 3) conf_dr ;; 4) conf_tun ;; 5) conf_fullnat ;; 6) read -p 請(qǐng)輸入算法名 (rr/wlc/wrr/sed/nq等): algo; change_algo $algo ;; 7) conf_fwmark ;; 8) conf_sh_affinity ;; 9) conf_timeout_persistence ;; 10) save_rules ;; 11) show_rules ;; 12) clear_rules ;; 0) echo 退出...; exit 0 ;; *) echo 無(wú)效選項(xiàng)請(qǐng)重新輸入 ;; esac echo done ;; esac } # 執(zhí)行主程序 main $

相關(guān)新聞

STM32驅(qū)動(dòng)OLED進(jìn)階指南:從基礎(chǔ)顯示到動(dòng)態(tài)圖與動(dòng)畫(huà)實(shí)現(xiàn)

STM32驅(qū)動(dòng)OLED進(jìn)階指南:從基礎(chǔ)顯示到動(dòng)態(tài)圖與動(dòng)畫(huà)實(shí)現(xiàn)

1. 項(xiàng)目概述:為什么STM32與OLED是絕配?玩過(guò)單片機(jī)開(kāi)發(fā)的朋友,尤其是從51、Arduino轉(zhuǎn)到STM32的,肯定都經(jīng)歷過(guò)一個(gè)階段:想讓手里的板子“說(shuō)點(diǎn)啥”,顯示點(diǎn)信息。數(shù)碼管太簡(jiǎn)陋,LCD1602字符型又不夠酷…

2026/7/29 11:46:26 閱讀更多
【限時(shí)開(kāi)源】我們團(tuán)隊(duì)沉淀3年的提示詞知識(shí)圖譜(含217個(gè)領(lǐng)域?qū)嶓w關(guān)系+動(dòng)態(tài)權(quán)重算法)

【限時(shí)開(kāi)源】我們團(tuán)隊(duì)沉淀3年的提示詞知識(shí)圖譜(含217個(gè)領(lǐng)域?qū)嶓w關(guān)系+動(dòng)態(tài)權(quán)重算法)

更多請(qǐng)點(diǎn)擊: https://intelliparadigm.com 第一章:編程提示詞最佳實(shí)踐 編寫(xiě)高質(zhì)量的編程提示詞(Prompt)是提升大模型代碼生成準(zhǔn)確率與可維護(hù)性的關(guān)鍵環(huán)節(jié)。它不僅影響輸出結(jié)果的語(yǔ)法正確性,更決定邏輯完整性、邊界處理…

2026/7/29 11:46:26 閱讀更多
企業(yè)績(jī)效管理軟件的技術(shù)演進(jìn)與實(shí)施優(yōu)化

企業(yè)績(jī)效管理軟件的技術(shù)演進(jìn)與實(shí)施優(yōu)化

1. 企業(yè)績(jī)效管理軟件的演進(jìn)之路 2000年初的財(cái)務(wù)部門(mén)還在與Excel表格鏖戰(zhàn)時(shí),一家名為Hyperion Solutions的軟件公司已經(jīng)開(kāi)始重新定義企業(yè)績(jī)效管理(EPM)的方式。作為最早將OLAP技術(shù)商業(yè)化的先驅(qū),他們推出的Essbase多維數(shù)據(jù)庫(kù)引擎徹底改變了財(cái)務(wù)分析的游戲規(guī)…

2026/7/29 12:56:43 閱讀更多
基于Arduino的自動(dòng)喂魚(yú)器DIY指南:從硬件選型到智能程序設(shè)計(jì)

基于Arduino的自動(dòng)喂魚(yú)器DIY指南:從硬件選型到智能程序設(shè)計(jì)

1. 從“養(yǎng)魚(yú)焦慮”到“動(dòng)手解決”:為什么你需要一個(gè)自動(dòng)喂魚(yú)器 養(yǎng)魚(yú)的朋友大概都經(jīng)歷過(guò)這種時(shí)刻:出差幾天,或者只是周末想出門(mén)玩一趟,心里就開(kāi)始惦記家里的魚(yú)缸——魚(yú)食誰(shuí)來(lái)喂?喂多了怕壞水,喂少了怕餓著?!?/p>

2026/7/29 12:56:43 閱讀更多
100行Python代碼實(shí)現(xiàn)Mini OpenClaw爬蟲(chóng)框架

100行Python代碼實(shí)現(xiàn)Mini OpenClaw爬蟲(chóng)框架

1. 項(xiàng)目概述:100行代碼實(shí)現(xiàn)Mini OpenClaw的可行性分析去年在開(kāi)發(fā)一個(gè)自動(dòng)化測(cè)試工具時(shí),我意外發(fā)現(xiàn)用Python的requests庫(kù)配合簡(jiǎn)單邏輯就能模擬出類(lèi)似OpenClaw的基礎(chǔ)功能。這個(gè)發(fā)現(xiàn)讓我意識(shí)到:復(fù)雜系統(tǒng)的核心原理往往出人意料地簡(jiǎn)單。今天要分享…

2026/7/29 12:56:43 閱讀更多
3D打印自適應(yīng)智能鞋:軟機(jī)器人技術(shù)如何實(shí)現(xiàn)動(dòng)態(tài)適配

3D打印自適應(yīng)智能鞋:軟機(jī)器人技術(shù)如何實(shí)現(xiàn)動(dòng)態(tài)適配

1. 項(xiàng)目概述:當(dāng)鞋子開(kāi)始“思考” 最近,SOLS公司推出的那款具備自適應(yīng)調(diào)節(jié)能力的3D打印鞋,在圈內(nèi)引起了不小的討論。這雙鞋聽(tīng)起來(lái)像是從科幻片里走出來(lái)的:它能感知你的腳部狀態(tài),自動(dòng)調(diào)整鞋子的松緊、支撐甚至緩震性能?!?/p>

2026/7/29 12:56:43 閱讀更多
BBWEYY · 教培增長(zhǎng)解決方案,財(cái)會(huì)考證培訓(xùn)機(jī)構(gòu)GEO獲客與小程序轉(zhuǎn)化一體化策劃案,含零代碼SAAS、AI編程、源碼定制交付

BBWEYY · 教培增長(zhǎng)解決方案,財(cái)會(huì)考證培訓(xùn)機(jī)構(gòu)GEO獲客與小程序轉(zhuǎn)化一體化策劃案,含零代碼SAAS、AI編程、源碼定制交付

BBWEYY 教培增長(zhǎng)解決方案 財(cái)會(huì)考證培訓(xùn)機(jī)構(gòu)GEO獲客與小程序 轉(zhuǎn)化一體化策劃案 從“被AI推薦”到“查詢(xún)報(bào)考條件或領(lǐng)取備考方案”的完整招生轉(zhuǎn)化閉環(huán) 項(xiàng)目定位 適用對(duì)象 方案版本 GEO獲客與招生轉(zhuǎn)化 財(cái)會(huì)考證培訓(xùn)機(jī)構(gòu) 策劃方案 V1.0|2026年7月 核心判斷 財(cái)會(huì)…

2026/7/29 12:36:28 閱讀更多
面試官大笑:“一個(gè)任務(wù)拆給 5 個(gè) Subagent 并行跑,不比 1 個(gè)快 5 倍?“我搖頭:“快不了,還可能更慢“

面試官大笑:“一個(gè)任務(wù)拆給 5 個(gè) Subagent 并行跑,不比 1 個(gè)快 5 倍?“我搖頭:“快不了,還可能更慢“

前兩個(gè)月,我在重構(gòu) AlgoMooc 網(wǎng)站過(guò)程中,發(fā)現(xiàn)一個(gè)問(wèn)題:在 Claude Code 里把一個(gè)任務(wù)拆給 5 個(gè) Subagent 并行跑,結(jié)果可能比 1 個(gè) agent 從頭干到尾還慢? 大多數(shù)人的第一反應(yīng)是反過(guò)來(lái)的:活是并行干的&#…

2026/7/29 0:15:24 閱讀更多
# 鴻蒙 HarmonyOS 應(yīng)用開(kāi)發(fā)實(shí)戰(zhàn)(第25期)|骰子(Dice Roller)— Unicode 符號(hào)與動(dòng)畫(huà)渲染精講

# 鴻蒙 HarmonyOS 應(yīng)用開(kāi)發(fā)實(shí)戰(zhàn)(第25期)|骰子(Dice Roller)— Unicode 符號(hào)與動(dòng)畫(huà)渲染精講

一、應(yīng)用概述 骰子(Dice Roller) 是一款經(jīng)典的休閑娛樂(lè)應(yīng)用,模擬了真實(shí)擲骰子的過(guò)程。應(yīng)用投擲兩個(gè)骰子(六面標(biāo)準(zhǔn)骰),使用 Unicode 骰面符號(hào)直觀展示每個(gè)骰子的點(diǎn)數(shù),并伴有快速滾動(dòng)的動(dòng)畫(huà)效果。…

2026/7/29 0:15:24 閱讀更多