CurveBS IO Processing FlowCurveBS I/O processing flow Before introducing IO processing flow, we first describe the overall architecture, data organization and topology structure of CURVE. CurveBS uses the central sockets. l Nebdserver: Accepts requests from NEBDClient and calls Curve Client for corresponding processing. it can receive requests from different NEBDClients.3. Through the above splitting, NebdClient NebdClient replaces Curve Client and directly interfaces with upper services. There is no logical processing in NEBDClient, it just proxy requests and has limited retries, which ensuring that NEBDClient0 码力 | 13 页 | 2.03 MB | 6 月前3
TGT服务器的优化性能问题主要体现在不能有效使用多CPU • 对多个socket connection,在单线程里做event loop多路复用。 • 多个target时,如果挂的设备多,一旦客户端请求量大,就会忙不过来。 • 开源界有尝试修改 • 例如sheepdog的开发者提交过一个patch,但是测试效果不理想,分析 原因,event loop依然是瓶颈对TGT的性能优化 • IO是使用多个epoll 线程,充分发挥多CPU能力 params 都在主线程,而target epoll 线程也要使用这些数据,多线程冲突,数据一 致性问题就来了对TGT的性能优化(续) • 为每一个target增加一把锁 • Target event loop (TEL)线程和管理面线程使用这把锁互斥 • TEL在运行时锁住这把锁,管理面只能等待,等TEL线程进入epoll wait状 态,会释放这把锁,管理面可以增删改target信息。0 码力 | 15 页 | 637.11 KB | 6 月前3
BRPC与UCX集成指南●有完善的配置功能,ucx_info可以dump配置信息 ●有性能测试工具 ●比较详细的文档2223 UCS ●是一些工具代码,例如 –链表 –hash table –epoll event loop – memory register cache –config file24 UCT ●特点是比较原始,开销小,但是没有很强的功能 ●是网络接口层,主要功能是网卡发现和远程内 socket代码不少地方需要文件句柄表示连接,使用句柄可以减少代码修改。例如 SocketOptions.fd为-1表示尚未连接。 ●UcpCm返回的文件句柄实际上是pipe的写端句柄 ●记得brpc的event dispatcher是边沿触发 ●写端句柄永远不会触发可读事件 ●写端句柄第一次epoll会返回可写,可写是brpc判断连接成功的措施 ●UcpCm从来不会写入pipe,如果pipe有可读字节,会打印错误,说明有地方遗漏了修 ●Socket通过关闭UcpCm返回的句柄来关闭连接。此举和Socket原来代码一样,减少了修 改。UcpCm检测到pipe读端可读,关闭UcpConnection。 ●以上修改实际上绕过了BRPC的Event dispatcher触发读写机制,UCX自己完成发送接收45 连接管理器UcpCm ●连接管理类 –全局唯一对象 –通过UcpCm * get_or_create_ucp_cm(void)获取0 码力 | 66 页 | 16.29 MB | 6 月前3
OID CND Asia Slide: CurveFS● Requirements ○ Cloud Native ○ Easy operation and maintenance ○ High performance ● CEPH ○ Complex and Large amount of codes ○ system maintenance are difficult in corner cases ○ Performance requirements0 码力 | 24 页 | 3.47 MB | 6 月前3
NJSD eBPF 技术文档 - 0924版本CacheStatus, filemap[ ] {fd, chuk, size, kernel file, ver} • update list map BFP_MAP_TYPE_PERF_EVENT_ARRAY • updata cache mapCurve社区介绍 • Curve 的成⻓离不开⼤家的⽀持和参与。⾮常欢迎社区⽤户参与社区共建,可以 通过贡献代码、丰富⽂档、提交issue、改进⽹站、交流分享等,提⾼⾃⼰专业0 码力 | 20 页 | 7.40 MB | 6 月前3
Curve Detail Introduction for CNCF• CurveBS Data Organization • MetaData Server (MDS) • ChunkServer • Client • CurveBS IO processing flow • CurveBS Performance considerations • Cloud NativeAgenda • CurveFS Architecture •0 码力 | 23 页 | 6.53 MB | 6 月前3
Curve Cloud Nativestorage lifecycle(backup, failure, recovery) DEEP INSIGHTS Plan to Support metrics, alerts, log processing and workload analysis AUTO PILOT Plan to Support horizontal/vertical scaling, auto config tuning0 码力 | 9 页 | 2.85 MB | 6 月前3
共 7 条
- 1













