goofys 鲲鹏上面编译挂载与性能测试
goofys 鲲鹏上面编译挂载与性能测试
介质
使用go进行编译.
官网上面有 amd64的介质,但是没有aarch64的介质
需要自行编译
前几天一直编译失败. 周天在家自己测试了一把,根据github上面issue上面的描述编译成功了
发现的确比s3fs的性能要好, 计划下周进行一下与研发的联合测试工作.
境内代理
export GOPROXY=https://goproxy.io
编译安装
go install github.com/kahing/goofys@latest
mkdir -p go/src/github.com/kahing
cd go/src/github.com/kahing/
git clone https://github.com/kahing/goofys.git
也可以手工将zip包挪过来.
export GOPATH=/root/go
export GOOFYS_HOME=/root/go/src/github.com/kahing/goofys/
go install /root/go/src/github.com/kahing/goofys/
PATH=$PATH:/root/go/bin; export PATH
goofys --version
Hope this helps.
挂载
mkdir -p $HOME/.aws
cat >> $HOME/.aws/credentials << EOF
[default]
aws_access_key_id = minioadmin
aws_secret_access_key = minioadmin
EOF
mkdir /minio_goofys
goofys --debug_fuse --debug_s3 --endpoint http://192.168.255.45:9000 miniovoucher /minio_goofys
简单测试结果
写入性能
不带缓存
1G
1048576000字节(1.0 GB,1000 MiB)已复制,2.09474 s,501 MB/s
100M
104857600字节(105 MB,100 MiB)已复制,0.239955 s,437 MB/s
20M
20971520字节(21 MB,20 MiB)已复制,0.0931701 s,225 MB/s
带缓存
1G
1048576000字节(1.0 GB,1000 MiB)已复制,2.09269 s,501 MB/s
100M
104857600字节(105 MB,100 MiB)已复制,0.250175 s,419 MB/s
20M
20971520字节(21 MB,20 MiB)已复制,0.0845809 s,248 MB/s
本地文件系统
629145600字节(629 MB,600 MiB)已复制,0.167972 s,3.7 GB/s
读取性能
不带缓存
103875056字节(104 MB,99 MiB)已复制,0.162691 s,638 MB/s
带缓存
103875056字节(104 MB,99 MiB)已复制,0.0227822 s,4.6 GB/s
帮助效果
NAME:
goofys - Mount an S3 bucket locally
USAGE:
goofys [global options] bucket[:prefix] mountpoint
VERSION:
0.24.0-use `make build' to fill version hash correctly
GLOBAL OPTIONS:
-o value Additional system-specific mount options. Be careful!
--cache value Directory to use for data cache. Requires catfs and `-o allow_other'. Can also pass in other catfs options (ex: --cache "--free:10%:$HOME/cache") (default: off)
--dir-mode value Permission bits for directories. (default: 0755) (default: 493)
--file-mode value Permission bits for files. (default: 0644) (default: 420)
--uid value UID owner of all inodes. (default: 0)
--gid value GID owner of all inodes. (default: 0)
--endpoint value The non-AWS endpoint to connect to. Possible values: http://127.0.0.1:8081/
--profile value Use a named profile from $HOME/.aws/credentials instead of "default"
--use-content-type Set Content-Type according to file extension and /etc/mime.types (default: off)
--subdomain Enable subdomain mode of S3
TUNING OPTIONS:
--cheap Reduce S3 operation costs at the expense of some performance (default: off)
--no-implicit-dir Assume all directory objects ("dir/") exist (default: off)
--stat-cache-ttl value How long to cache StatObject results and inode attributes. (default: 1m0s)
--type-cache-ttl value How long to cache name -> file/dir mappings in directory inodes. (default: 1m0s)
--http-timeout value Set the timeout on HTTP requests to S3 (default: 30s)
AWS S3 OPTIONS:
--region value The region to connect to. Usually this is auto-detected. Possible values: us-east-1, us-west-1, us-west-2, eu-west-1, eu-central-1, ap-southeast-1, ap-southeast-2, ap-northeast-1, sa-east-1, cn-north-1 (default: "us-east-1")
--requester-pays Whether to allow access to requester-pays buckets (default: off)
--storage-class value The type of storage to use when writing objects. Possible values: REDUCED_REDUNDANCY, STANDARD, STANDARD_IA. (default: "STANDARD")
--sse Enable basic server-side encryption at rest (SSE-S3) in S3 for all writes (default: off)
--sse-kms key-id Enable KMS encryption (SSE-KMS) for all writes using this particular KMS key-id. Leave blank to Use the account's CMK - customer master key (default: off)
--sse-c value Enable server-side encryption using this base64-encoded key (default: off)
--acl value The canned ACL to apply to the object. Possible values: private, public-read, public-read-write, authenticated-read, aws-exec-read, bucket-owner-read, bucket-owner-full-control (default: off)
MISC OPTIONS:
--help, -h Print this help text and exit successfully.
--debug_fuse Enable fuse-related debugging output.
--debug_s3 Enable S3-related debugging output.
-f Run goofys in foreground.
--version, -v print the version
goofys 鲲鹏上面编译挂载与性能测试的更多相关文章
- 华为ARM64服务器上手体验--不吹不黑,用实际应用来看看TaiShan鲲鹏的表现
背景 中美贸易冲突以来,相信最大的感受,并不是我对你加多少关税,而是我有,可我不卖给你."禁售"成了市场经济中最大的竞争力. 相信也是因为这个原因,华为"备胎转正&quo ...
- 【Vue 入门】使用 Vue2 开发一个展示项目列表的应用
前言 一直没有找到一个合适的展示个人项目的模板,所以自己动手使用 Vue 写了一个.该模板基于 Markdown 文件进行配置,只需要按一定规则编写 Markdown 文件,然后使用一个 在线工具 转 ...
- Vue单页面骨架屏实践
github 地址: VV-UI/VV-UI 演示地址: vv-ui 文档地址:skeleton 关于骨架屏介绍 骨架屏的作用主要是在网络请求较慢时,提供基础占位,当数据加载完成,恢复数据展示.这样给 ...
- vue.js框架原理浅析
vue.js是一个非常优秀的前端开发框架,不是我说的,大家都知道. 首先我现在的能力,独立阅读源码还是有很大压力的,所幸vue写的很规范,通过方法名基本可以略知一二,里面的原理不懂的地方多方面查找资料 ...
- 前端JS基础知识
1. 原型 / 构造函数 / 实例 原型(prototype): 一个简单的对象,用于实现对象的 属性继承.可以简单的理解成对象的爹.在 Firefox 和 Chrome 中,每个JavaScript ...
- 搭建vue环境
1. 下载安装nodejs 截至2018-06-05 最新稳定版本为 8.11.2,直接 next ,不改目录. PS C:\Users\Administrator> node -v v8.11 ...
- 团队协作统一vue代码风格,vscode做vue项目时的一些配置
1. 安装Vetur 扩展 主要是用于让vscode能识别vue文件,对vue代码进行高丽处理,并且它内置了一些代码格式化的设置 2. 安装ESLint 如果你的项目已经开启了eslint规范, 再有 ...
- vue2.0 vs vue
vue2.0相比vue1.0 有哪些改变,今天总结了一下 vue2.0组件中 template 不在支持代码片段 //vue1.0组件中template写法 <template> < ...
- Vue学习1:实例及生命周期
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 08: vue组件
1.1 初识组件 1.什么是组件 1. Html中有组件,是一段可以被复用的结构代码 2. Css中有组件,是一段可以被复用的样式 3. Js中有组件,是一段可以被复用的功能 4. Vue中也有组件, ...
随机推荐
- 一文了解Vprix容器流媒体平台和传统云桌面的区别、优劣势
在当今数字化时代,随着云计算和远程办公的兴起,云桌面项目成为了提升工作效率和灵活性的重要工具.云桌面项目通过将用户的桌面环境和应用程序虚拟化,为用户提供了随时随地访问个人工作环境的便利.本文将介绍Vp ...
- 2023-08-18:用go写算法。你会得到一个字符串 text, 你应该把它分成 k 个子字符串 (subtext1, subtext2,…, subtextk)。 要求满足: subtexti 是
2023-08-18:用go写算法.你会得到一个字符串 text, 你应该把它分成 k 个子字符串 (subtext1, subtext2,-, subtextk). 要求满足: subtexti 是 ...
- PC端和移动端应用的开发差异
PC端和移动端应用的开发差异主要体现在用户界面(UI)和用户体验(UX)设计.交互设计.性能优化.适配策略等方面.
- Ambient Mesh:Istio 数据面新模式
摘要:基于Istio对于Kubernetes生态的完美补充,随着Kubernetes的大规模普及,Istio 数据面新模式 -Ambient MeshIstio也实现了对用户心智以及市场的快速抢占. ...
- Redis Sentinel 源码:Redis的高可用模型分析
摘要:本文通过对Redis Sentinel源码的理解,详细说明Sentinel的代码实现方式. Redis Sentinel 是Redis提供的高可用模型解决方案.Sentinel可以自动监测一个或 ...
- 教你如何用Keras搭建分类神经网络
摘要:本文主要通过Keras实现了一个分类学习的案例,并详细介绍了MNIST手写体识别数据集. 本文分享自华为云社区<[Python人工智能] 十七.Keras搭建分类神经网络及MNIST数字图 ...
- AtCoder Beginner Contest 335 总结
ABC335总结 A.202<s>3</s> 翻译 给你一个由小写英文字母和数字组成的字符串 \(S\). \(S\) 保证以 2023 结尾. 将 \(S\) 的最后一个字符 ...
- 【HZERO】定时任务
- 生成学习全景:从基础理论到GANs技术实战
本文全面探讨了生成学习的理论与实践,包括对生成学习与判别学习的比较.详细解析GANs.VAEs及自回归模型的工作原理与结构,并通过实战案例展示了GAN模型在PyTorch中的实现. 关注TechLea ...
- Codeforce:1300B. Assigning to Classes (math)
解题思路 题目说的意思是,给一个2n个数的数组,注意n为奇数,将这个数组平均分为2份,假设为c1和c2. c1和c2是奇数个元素的数组,比如数组[1,2,3],那么中位数就是2. 那么如何求得中位数差 ...