BRPC与UCX集成指南Channel远程调用的发起21 UCX ●NVIDIA Mellanox 开源项目 ●支持RDMA,TCP,Shared memory等 ●能透明支持多个链路传输,例如多网卡bond ●编译成.so或lib的方式,可以集成到应用程序里 ●有完善的配置功能,ucx_info可以dump配置信息 ●有性能测试工具 ●比较详细的文档2223 UCS ●是一些工具代码,例如 –链表 BRPC的Server开启RDMA server类有如下成员函数, 如何指定开启ucx连接?37 修改 BRPC ServerOptions ●ServerOptions添加成员 ●当前取舍的:TCP总是可用的, UCX作为选项38 Ucp Context ●只有一个全局对象,使用下列函数获取 ●UCP_Context* get_or_create_ucp_ctx() ●指定了FEATURE_AM, 多线程共享390 码力 | 66 页 | 16.29 MB | 6 月前3
BazelCurve 编译 Curve bazel 编译分享 程义 - 存储计算部 2022 年 11 月 11 日 C ur v e1 升级 bazel 到 4.2.2 2 支持 Debian9 、 Debian10 、 Debian11 3 支持 gcc clang 更新内容 Curve1 编译 Debian11-Dockerfile .bazelrc :build-debian11 cd /curve/ # 使用 gcc 编译 bazel build –config=gcc7-later … # use '-faligned-new' to enable C++17 over-aligned new support # 使用 clang 编译 CC=clang CXX=clang++ bazel build …2 制作镜像 com/curve/curvefs:chengyi01-debian113 修改 & 单元测试 curvefs/test/tools/curvefs_version_tool_test.cpp # 使用 clang 编译 CC=clang CXX=clang++ bazel build curvefs/...THANK YOU0 码力 | 6 页 | 4.69 MB | 6 月前3
Curve文件系统元数据持久化方案设计Page 9 of 12 单靠 redis 的 AOF 机制能否保证数据不丢失? 不能,因为 AOF 与 SET/DEL 这些操作不是同步进行的,即使刷入文件配置项 开启最高级别的 always 选项,也有可能丢失一个事件循环的数据,实现如下: appendfsync // : call(...) // propagate(...) feedAppendOnlyFile(cmd ) (2) 文件写入: 将 AOF 缓冲区的内容以 append 方式写入文件 (详见: aof.c/flushAppendOnlyFile) (3) 文件同步: 根据 appendfsync 配置选项决定文件同步频率, 该步骤与步骤 2 紧密关联 (详见: aof.c/flushAppendOnlyFile)© XXX Page 10 of 12 1. 所以,AOF 不能保证数据 100%0 码力 | 12 页 | 384.47 KB | 6 月前3
Curve质量监控与运维 - 网易数帆9/33新代码提交 Dailybuild测试 提交issue 开发设计 提交PR review +1 CI测试(编译、静态检 查、单元测试、集成测 试、覆盖率80%卡点) 合入master 分支 代码提交流程 异常自动化 测试 混沌测试 (每周一次) CI测试(编译、静态检 查、单元测试、集成测 试、覆盖率80%卡点) 邮件通知 Curve所有代码均在github托管。新 代码需要通过CI测试和code0 码力 | 33 页 | 2.64 MB | 6 月前3
CurveFs 用户权限系统调研任何权限检查之外,内核还会进行检查,并且两者都必须成功才能允许操作 。 。 。 内核执行标准的 UNIX 权限检查 如果文件系统在打开设备 fd 时的初始功能协商期间启用了 ACL 支持,则此挂载选项将被隐式激活。 在这种情况下,内核执行 ACL 和标准的 unix 权限检查 疑问:协商期间do_init()中的启用ACL的flags如何设置? 初始化时的 通过 : 功能协商 init()函数实现© * For future use.© XXX Page 14 of 33 */ unsigned reserved[22]; }; 未实现任何权限检查的文件系统通常 应在内部添加此选项,可与参数‘allow_other’一起达到共享文件访问控制。© XXX Page 15 of 33 # LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc0 码力 | 33 页 | 732.13 KB | 6 月前3
TGT服务器的优化支持复杂的存储系统,例如ceph rbd, sheepdog, glfs • 纯C代码,外加一些脚本 • 完整的源代码和维护工具、手册 • 编写IO驱动比较容易,容易扩展支持新的存储系统 • 代码独立,容易编译、调试、修改,适应性强让TGT支持curve • 编写curve驱动,底层异步提交I/O,pipeline • 利用NEBD PART 1接口,需要与nebdserver运行在同一台机器 •0 码力 | 15 页 | 637.11 KB | 6 月前3
共 6 条
- 1













