評測|PolarDB MySQL 版 Serverless

評測|PolarDB MySQL 版 Serverless

目錄

一、測試背景

1.1、云原生數據庫 PolarDB?Serverless新架構概念

1.2、Serverless資源彈性擴縮觸發條件

二、PolarDB的Serverless能力與同類型產品進行對比

三、動態彈性升降資源的能力測試

3.1、測試資源

3.2、測試一、主節點Serverless彈性壓測

3.2.1、設置Serverless彈性策略

3.2.2、主節點Serverless彈性壓測

(1)、初始化相關數據

(2)、256并發讀寫混合壓測

(3)、Serverless性能監控指標

3.2.3、測試結論

3.3、測試二、只讀節點Serverless彈性壓測

3.3.1、設置Serverless彈性策略

3.3.2、讀寫混合壓測

(1)、初始化相關數據

(2)、讀寫混合壓測

(3)、性能監控

3.3.3、測試結論

3.4、測試三、只讀節點Serverless并發壓測

3.4.1、設置Serverless彈性策略如測試3.3

3.4.2、只讀并發壓測

(一)自動擴容能力測試

(二)自動縮容能力測試

(三)性能監控

3.4.3、測試結論

3.5、測試四、全局一致性(SCC)測試

?3.5.1、設置Serverless彈性策略

?3.5.2、全局一致性(SCC)測試

?3.5.3、測試結論

四、異常反饋

4.1、數據庫節點異常

4.2、只讀節點異常

五、測試總結


一、測試背景

1.1、云原生數據庫 PolarDB?Serverless新架構概念

云原生數據庫 PolarDB:

  云原生數據庫 PolarDB 是阿里云自研產品,在存儲計算分離架構下,利用了軟硬件結合的優勢,為用戶提供秒級彈性、高性能、海量存儲、安全可靠的數據庫服務。100%兼容MySQL和PostgreSQL生態,支持分布式擴展,高度兼容Oracle語法。產品具有多主多寫、多活容災、HTAP 等特性,交易性能最高可達開源數據庫的6倍,分析性能最高可達開源數據庫的400倍,TCO 低于自建數據庫50%。

  數據庫是現代企業IT系統中非常重要的一部分。在創建數據庫時,客戶往往需要比較保守地去配置數據庫集群的資源,包括CPU、內存、存儲以及連接數等多種參數配置,以確保業務能夠在波峰和波谷都能平穩運行。在這種情況下,客戶購買的集群資源在業務波谷時期會被閑置,導致整體成本偏高;而在業務壓力增長階段,集群資源又應對不足。

  第一代云原生數據庫無法實現計算和內存資源解耦,導致目前云原生數據庫價格依然高于RDS和自建數據庫,這也是其無法占據大部分市場的核心原因。

  隨著PolarDB?Serverless新架構的率先提出,原生數據庫的困境出現極大改變。

PolarDB?Serverless的最大創新之處在于:

  ? 在業內首次實現了內存與計算/存儲的解耦,內存進一步池化,形成三層池化,使得彈性能力有數量級的提升。

  ? 內存池化大幅度降低了成本,實現了完全地按量使用和按需彈性,貼合各種場景。

Serverless集群的技術架構圖

  PolarDB?Serverless構建了一個全新的數據庫形態,即DCaaDB(Datacenter as a Database)。整個IDC形成一個多租戶的大數據庫,其全部的CPU、內存和存儲構成三個獨立的資源池。在資源池未耗盡的情況下,任何一個用戶(租戶)都可以任意的彈性擴展任何一種資源到任何一個規格,用戶為其SQL動態消耗的CPU、內存和存儲買單,不需要預置任何的規格。

  這種情況下,CPU和內存資源因其池化其使用率將會大幅度提升,云原生數據的成本將會遠低于自建和RDS等一體化數據庫,云原生技術的價值將會得到充分的體現

  Serverless數據庫能夠使得數據庫集群資源隨客戶業務負載動態彈性擴縮,將客戶從復雜的業務資源評估和運維工作中解放出來。

1.2、Serverless資源彈性擴縮觸發條件

縱向擴縮:指節點的性能(CPU和內存的規格)發生變化。
橫向擴縮:指只讀節點的數量發生變化。

資源彈性擴展觸發條件

縱向擴展觸發條件:

  PolarDB主要監控主節點和只讀節點的CPU使用率、內存使用率和其他內核層面指標。

  在監控周期內,出現如下三種情況中的任意一種時,通常會觸發Serverless資源縱向擴展:

  ? 當單節點的CPU使用率高于80%,會觸發本節點資源擴展。

  ? 當單節點的內存使用率高于90%,會觸發本節點資源擴展。

  ? 當只讀節點的規格小于主節點規格的一半時,會觸發只讀節點資源擴展。例如,當只讀節點的規格是4 PCU,主節點的規格是10 PCU時,會觸發只讀節點資源擴展到不小于5 PCU的規格。

橫向擴展觸發條件:

  當只讀節點已經縱向擴展到設定上限,集群中現有的只讀節點的CPU使用率或內存使用率仍然滿足縱向擴展的條件(CPU使用率高于80%或內存使用率高于90%),則會觸發只讀節點的橫向擴展。

資源彈性收縮觸發條件:

  當單節點的CPU使用率低于50%且內存使用率低于80%時,會觸發本節點資源收縮。

說明:
  以上條件適用于Serverless集群和普通集群的Serverless功能。
  以上閾值指標是默認值,在不同集群內核參數以及不同Serverless配置策略下,會有所調整。

二、PolarDB的Serverless能力與同類型產品進行對比

  在業務波動較大的場景下,普通集群和Serverless集群資源使用和規格變化情況如下圖:

  由上圖可以看到,在業務波動較大的場景下:

普通集群:

  在波谷期浪費的資源較多,在高峰期資源不足,業務受損。

Serverless集群:

  由于其規格隨業務需求量隨時調整,總體浪費的資源很少,提升了資源利用率,降低了資源使用量。在高峰期也能完全滿足業務需求,保證業務不受損,提高了系統的穩定性。打破固定資源付費模式,做到了負載與資源動態匹配的按量付費模式,可節省大量成本。無需手動變配,提高了運維效率,提升了運維管理人員和研發人員的幸福感。具備彈性擴縮能力,適合業務數據量大、并具有典型的業務訪問波峰波谷場景。

三、動態彈性升降資源的能力測試

3.1、測試資源

3.1.1、場景資源信息??

  • 云服務器ECS

  云服務器(Elastic Compute Service,簡稱ECS)是阿里云提供的性能卓越、穩定可靠、彈性擴展的IaaS(Infrastructure as a Service)級別云計算服務。一臺云服務器ECS實例等同于一臺虛擬服務器,內含CPU、內存、操作系統、網絡配置、磁盤等基礎的組件。

  ECS實例ID:i-uf6c2imr50uapz33734j

  CPU&內存:16核(vCPU)64 GiB
  操作系統:Alibaba Cloud Linux 2.1903 LTS 64位
  當前使用帶寬:5Mbps (峰值)

  • 云原生關系型數據庫PolarDB

  云原生關系型數據庫PolarDB是阿里巴巴自主研發的下一代云原生關系型數據庫,100%兼容MySQL、PostgreSQL、高度兼容Oracle語法。 計算能力最高可擴展至1000核以上,存儲容量最高可達 100TB。

數據庫1名稱:mytest
數據庫2名稱:sct
數據庫3名稱:sbtest
數據庫賬號名稱:test_user
數據庫登錄密碼:Password123
PolarDB實例ID:pc-uf6x937e5n0fw6138、pc-uf68j17rqld9xwh9d
PolarDB集群私網地址:
pc-uf6x937e5n0fw6138.rwlb.rds.aliyuncs.com
pc-uf68j17rqld9xwh9d.rwlb.rds.aliyuncs.com

3.1.2、測試工具??:

  • Sysbench工具

  Sysbench是一款開源的多線程性能測試工具,可以執行數據庫只讀、只寫、讀寫混合等類型的性能測試。

  • SCC(Strict Consistency Cluster)服務

  嚴格一致性集群SCC(Strict Consistency Cluster)服務。SCC功能為PolarDB for MySQL Serverless提供了跨節點無損讀擴展的能力。PolarTrans事務系統利用提交時間戳技術CTS和RDMA網絡,在內核層面提供集群強一致性讀SCC服務,在不損失性能的基礎上,保證發往集群任意副本的讀請求都可以獲得強一致性的結果。

3.2、測試一、主節點Serverless彈性壓測

3.2.1、設置Serverless彈性策略

? 單節點資源彈性上限為:32 PCU。
? 單節點資源彈性下限為:1 PCU。
? 只讀節點個數擴展上限:0。
? 只讀節點個數擴展下限:0。
? 是否開啟無活動暫停:關閉。
? 定時執行:立即執行

3.2.2、主節點Serverless彈性壓測

  本測試模擬客戶端對PolarDB發起寫請求,驗證主節點的Serverless智能彈性能力。通過Sysbench腳本訪問集群地址進行壓測,PolarDB主節點的規格能夠根據負載進行自動伸縮與自動配置,達到Serverless的能力。

  本樣例使用讀寫混合的壓測類型(oltp_read_write),并發數為32線程。

(1)、初始化相關數據

切換至Web Terminal。

執行如下命令,初始化相關數據。

sysbench /usr/share/sysbench/oltp_read_write.lua --mysql-host=pc-uf6x937e5n0fw6138.rwlb.rds.aliyuncs.com --mysql-port=3306 --mysql-user=test_user --mysql-password=Password123 --mysql-db=sbtest --tables=128 --table-size=1000000 --report-interval=1 --range_selects=1 --db-ps-mode=disable --rand-type=uniform --threads=256 --time=12000 prepare

運行結果:?

  由于初始化數據的負載也會造成Serverless彈升,初始化執行完畢后等待2-3min,在規格下降到初始狀態(1PCU)后,再執行下面的正式的壓測命令。

(2)、256并發讀寫混合壓測

  執行如下命令,開始進行256并發讀寫混合壓測。

sysbench /usr/share/sysbench/oltp_read_write.lua --mysql-host=pc-uf6x937e5n0fw6138.rwlb.rds.aliyuncs.com --mysql-port=3306 --mysql-user=test_user --mysql-password=Password123 --mysql-db=sbtest --tables=128 --table-size=1000000 --report-interval=1 --range_selects=1 --db-ps-mode=disable --rand-type=uniform --threads=256 --time=12000 run

輸出結果:

?

時間

tpslat (ms,95%)

1s

255.11861.95

2s

302.081109.09

3s

206.001304.21

4s

299.011109.09

5s

235.001506.29

26s

1592.99200.47?

27s

2080.13?200.47

28s

2004.91186.54

29s

2314.91186.54?

30s

2731.85176.73

54s

5157.28

68.05

55s5174.67

68.05

56s5249.0868.05
57s5135.8568.05
58s5249.05

68.05

  根據Sysbench輸出返回結果可以直接觀察到,

  隨著時間的推移,在同樣的并發數下,tps逐漸上升,延遲(lat)逐漸下降,最終到達一個穩定值,這說明PolarDB的處理能力借助Serverless彈性獲得提升。

(3)、Serverless性能監控指標

  在計算節點頁簽,查看主節點負載情況。

  可以看到隨著主節點PCU CPU使用率的不斷提升,PCU數量從

  狀態(1)2023-11-23 19:17:17 PCU=1,

  迅速上升至

  狀態(2)2023-11-23 19:17:53 PCU=32,

  (本次測試用時為36秒)

  不到1分鐘內從1 PCU彈升到最大上限32 PCU。

  壓測持續一段時間后,切換至Web Terminal中執行Ctrl+C,停止壓測腳本。

  切換至性能監控,

  可以觀察到,當壓測請求完全停止后,主節點PCU CPU使用率會立即下降,而PCU數量隨后也會逐步自動縮小至1 PCU。

3.2.3、測試結論

  通過Sysbench腳本訪問集群地址,模擬客戶端對PolarDB發起寫請求,進行壓測,PolarDB主節點的Serverless能夠根據負載進行自動伸縮與自動配置,具有智能彈性能力。PolarDB的處理能力借助Serverless彈性獲得提升。

  資源彈升速度快,不到1分鐘時間內(本次測試用時為36秒)從1 PCU彈升到最大上限32 PCU,1秒內完成彈升。

3.3、測試二、只讀節點Serverless彈性壓測

  只讀節點Serverless彈性壓測

  本測試模擬客戶端對PolarDB發起讀請求,驗證只讀節點的Serverless智能彈性能力。PolarDB for MySQL Serverless集群除了支持主節點自動彈性伸縮之外,還支持創建只讀節點分攤主節點的讀請求。當使用集群地址時,PolarDB for MySQL Serverless可以基于讀負載的比例,智能地調整只讀節點的個數和各自的規格,來達到最佳的Serverless能力。

  PolarDB for MySQL Serverless集群主節點PCU擴容到彈升上限后,會自動創建新的只讀節點并分攤部分主節點的讀負載,最終使整個集群能夠支撐更高的TPS請求量。

3.3.1、設置Serverless彈性策略

? 單節點資源彈性上限為:32 PCU。
? 單節點資源彈性下限為:1 PCU。
? 只讀節點個數擴展上限:7。
? 只讀節點個數擴展下限:0。
? 是否開啟無活動暫停:關閉。
? 定時執行:立即執行

3.3.2、讀寫混合壓測

(1)、初始化相關數據

  切換至Web Terminal。

  執行如下命令,初始化相關數據。

sysbench /usr/share/sysbench/oltp_read_write.lua --mysql-host=pc-uf68j17rqld9xwh9d.rwlb.rds.aliyuncs.com --mysql-port=3306 --mysql-user=test_user --mysql-password=Password123 --mysql-db=sbtest --tables=128 --table-size=1000000 --report-interval=1 --range_selects=1 --db-ps-mode=disable --rand-type=uniform --threads=256 --time=12000 prepare

運行結果:?

  由于初始化數據的負載也會造成Serverless彈升,初始化執行完畢后等待2-3min,在規格下降到初始狀態(1PCU)后,再執行下面的正式的壓測命令。

(2)、讀寫混合壓測

  執行如下命令,開始進行讀寫混合壓測。

  切換至Web Terminal。

  執行如下命令,通過訪問PolarDB for MySQL Serverless集群私網地址發起256并發讀寫混合壓測請求。

sysbench /usr/share/sysbench/oltp_read_write.lua --mysql-host=pc-uf68j17rqld9xwh9d.rwlb.rds.aliyuncs.com --mysql-port=3306 --mysql-user=test_user --mysql-password=Password123 --mysql-db=sbtest --tables=128 --table-size=1000000 --report-interval=1 --range_selects=1 --db-ps-mode=disable --rand-type=uniform --threads=256 --time=12000 run

?

?

  從Sysbench輸出可以直接觀察到,隨著時間的推移,在同樣的并發數下,tps逐漸上升,延遲(lat)逐漸下降,最終到達一個穩定值。這說明PolarDB的處理能力借助Serverless彈性獲得提升。

(3)、性能監控

  在監控頁上,可以查看到集群維度的Serverless監控指標,選擇壓測的時間段可以看到類似如下信息:

  從監控可以看出,PolarDB收到讀寫混合請求后,主節點會首先迅速彈升到最大的32 PCU,之后監控逐步出現兩個只讀節點。當只讀節點分攤主節點的讀請求后,主節點CPU使用率逐步下降,規格最終穩定在24PCU。

  第一個只讀節點創建后,也會立刻彈升到32 PCU。此時系統會嘗試繼續創建只讀節點,分攤讀請求。第一個只讀節點穩定在30PCU。第二個只讀節點穩定在29PCU。

  我們可以看到,由于目前第二個只讀節點沒有到最大規格32 PCU,系統判斷目前Serverless規格已經滿足實際負載,不會再繼續增加新的只讀節點。

3.3.3、測試結論

  初始狀態下,在讀寫混合場景下,讀寫流量會首先轉發到集群唯一節點,即主節點(RW)中。

  當主節點彈升到最大規格后,Serverless系統會逐個創建只讀節點,分攤主節點的讀請求,直到只讀節點的數量滿足當前負載。

  當只讀節點分攤讀請求后,主節點負載會降低,觸發PCU彈降,為未來支持更多寫負載預留了彈升空間。

3.4、測試三、只讀節點Serverless并發壓測

3.4.1、設置Serverless彈性策略如測試3.3

3.4.2、只讀并發壓測

(一)自動擴容能力測試

  切換至Web Terminal。

  打開一個新的Terminal(第一個測試3.3Terminal中的壓測命令先不要停止)。

  在新的Terminal中執行如下命令,通過訪問PolarDB for MySQL Serverless?集群地址發起256并發的只讀請求。

sysbench /usr/share/sysbench/oltp_read_write.lua --mysql-host=pc-uf68j17rqld9xwh9d.rwlb.rds.aliyuncs.com --mysql-port=3306 --mysql-user=test_user --mysql-password=Password123 --mysql-db=sbtest --tables=128 --table-size=1000000 --report-interval=1 --range_selects=1 --db-ps-mode=disable --rand-type=uniform --threads=256 --time=12000 run

?

  當數據庫接收到新的只讀負載后,首先當前的2個只讀節點會彈升到最大規格32 PCU,之后Serverless系統會繼續創建新的只讀節點,直到滿足新增只讀負載的要求。

選擇性能監控。

  在監控頁上,可以查看集群維度的Serverless監控指標,選擇只讀請求的壓測時間段,查看Serverless的狀態:

(二)自動縮容能力測試

  切換至Web Terminal。

  執行Ctrl+C停止所有的Sysbench腳本(包括oltp_read_write和oltp_read_only)。

(三)性能監控

  在監控頁上可以看到PolarDB for MySQL Serverless的計算節點首先會自動縮容(預計耗時1-2min),之后新增的只讀節點會逐步回收(預計耗時15-20min)。

  等待較長時間后,最終PolarDB會縮容到只有一個主節點的狀態。

  說明:時間比較久,預計需要15-20min。趁著只讀節點還沒回收,可以直接做下一個全局一致性測試。

3.4.3、測試結論

  從上面的實驗可以看出,PolarDB for MySQL Serverless的節點數量和規格都能夠根據負載進行自動伸縮與自動配置。

3.5、測試四、全局一致性(SCC)測試

  全局一致性(SCC)測試

  高性能全局一致性SCC特性可以為PolarDB for MySQL Serverless提供跨節點無損讀擴展的能力,即RO的無損強一致讀。傳統的Serverless的方案均是基于單機原地升降配實現,其規格受限于單物理機資源。而當RO能借助SCC提供無損強一致讀后,針對大部分讀多寫少業務,可以跨機提供CPU資源,上限遠超單物理機限制。

  開源的mysqlsct工具用于檢驗數據庫集群的強一致性讀能力, 該工具通過跨session的寫入+讀取+結果對比的方式來測試數據庫集群強一致性讀的功能和性能。

  本測試使用mysqlsct工具驗證的無損強一致讀的特性。在Serverless默認開啟SCC的狀態下,PolarDB通過RO實現讀擴展,且不會讀到不一致的數據。在關閉SCC后,同樣測試條件下,使用RO分攤讀請求則無法滿足強一致。

  為了更方便地測試RO一致性讀,先調整Serverless配置,確保測試過程中,至少保留一個只讀節點。

?3.5.1、設置Serverless彈性策略

? 單節點資源彈性上限為:32 PCU。
? 單節點資源彈性下限為:1 PCU。
? 只讀節點個數擴展上限:7。
? 只讀節點個數擴展下限:1。
? 是否開啟無活動暫停:關閉。
? 定時執行:立即執行

  設置參數后,實例狀態為配置切換中,切換預計需要1-2min,請等待實例狀態變成運行中后再執行后面的操作。

?3.5.2、全局一致性(SCC)測試

  切換至Web Terminal。

  執行如下mysqlsct測試命令。

/root/mysqlsct --host-rw=pc-uf68z4el2op35ozy1.rwlb.rds.aliyuncs.com --host-ro=pc-uf68z4el2op35ozy1.rwlb.rds.aliyuncs.com --port-rw=3306 --port-ro=3306 --user=test_user? --password=Password123 --iterations=100000 --table-cnt=1 --table-size=1000 -f=0 --concurrency=1 --database=sct --sc-gap-us=0 --report-interval=2 --test-mode=sct

執行后,可以看到一致性檢查全部通過,輸出的信息類似如下截圖:

  選擇參數配置。

  單擊頁面左上角的修改參數按鈕,修改loose_innodb_polar_scc參數為OFF,單擊提交修改,單擊確定,關閉SCC特性。

  切換至Web Terminal。

  重新執行mysqlsct測試命令。

/root/mysqlsct --host-rw=pc-uf68z4el2op35ozy1.rwlb.rds.aliyuncs.com --host-ro=pc-uf68z4el2op35ozy1.rwlb.rds.aliyuncs.com --port-rw=3306 --port-ro=3306 --user=test_user? --password=Password123 --iterations=100000 --table-cnt=1 --table-size=1000 -f=0 --concurrency=1 --database=sct --sc-gap-us=0 --report-interval=2 --test-mode=sct

?

  執行后,可以看到一致性檢查出現失敗,輸出的信息類似如下截圖:

?3.5.3、測試結論

  從上面的實驗可以看出,PolarDB for MySQL Serverless借助高性能全局一致性SCC特性,提供了跨節點無損讀擴展的能力。

四、異常反饋

4.1、數據庫節點異常

  正常情況下,當主節點升至32 PCU時,此時系統會嘗試繼續創建只讀節點,分攤讀請求。而只讀節點到最大規格32 PCU時,系統判斷目前Serverless規格超出實際負載,會繼續增加新的只讀節點。

  但測試過程中,碰到過幾次不斷增加并發壓測,但數據庫節點不增加只讀節點的情況。此時在性能監控顯示頁里也沒有增加只讀節點。等了很久時間也沒有增加只讀節點,數據顯示也不正常。

4.2、只讀節點異常

  出現了只讀節點PCU數量為0的異常情況。不斷增加并發壓測,但有一個只讀節點PCU數量始終為0不變化。

五、測試總結

  在PolarDB?Serverless架構下,我對數據庫性能進行了測試。 縱向擴縮:指節點的性能(CPU和內存的規格)發生變化。橫向擴縮:指只讀節點的數量發生變化。

1. 資源彈升速度:PolarDB可支持5秒探測窗口,1秒內完成彈升。資源彈升速度快,不到1分鐘時間內(本次測試用時為36秒)從1 PCU彈升到最大上限32 PCU。

2. 資源伸縮廣度:PolarDB支持自動縱向擴展(0~32核)和橫向擴展(0~8個節點),支持0~256核范圍內伸縮。

3. 資源伸縮的穩定性:PolarDB支持對業務無感的縱向擴縮容與橫向擴展

4. 資源伸縮的顆粒度:PolarDB支持最小0.5PCU顆粒度的資源伸縮

5. 可支持自動啟停:PolarDB可支持在沒有訪問需求時,計算資源可縮為0。當有訪問需求時,10秒即可喚醒資源。

6. 全局數據的強一致性:PolarDB可支持所有只讀節點的數據強一致性,并且性能不下降。

  云原生數據庫?PolarDB MySQL版Serverless能夠根據業務負載,對集群資源進行秒級動態彈降,具有動態彈性升降資源的能力,通過多節點架構保障集群的高可用,自動彈升范圍廣,單集群支持無感伸縮,可實現秒級彈升,能夠從容應對業務負載突增,全程對業務無影響。PolarDB MySQL版Serverless支持自動啟停能力。當沒有連接時,集群自動暫停,釋放計算成本;當請求到來時,集群自動無感啟動。

?????????????推薦閱讀:

AIGC 是通向 AGI 的那條路嗎?
數字人,虛擬數字人——你看好數字人領域的發展嗎?
大數據的關鍵技術之——大數據采集
[你找到牽手一輩子的人了嗎?] 七夕情人節特輯
數字技術能讓古籍“活過來”嗎?
心情不好時,幫自己訓練個AI情緒鼓勵師吧(基于PALM 2.0 finetune)
深度學習框架TensorFlow
人工智能開發人員工作流程、看法、工具統計數據
2023 年6月開發者調查統計結果——最流行的技術(2)
2023 年6月開發者調查統計結果——最流行的技術(1)
讓Ai幫我們畫個粽子,它會畫成什么樣呢?

9e598365ba5344e282453e71a676a056.jpeg?????

b9b9f2b9374646798ca554110a498cda.jpeg?????

23f61e3eac99458296be0fedea10019e.jpeg?????

給照片換底色(python+opencv)貓十二分類基于大模型的虛擬數字人__虛擬主播實例

bfa502b957c247a7872d7e645d4c6f03.jpeg?????

2f073e39924e42d2b33221f4262dcc1d.jpeg?????

9d7e2b6a00aa45fd82291f0d5f9eea7e.jpeg?????

計算機視覺__基本圖像操作(顯示、讀取、保存)直方圖(顏色直方圖、灰度直方圖)直方圖均衡化(調節圖像亮度、對比度)

01bfb23f2f894ee0b0164f52e57bbbbc.png?????

47c92d6cf9fe4d279a142480a4340a0d.png?????

1620a2a7b0914c42b3a8254e94269a79.png?????

語音識別實戰(python代碼)(一)

?人工智能基礎篇

?計算機視覺基礎__圖像特征

93d65dbd09604c4a8ed2c01df0eebc38.png?????

?matplotlib 自帶繪圖樣式效果展示速查(28種,全)

074cd3c255224c5aa21ff18fdc25053c.png?????

Three.js實例詳解___旋轉的精靈女孩(附完整代碼和資源)(一)

fe88b78e78694570bf2d850ce83b1f69.png?????

62e23c3c439f42a1badcd78f02092ed0.png?????

cb4b0d4015404390a7b673a2984d676a.png?????

立體多層玫瑰繪圖源碼__玫瑰花python 繪圖源碼集錦

?Python 3D可視化(一)

讓你的作品更出色——詞云Word Cloud的制作方法(基于python,WordCloud,stylecloud)

e84d6708316941d49a79ddd4f7fe5b27.png?????

938bc5a8bb454a41bfe0d4185da845dc.jpeg?????

0a4256d5e96d4624bdca36433237080b.png?????

?python Format()函數的用法___實例詳解(一)(全,例多)___各種格式化替換,format對齊打印

?用代碼寫出浪漫__合集(python、matplotlib、Matlab、java繪制愛心、玫瑰花、前端特效玫瑰、愛心)

python愛心源代碼集錦(18款)

dc8796ddccbf4aec98ac5d3e09001348.jpeg?????

0f09e73712d149ff90f0048a096596c6.png?????

40e8b4631e2b486bab2a4ebb5bc9f410.png?????

?Python中Print()函數的用法___實例詳解(全,例多)

?Python函數方法實例詳解全集(更新中...)

?《 Python List 列表全實例詳解系列(一)》__系列總目錄、列表概念

09e08f86f127431cbfdfe395aa2f8bc9.png?????

6d64357a42714dab844bf17483d817c0.png?????

用代碼過中秋,python海龜月餅你要不要嘗一口?

?python練習題目錄

03ed644f9b1d411ba41c59e0a5bdcc61.png?????

daecd7067e7c45abb875fc7a1a469f23.png?????

17b403c4307c4141b8544d02f95ea06c.png?????

草莓熊python turtle繪圖(風車版)附源代碼

??草莓熊python turtle繪圖代碼(玫瑰花版)附源代碼

??草莓熊python繪圖(春節版,圣誕倒數雪花版)附源代碼

4d9032c9cdf54f5f9193e45e4532898c.png?????

c5feeb25880d49c085b808bf4e041c86.png?????

?巴斯光年python turtle繪圖__附源代碼

皮卡丘python turtle海龜繪圖(電力球版)附源代碼

80007dbf51944725bf9cf4cfc75c5a13.png?????

1ab685d264ed4ae5b510dc7fbd0d1e55.jpeg?????

1750390dd9da4b39938a23ab447c6fb6.jpeg?????

?Node.js (v19.1.0npm 8.19.3) vue.js安裝配置教程(超詳細)

?色彩顏色對照表(一)(16進制、RGB、CMYK、HSV、中英文名)

2023年4月多家權威機構____編程語言排行榜__薪酬狀況

aa17177aec9b4e5eb19b5d9675302de8.png??????

38266b5036414624875447abd5311e4d.png?????

6824ba7870344be68efb5c5f4e1dbbcf.png?????

?手機屏幕壞了____怎么把里面的資料導出(18種方法)

【CSDN云IDE】個人使用體驗和建議(含超詳細操作教程)(python、webGL方向)

?查看jdk安裝路徑,在windows上實現多個java jdk的共存解決辦法,安裝java19后終端亂碼的解決

1408dd16a76947e4a7eb3c54cd570d95.png?????

vue3 項目搭建教程(基于create-vue,vite,Vite + Vue)

fea225cb9ec14b60b2d1b797dd8278a2.png?????

bba02a1c4617422c9fbccbf5325850d9.png?????

37d6aa3e03e241fa8db72ccdfb8f716b.png?????

2023年春節祝福第二彈——送你一只守護兔,讓它溫暖每一個你【html5 css3】畫會動的小兔子,炫酷充電,字體特

?別具一格,原創唯美浪漫情人節表白專輯,(復制就可用)(html5,css3,svg)表白愛心代碼(4套)

SVG實例詳解系列(一)(svg概述、位圖和矢量圖區別(圖解)、SVG應用實例)

5d409c8f397a45c986ca2af7b7e725c9.png?????

6176c4061c72430eb100750af6fc4d0e.png?????

1f53fb9c6e8b4482813326affe6a82ff.png?????

【程序人生】卡塔爾世界杯元素python海龜繪圖(附源代碼),世界杯主題前端特效5個(附源碼)HTML+CSS+svg繪制精美彩色閃燈圣誕樹,HTML+CSS+Js實時新年時間倒數倒計時(附源代碼)

?2023春節祝福系列第一彈(上)(放飛祈福孔明燈,祝福大家身體健康)(附完整源代碼及資源免費下載)

fffa2098008b4dc68c00a172f67c538d.png?????

5218ac5338014f389c21bdf1bfa1c599.png?????

c6374d75c29942f2aa577ce9c5c2e12b.png?????

?tomcat11、tomcat10 安裝配置(Windows環境)(詳細圖文)

?Tomcat端口配置(詳細)

?Tomcat 啟動閃退問題解決集(八大類詳細)

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

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

相關文章

ubuntu22.04在線安裝redis,可選擇版本

安裝腳本7.0.5版本 在線安裝腳本,默認版本號是7.0.5,可以根據需要選擇需要的版本進行下載編譯安裝 sudo apt-get install gcc -y sudo apt-get install pkg-config -y sudo apt-get install build-essential -y#安裝redis rm -rf ./tmp.log systemctl …

freeRTOS下載鏈接(sourceForge)

FreeRTOS Real Time Kernel (RTOS) download | SourceForge.net 文件名:FreeRTOSv202212.00.exe 雙擊后會自動變成這個樣子的: 文件夾大小:506M 可以看到跟那個教程里面的文件結構是一模一樣的,所以很可能是同一個最新版本的文件…

Linux(Centos)上使用crontab實現定時任務(定時執行腳本)

場景 Windows中通過bat定時執行命令和mysqldump實現數據庫備份: Windows中通過bat定時執行命令和mysqldump實現數據庫備份_mysqldump bat-CSDN博客 上面講windows中使用bat實現定時任務的方式,如果是在linux上可以通過crontab實現。 cron是服務名稱。…

高斯DB數據庫添加字段并添加字段注釋

個人網站 公眾號小肖學數據分析 可以使用以下SQL語句向高斯DB數據庫添加字段并添加字段注釋: ALTER TABLE 表名 ADD COLUMN 列名 數據類型 COMMENT 字段注釋; "表名"替換為要添加字段的表名,"列名"替換為要添加的字段名&#xf…

怎樣提升倫敦銀買賣技巧?

如果投資者想提升倫敦銀的買賣技巧,可以學習一些有用的技術分析方法。所謂技術分析,就是通過對行情過往價格和相關交易數據進行收集,用圖表的方式解讀白銀市場,進而預測行情未來主線走勢、判斷價格細節變化、尋找重要支撐點阻力點…

Linux系統常用的組合命令

1. 管道(|):將一個命令的輸出傳遞給另一個命令作為輸入。例如: command1 | command2 在這個命令中,command1 的輸出會作為 command2 的輸入,直接將一個命令的輸出傳遞給另一個命令進行處理. 你可以使用 grep 來查找關…

TikTok Shop 與英國皇家郵政合作:為賣家提供“Click and Drop”服務

11 月 21 日,TikTok Shop 宣布與皇家郵政 建立新的合作伙伴關系 ,為平臺上的商家推出 Click & Drop。此次合作將使各種規模的商家能夠通過將皇家郵政的 Click & Drop 與其 TikTok Shop 帳戶集成來改善其履行體驗并更有效地發出訂單,…

科普:多領域分布式協同仿真

分布式協同仿真是一種在分布式計算環境中進行協同工作的仿真方法。使用該方法進行協同仿真時,仿真任務將被分發到多個計算節點上,并且這些節點可以同時工作以模擬完整的系統行為。分布式協同仿真已被廣泛應用于工程、科學和軍事領域,以便更好…

醫保線上購藥系統:代碼驅動的醫療創新

醫保線上購藥系統,這是一個融合技術和醫療的創新典范。本文將通過簡單的技術代碼示例,為您揭示這一系統是如何通過技術驅動醫療創新,為用戶提供更智能、便捷的健康管理體驗的。 1. 前端界面開發 使用React框架,我們可以輕松構建…

深度探究數據要素市場,企業為什么要參與數據資產化建設

我國正在發展數字經濟,培育數字要素市場,推進數據市場化。在十四五數字經濟發展規劃中就已經將數據要素列為數字經濟深化發展的核心引擎。今天和大家分享關于數據要素的前世今生,您將了解以下知識點: 1.什么是數據要素&#xff1f…

可視化工作流管理流程及工具

Leangoo領歌是一款永久免費的專業的敏捷開發管理工具,提供端到端敏捷研發管理解決方案,涵蓋敏捷需求管理、任務協同、進展跟蹤、統計度量等。 Leangoo領歌上手快、實施成本低,可幫助企業快速落地敏捷,提質增效、縮短周期、加速創新…

廣告屏LED屏斷電檢測遠程控制開關方案應用鋇錸技術S270

廣告屏LED屏斷電檢測: 廣告屏和LED屏在商業和公共場所的廣泛應用中扮演著重要角色,但由于斷電問題可能導致廣告屏無法正常顯示,進而影響廣告宣傳效果和客戶體驗。而S270作為一種高效穩定的遠程控制開關,可以實現廣告屏LED屏的斷電…

ubuntu掛載磁盤,以及開機自動掛載磁盤

1. 掛載臨時磁盤(關機自動取消掛載) 在Ubuntu上掛載磁盤涉及到幾個步驟,其中包括查看可用磁盤、創建掛載點、編輯 /etc/fstab 文件以確保在系統啟動時自動掛載等。以下是一般的步驟: **查看可用磁盤和分區:**可以使用…

Git 與 Maven:企業級版本管理與版本控制規范設計

一、背景 當今,許多開發人員熟悉 GitFlow 工作流程,但往往忽略了 GitFlow 如何與 Maven 版本控制結合,尤其是在管理 snapshot 和 release 版本時的最佳實踐。本文旨在整合 GitFlow 工作流程與 Maven 版本管理,提出一個統一的企業…

案例012:Java+SSM+uniapp基于微信小程序的科創微應用平臺設計與實現

文末獲取源碼 開發語言:Java 框架:SSM JDK版本:JDK1.8 數據庫:mysql 5.7 開發軟件:eclipse/myeclipse/idea Maven包:Maven3.5.4 小程序框架:uniapp 小程序開發軟件:HBuilder X 小程序…

蝦皮知蝦數據分析軟件:優化您的電商經營

在當今競爭激烈的電商市場,了解市場動態、分析競爭對手和產品趨勢是成功經營的關鍵。蝦皮知蝦數據分析軟件是一款強大的工具,為電商賣家提供了全面的數據采集和分析功能。本文將介紹蝦皮知蝦數據分析軟件的特點和功能,以及如何利用它來優化您…

讀懂毛京波的營銷,也就讀懂了路特斯的提速轉變

“盡管我們交付還不到一年時間,但是今天Emeya一發布,我們的三車主又誕生了,他有Emira、Eletre,馬上又定了Emeya,說明他對路特斯還是非常認可的,”路特斯集團CEO馮擎峰欣喜地說道,一個產品能不能…

indexOf

可以通過String的indexOf判斷是否包括某個字符。 SpringBootTest Slf4j class BaseApplicationTests {Testvoid contextLoads() {log.info("01".indexOf(".")"");log.info("0.1".indexOf(".")"");log.info("…

基于51單片機電子鐘鬧鐘LCD1602顯示proteus仿真設計

基于51單片機的LCD1602電子鐘鬧鐘proteus仿真設計 基于51單片機的LCD1602電子鐘鬧鐘proteus仿真設計功能介紹:仿真圖:原理圖:設計報告:程序:器件清單:資料清單&&下載鏈接: 基于51單片機…

16.Python 多進程和多線程

進程是應用程序正在執行的實體,當程序執行時,也就創建了一個主線程。進程在創建和執行需要占用一定的資源,如內存、文件、I/O設備等。 線程是CPU使用的基本單元,由主線程創建,并使用這個進程的資源,因此線…