| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
大幅度提高本地ut脚本速度(几分钟到几秒) Co-authored-by: j00808874<jiangchanghong3@huawei.com> # message auto-generated for no-merge-commit merge: !94 merge mr into develop 大幅度提高本地ut脚本速度(几分钟到几秒) Created-by: j00808874 Commit-by: j00808874 Merged-by: chenyz6 Description: # Pull Request Template ## Description <!-- Provide a clear summary of the change, the problem it solves, and the technical approach. --> ## Related Issues <!-- Replace with actual issue numbers. Example: Closes #123, Related to #456 --> ## Type of Change - [ ] Bug fix - [ ] New feature - [ ] Performance optimization - [ ] Documentation update - [ ] Other (please describe):_______________ ## Testing <!-- Describe how the changes were tested. Include: - Unit/integration test coverage - Manual validation steps - Links to CI reports (e.g., CIDA) if available - Note any pending tests --> ## Checklist - [ ] I have performed a self-review of my own code. - [ ] I have updated the documentation. - [ ] I have added tests to prove my changes are effective. See merge request: Ascend/memcache!94 | 7 个月前 | |
[ci] style: 引入 pre-commit 并应用全代码库格式化 Co-authored-by: shilinlee<836160610@qq.com> # message auto-generated for no-merge-commit merge: !347 merge worktree-precommit-format into develop [ci] style: 引入 pre-commit 并应用全代码库格式化 Created-by: shilinlee_com Commit-by: shilinlee Merged-by: yrewzjsx Description: ## 合入来源 - [ ] 需求 - [x] 问题单 - [ ] issue ## 问题/功能描述 引入 pre-commit CI 格式化检查机制,并对全代码库应用自动格式化修正。 ## 修改方案描述 1. 新增/更新 pre-commit 基础设施: .clang-format、.pre-commit-config.yaml、script/ci-pre-commit-pr.sh CI 脚本 2. 对全代码库执行 pre-commit 自动格式化:clang-format、文件末尾补换行、去除尾随空格等 ## 是否涉及UT/ST - [ ] 是 - [x] 否(说明理由:纯格式化调整,不涉及功能逻辑改动) ## 开发自检 - [x] 规范:未超过1k;超过1k已完成备案;反合入需要标题注明【反合】 - [x] 规范:已关联issue或里程碑 - [x] 规范:不需要UT/ST且已说明理由;需要且已包含UT/ST - [x] 安全:涉及对外接口/参数/环境变量改动,并同步修改资料 - [x] 安全:未引入三方开源软件;引入三方开源软件并经过安全评审 - [x] 安全:未新增对外接口/参数;新增对外接口/参数有校验 - [x] 规范:未涉及资料改动;涉及资料改动并已完成修改 See merge request: Ascend/memcache!347 | 1 个月前 | |
【bugfix】 client dns parser error fix Co-authored-by: littleyellowbicycle<liguo29@h-partners.com> # message auto-generated for no-merge-commit merge: !396 merge ip_fix into develop 【bugfix】 client dns parser error fix Created-by: littleyellowbicycle Commit-by: littleyellowbicycle Merged-by: yrewzjsx Description: # 合入来源 - [ ] 需求 - [ ] 问题单 - [√ ] issue # 问题/功能描述 dns 修改后,client没有重新进行域名解析,导致client 跟 meta_service 断链 # 修改方案描述 DNS 更新后重连特性 · 方案描述 1. 背景与目标 集群/HA 场景下,meta service 可能因主备切换、Pod 重建等原因换 IP,通过 DNS(域名 → 新 IP)对外暴露稳定端点。要求:local service 不重启、不改配置文件的情况下,DNS 指向变更后,到 meta service 的连接自动切到新 IP 并重连。 涉及两条到 meta service 的连接: - meta 网络连接(meta_service_url,端口如 5010):元数据操作(put/get/remove/bm 注册)。 - config store 连接(config_store_url,端口如 6000/6010):BM 成员信息交换/心跳同步。 两条连接由不同组件实现,DNS-follow 的实现机制也不同。 2. 现状与约束 - meta_service_url 由 memcache 的 MetaNetClient 实现,自带断链回调(RegLinkBrokenHandler),可事件驱动重解析重连——天然支持 DNS 切换。 - config_store_url 由 memfabric 的 smem_bm(3rdparty 库对象)实现,其重连是库内部 ReConnectAfterBroken 自做的、连固定 IP,不向 memcache 暴露断链回调(smem_bm 仅有 group-member 回调)。memcache 拿不到 BM 的断链事件,无法在"重连那一刻"触发重解析。 - 配置层 Configuration::ResolveAllUrlDomains 原本把 config_store_url 解析成 IP 后丢弃域名,BM 只持有 IP,没有重解析的素材。 结论:meta_service_url 可事件驱动;config_store_url 在 memcache 仓内只能周期性主动喂新 IP(真·断链事件驱动需给 memfabric 加 smem_bm_register_client_broken_handler,属跨仓改动,暂不做)。 3. 总体架构 配置层 Configuration::ResolveAllUrlDomains ├ meta_service_url → 保留域名(kPreservedUrlKeys) 给 MetaNetClient 每次连接重解析 ├ local config_store_url → 解析成IP覆盖 + 保留域名到domain key 给 BM 初始化用IP + 周期重解析用域名 └ 其它URL(meta config_store/http, hcom) → 解析成IP覆盖 这些不需DNS切换 meta service (服务端) └ LoadConfig() 补调 ResolveAllUrlDomains → 域名配置文件启动时解析成IP再bind local service (客户端, memcache代码) ├ MetaNetClient (meta_service_url) │ └ 断链回调 HandleLinkBroken → ResolveAndConnect → ResolveUrlToIpPort 重解析 → 重连(事件驱动, 零延迟) │ + 连接前 ExtractIpPortFromUrl 注册端口到memfabric表(修ConnectToPeerServer的GetParser断言) └ MmcBmProxy → smem_bm对象(config_store_url, memfabric库) └ 周期任务 ReResolveStoreUrl → 重解析域名 → UpdateStoreUrl喂新IP → smem ReConnectAfterBroken重连(轮询, ≤interval延迟) 4. 配置项与触发条件 mmc-local.conf: ock.mmc.meta_service_url = tcp://<域名>:5010 # 域名, 事件驱动重连 ock.mmc.local_service.config_store_url = tcp://<域名>:6010 # 域名, 周期重解析 ock.mmc.dynamic_config.enable = true # 开周期任务 ock.mmc.dynamic_config.interval = 5 # 重解析周期(秒) - 两个 URL 都必须用域名(字面 IP 重解析得同值、切不了)。 - local service 须从配置文件启动(MMC_LOCAL_CONFIG_PATH),周期任务靠 configFilePath 触发;程序化 setup(config) 无文件则不跑周期任务。 - meta_service_url 的断链重连不依赖 dynamic_config.enable(MetaNetClient 自带)。 5. 未覆盖项 - 真·断链事件驱动的 config store 重解析:需给 memfabric(3rdparty)加 smem_bm_register_client_broken_handler API,memcache 在 BM 建好后挂回调、断链即重解析。零延迟、不轮询,但跨仓改 3rdparty,暂未做;当前周期方案为其可接受的替代。 - hcom_url 的 DNS 切换:UpdateConfig 目前未单独处理 hcom_url 的 UpdateStoreUrl(如需要可补)。 # 是否涉及UT/ST - [√ ] 是 - [ ] 否(说明理由) # 开发自检 - [√ ] 规范:未超过1k;超过1k已完成备案;反合入需要标题注明【反合】 - [√ ] 规范:已关联issue或里程碑 - [√ ] 规范:不需要UT/ST且已说明理由;需要且已包含UT/ST - [√ ] 安全:涉及对外接口/参数/环境变量改动,并同步修改资料 - [√ ] 安全:未引入三方开源软件;引入三方开源软件并经过安全评审 - [√ ] 安全:未新增对外接口/参数;新增对外接口/参数有校验 - [ √] 规范:未涉及资料改动;涉及资料改动并已完成修改     See merge request: Ascend/memcache!396 | 1 个月前 | |
fix:修复检视bug Co-authored-by: gcw_qYJeyWK4<jiangbo97@huawei.com> # message auto-generated for no-merge-commit merge: !416 merge feat/rewarm-allocated-ok into develop fix:修复检视bug Created-by: gcw_qYJeyWK4 Commit-by: gcw_qYJeyWK4 Merged-by: yrewzjsx Description: # 合入来源 - [ ] 需求 - [ ] 问题单 - [x] issue # 问题/功能描述 # 修改方案描述 # 是否涉及UT/ST - [ ] 是 - [x] 否(说明理由) # 开发自检 - [x] 规范:未超过1k;超过1k已完成备案;反合入需要标题注明【反合】 - [x] 规范:已关联issue或里程碑 - [x] 规范:不需要UT/ST且已说明理由;需要且已包含UT/ST - [x] 安全:涉及对外接口/参数/环境变量改动,并同步修改资料 - [x] 安全:未引入三方开源软件;引入三方开源软件并经过安全评审 - [x] 安全:未新增对外接口/参数;新增对外接口/参数有校验 - [x] 规范:未涉及资料改动;涉及资料改动并已完成修改 See merge request: Ascend/memcache!416 | 1 个月前 | |
refactor: 替换 cpp-httplib 为 acclinks httpserver,metrics 解除 IP 限制并支持 mTLS Co-authored-by: yangqi12138<yangqi124@h-partners.com> # message auto-generated for no-merge-commit merge: !360 merge cherry-pick/metrics-mtls into develop refactor: 替换 cpp-httplib 为 acclinks httpserver,metrics 解除 IP 限制并支持 mTLS Created-by: yangqi12138 Commit-by: yangqi12138 Merged-by: liu1103xwxw Description: # 合入来源 - [ ] 需求 - [ ] 问题单 - [x] issue # 问题/功能描述 # 修改方案描述 refactor: 替换 cpp-httplib 为 acclinks httpserver,metrics 解除 IP 限制并支持 mTLS - 移除 cpp-httplib 依赖,改用 acclinks AccHttpServer - metrics 端口解除 127.0.0.1 限制,支持任意 IP/域名 - metrics HTTP 服务独立支持 mTLS(双向认证) - 新增 ock.mmc.metrics.tls.* 配置项 # 是否涉及UT/ST - [x] 是 - [ ] 否(说明理由) # 开发自检 - [x] 规范:未超过1k;超过1k已完成备案;反合入需要标题注明【反合】 - [x] 规范:已关联issue或里程碑 - [x] 规范:不需要UT/ST且已说明理由;需要且已包含UT/ST - [x] 安全:涉及对外接口/参数/环境变量改动,并同步修改资料 - [x] 安全:未引入三方开源软件;引入三方开源软件并经过安全评审 - [x] 安全:未新增对外接口/参数;新增对外接口/参数有校验 - [x] 规范:未涉及资料改动;涉及资料改动并已完成修改 验证截图:    HTTPS:  See merge request: Ascend/memcache!360 | 1 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 7 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 |