filebench - File system and storage benchmark - 模擬生成各種各樣的應用的負載 - A Model Based File System Workload Generator

来源:https://www.cnblogs.com/xuyaowen/archive/2019/08/09/filebench.html
-Advertisement-
Play Games

相容posix 介面的文件系統中我們不僅要測試 posix 介面是否相容。隨機讀,隨機寫,順序讀,順序寫等讀寫模式下的性能。我們還要測試在不同工作負載條件下的文件系統的性能的情況;Filebench 是一款文件系統性能的自動化測試工具,它通過快速模擬真實應用伺服器的負載來測試文件系統的性能。它不僅可 ...


      相容posix 介面的文件系統中我們不僅要測試 posix 介面是否相容。隨機讀,隨機寫,順序讀,順序寫等讀寫模式下的性能。我們還要測試在不同工作負載條件下的文件系統的性能的情況;Filebench 是一款文件系統性能的自動化測試工具,它通過快速模擬真實應用伺服器的負載來測試文件系統的性能。它不僅可以模擬文件系統微操作(如 copyfiles, createfiles, randomread, randomwrite ),而且可以模擬複雜的應用程式(如 varmail, fileserver, oltp, dss, webserver, webproxy )。 Filebench 比較適合用來測試文件伺服器性能,但同時也是一款負載自動生成工具,也可用於文件系統的性能。所以filebench 是非常好用文件系統負載生成工具;

官方網站:

https://github.com/filebench/filebench 

https://github.com/filebench/filebench/wiki 

https://sourceforge.net/projects/filebench/ 

官網介紹:

Filebench is a file system and storage benchmark that can generate a large
variety of workloads. Unlike typical benchmarks it is extremely flexible and
allows to specify application's I/O behavior using its extensive Workload Model
Language (WML). Users can either describe desired workloads from scratch or use
(with or without modifications) workload personalities shipped with Filebench
(e.g., mail-, web-, file-, and database-server workloads). Filebench is equally
good for micro- and macro-benchmarking, quick to setup, and relatively easy to
use.

安裝:

Make sure bison and lex are available in your system. Then, run traditional configuremake, and sudo make install commands.

fedora 上 使用 yum 工具,即可以安裝穩定版; 

安裝最新版需要下載 flex 和 bison 等依賴;

yum install flex bison

$cd /usr/local/filebench-1.5-alpha3 (源文件所在的路徑)
$./configure
$make
$sudo make install (註意:一定要安裝 filebench 需要在/usr/local/share/filebench 下生成一些文件)

使用:

filebench 需要根據 WML 負載模型語言來進行描述負載,然後來進行執行。所以我們可以使用已經預定好的負載,也可以自己定義自己的負載模型,然後運行。具體如何進行定義負載大家可以參考如下鏈接:https://github.com/filebench/filebench/wiki/Workload-model-language ,也可以參考wiki 進行整理瞭解 filebench工具的使用;

命令:filebench -f /usr/local/share/filebench/workloads/fileserver.f 

測試結果:

當然,我們不建議直接使用 原有的文件進行測試。我們可以在原有的wml文件基礎上根據我們自己的使用場景來定義負載。

We do *not* recommend to directly use workload files from workloads/ or
/usr/local/share/filebench/workloads/ directories. The main reason is that these
workloads *are not properly sized* (e.g., in terms of the dataset sizes) to a
particular system. For instance, the initial dataset size of the webserver
workload is only slightly larger than 16MiB, which is typically not the size you
want to test the system containing multiple gigabytes of RAM with.

其他參考文檔:

https://www.usenix.org/legacy/event/lsf08/tech/FS_shepler.pdf

https://www.usenix.org/legacy/event/lsf08/tech/FS_shepler.pdf

https://blog.csdn.net/microsoft2014/article/details/60145433 

https://www.jianshu.com/p/4fcd6b8a4236 

保持更新,更多關於文件系統相關的知識,請關註 cnblogs.com/xuyaowen


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 簡介 .net core使用ocelot 第一篇 簡單使用 .net core使用ocelot 第二篇 身份驗證 .net core使用ocelot 第三篇 日誌記錄 .net core使用ocelot 第四篇 限流熔斷 .net core使用ocelot 第五篇 服務質量 本文介紹Ocelot的負 ...
  • 簡介 .net core使用ocelot 第一篇 簡單使用 .net core使用ocelot 第二篇 身份驗證使用 .net core使用ocelot 第三篇 日誌記錄 .net core使用ocelot 第四篇 限流熔斷 本文介紹Ocelot的Qos(服務質量)模塊。 什麼是QoS 服務質量是指 ...
  • 簡介 .net core使用ocelot 第一篇 簡單使用 .net core使用ocelot 第二篇 身份驗證 .net core使用ocelot 第三篇 日誌記錄 前幾篇文章我們陸續介紹如何用ASP.NET Core 創建API網關。 這次我們討論Ocelot的流量限制模塊。 什麼是流量控制(R ...
  • 簡介原文鏈接 .net core使用ocelot 第一篇 簡單使用 接上文,我將繼續介紹使用asp.net core 創建API網關,主要介紹身份驗證(authentication )相關內容。 API服務是需要保護的資源,我們應該儘可能的保證他們的安全。 通常,我們會使用aspnet securi ...
  • 1.首先用vs2017創建新的項目 2.開始引入swagger插件 右擊項目=>管理NuGet程式包=>搜索Swashbuckle.AspNetCore點擊安裝 3.打開Startup.cs類,編輯ConfigureServices類 編輯Configure 4.設置swagger ui頁面為啟動頁 ...
  • 單例中為防止多處註冊事件引起非同步觸發時發生報錯,網上找了一圈沒找到想要的方法。 【異常類型】:ArgumentException【異常信息】:該委托必須有一個目標(且僅有一個目標)。 結合網上資料整合了個方法 測試: using System; using System.Reflection; na ...
  • 簡介原文地址 接下來你會學習,基於asp.net core 用Ocelot實現一個簡單的API網關。或許你會疑問什麼是API網關,我們先看下麵的截圖 API網關是訪問你系統的入口,它包括很多東西,比如路由(Routing),身份驗證(Authentication),服務發現(Service disc ...
  • 第一步 下載安裝 一、主要因為現在mysql官網yum直接推送mysql8,mysql5.1,然而mysql8不穩定,mysql5.1版本又太低,要想用舊版本5.6就先下載相應的依賴包,安裝好依賴包,更改預設版本號後,再安裝。故總結就是通過官網下載依賴包+yum安裝的方式。 1.yum list | ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...