Service Mesh微服务化和传统框架微服务化混合部署协同实践分享0 码力 | 11 页 | 11.76 MB | 1 年前3
Kubernetes + OAM 让开发者更简单更复杂了!” Kubernetes 对于应用开发复杂在哪里 1. 关注点不同 业务研发 2. 语义与抽象程度不同 业务运维 3. 交互与使用习惯不同 业务研发、运维 YAML 文件 图形化界面 命令行工具 IaC 配置语言 扩容策略 • 当 RT 上升 10% 时,自动扩容 100 个实例 发布策略 • 当金丝雀实例通过 99% 的测试时,按 每小时切 10% 流量 的节奏进行发布 基础设施层能力 业务运维 平台工程师 业务研发 扩容策略 发布策略 分批策略 访问控制 流量配置 应用管理平台 (Openshift、Cloudfoundry、阿里内部、腾讯内部 …) 应用 CI/CD 流水线 K8s PaaS K8s 但是,K8s PaaS 正面临着“能力困境” 研发与运维人员日益增长的应用管理诉求 PaaS 有限的、不可扩展的专有API 与能力 K8s K8s 生态“无限”的应用基础设施能力 而且,PaaS 还面临着严重分化 PaaS A Kubernetes PaaS B PaaS C 研发效率 学习成本 同一个公司内数个 PaaS on Kubernetes 思考: 1. 基于 Kubernetes 2. 用户友好、高可扩展 3. 统一、标准化 理想中的应用管理平台 目标一:一个面向用户,应用为中心 CI/CD 流水线 应用0 码力 | 22 页 | 10.58 MB | 1 年前3
WeRoBot 1.10.0 微信公众号开发框架文档delete_menu() 删除自定义菜单。 返回的 JSON 数据包 个性化菜单接口 详细请参考 http://mp.weixin.qq.com/wiki/0/c48ccd12b69ae023159b4bfaa7c39c20.html Client.create_custom_menu(menu_data, matchrule) 创建个性化菜单: button = [ { "type":"click" 如上所示的匹配规则 返回的 JSON 数据包 Client.delete_custom_menu(menu_id) 删除个性化菜单。 menu_id – 菜单的 ID 返回的 JSON 数据包 Client.match_custom_menu(user_id) 测试个性化菜单匹配结果。 user_id – 要测试匹配的用户 ID 返回的 JSON 数据包 获取自定义菜单配置接口 详细请参考 user_type='openid') 开发者可通过该接口发送消息给指定用户,在手机端查看消息的样式和排 版。为了满足第三方平台开发者的需求,在保留对 openID 预览能力的同 时,增加了对指定微信号发送预览的能力,但该能力每日调用次数有限制 (100 次),请勿滥用。 :param user_type: 预览对象,openid 代表以 openid 发送,wxname 代表以微信号发送。 :param0 码力 | 101 页 | 73.89 KB | 1 年前3
WeRoBot 1.12.0 微信公众号开发框架文档delete_menu() 删除自定义菜单。 返回的 JSON 数据包 个性化菜单接口 详细请参考 http://mp.weixin.qq.com/wiki/0/c48ccd12b69ae023159b4bfaa7c39c20.html Client.create_custom_menu(menu_data, matchrule) 创建个性化菜单: button = [ { "type":"click" 如上所示的匹配规则 返回的 JSON 数据包 Client.delete_custom_menu(menu_id) 删除个性化菜单。 menu_id – 菜单的 ID 返回的 JSON 数据包 Client.match_custom_menu(user_id) 测试个性化菜单匹配结果。 user_id – 要测试匹配的用户 ID 返回的 JSON 数据包 获取自定义菜单配置接口 详细请参考 user_type='openid') 开发者可通过该接口发送消息给指定用户,在手机端查看消息的样式和排 版。为了满足第三方平台开发者的需求,在保留对 openID 预览能力的同 时,增加了对指定微信号发送预览的能力,但该能力每日调用次数有限制 (100 次),请勿滥用。 user_type – 预览对象,openid 代表以 openid 发送, wxname 代表以微信号发送。 msg_type0 码力 | 103 页 | 74.49 KB | 1 年前3
WeRoBot 1.10.1 微信公众号开发框架文档delete_menu() 删除自定义菜单。 返回的 JSON 数据包 个性化菜单接口 详细请参考 http://mp.weixin.qq.com/wiki/0/c48ccd12b69ae023159b4bfaa7c39c20.html Client.create_custom_menu(menu_data, matchrule) 创建个性化菜单: button = [ { "type":"click" 如上所示的匹配规则 返回的 JSON 数据包 Client.delete_custom_menu(menu_id) 删除个性化菜单。 menu_id – 菜单的 ID 返回的 JSON 数据包 Client.match_custom_menu(user_id) 测试个性化菜单匹配结果。 user_id – 要测试匹配的用户 ID 返回的 JSON 数据包 获取自定义菜单配置接口 详细请参考 user_type='openid') 开发者可通过该接口发送消息给指定用户,在手机端查看消息的样式和排 版。为了满足第三方平台开发者的需求,在保留对 openID 预览能力的同 时,增加了对指定微信号发送预览的能力,但该能力每日调用次数有限制 (100 次),请勿滥用。 user_type – 预览对象,openid 代表以 openid 发送, wxname 代表以微信号发送。 msg_type0 码力 | 102 页 | 73.98 KB | 1 年前3
WeRoBot 1.13.1 微信公众号开发框架文档delete_menu() 删除自定义菜单。 返回的 JSON 数据包 个性化菜单接口 详细请参考 http://mp.weixin.qq.com/wiki/0/c48ccd12b69ae023159b4bfaa7c39c20.html Client.create_custom_menu(menu_data, matchrule) 创建个性化菜单: button = [ { "type":"click" 如上所示的匹配规则 返回的 JSON 数据包 Client.delete_custom_menu(menu_id) 删除个性化菜单。 menu_id – 菜单的 ID 返回的 JSON 数据包 Client.match_custom_menu(user_id) 测试个性化菜单匹配结果。 user_id – 要测试匹配的用户 ID 返回的 JSON 数据包 获取自定义菜单配置接口 详细请参考 user_type='openid') 开发者可通过该接口发送消息给指定用户,在手机端查看消息的样式和排 版。为了满足第三方平台开发者的需求,在保留对 openID 预览能力的同 时,增加了对指定微信号发送预览的能力,但该能力每日调用次数有限制 (100 次),请勿滥用。 user_type – 预览对象,openid 代表以 openid 发送, wxname 代表以微信号发送。 msg_type0 码力 | 105 页 | 76.25 KB | 1 年前3
WeRoBot 1.10.0 微信公众号开发框架文档delete_menu() 删除自定义菜单。 返回的 JSON 数据包 个性化菜单接口 详细请参考 http://mp.weixin.qq.com/wiki/0/c48ccd12b69ae023159b4bfaa7c39c20.html Client.create_custom_menu(menu_data, matchrule) 创建个性化菜单: button = [ { "type":"click" 如上所示的匹配规则 返回的 JSON 数据包 Client.delete_custom_menu(menu_id) 删除个性化菜单。 menu_id – 菜单的 ID 返回的 JSON 数据包 Client.match_custom_menu(user_id) 测试个性化菜单匹配结果。 user_id – 要测试匹配的用户 ID 返回的 JSON 数据包 获取自定义菜单配置接口 详细请参考 user_type='openid') 开发者可通过该接口发送消息给指定用户,在手机端查看消息的样式和排 版。为了满足第三方平台开发者的需求,在保留对 openID 预览能力的同 时,增加了对指定微信号发送预览的能力,但该能力每日调用次数有限制 (100 次),请勿滥用。 :param user_type: 预览对象,openid 代表以 openid 发送,wxname 代表以微信号发送。 :param0 码力 | 101 页 | 73.89 KB | 1 年前3
WeRoBot 1.11.0 微信公众号开发框架文档delete_menu() 删除自定义菜单。 返回的 JSON 数据包 个性化菜单接口 详细请参考 http://mp.weixin.qq.com/wiki/0/c48ccd12b69ae023159b4bfaa7c39c20.html Client.create_custom_menu(menu_data, matchrule) 创建个性化菜单: button = [ { "type":"click" 如上所示的匹配规则 返回的 JSON 数据包 Client.delete_custom_menu(menu_id) 删除个性化菜单。 menu_id – 菜单的 ID 返回的 JSON 数据包 Client.match_custom_menu(user_id) 测试个性化菜单匹配结果。 user_id – 要测试匹配的用户 ID 返回的 JSON 数据包 获取自定义菜单配置接口 详细请参考 user_type='openid') 开发者可通过该接口发送消息给指定用户,在手机端查看消息的样式和排 版。为了满足第三方平台开发者的需求,在保留对 openID 预览能力的同 时,增加了对指定微信号发送预览的能力,但该能力每日调用次数有限制 (100 次),请勿滥用。 user_type – 预览对象,openid 代表以 openid 发送, wxname 代表以微信号发送。 msg_type0 码力 | 103 页 | 74.21 KB | 1 年前3
IstioMeetupChina 服务网格热升级技术分享for ServiceMesh Data-Plane • 造成请求失败,影响业务质量 • 重启Pod导致业务容器也被重启,需要执行重新初始化 • 不增加workload数量升级,则服务容量受损 • 增加workload保持服务容量不变,应对大规模场景难以在扩容规模和操作便捷度上取 得令人满意的平衡 传统Sidecar升级方式的缺点 3 为什么需要服务网格数据面热升级 Why do we Implement Hot-Upgrade 6 • Sidecar生命周期管理能力 • 启动两个Sidecar,以进行Envoy热重启的排水流程两个实例并存的阶段 • 能够对整个热升级流程中的镜像替换进行控制 实现热升级 Implement Hot-Upgrade 7 • Sidecar生命周期管理能力 • 启动两个Sidecar,以进行Envoy热重启的排水流程两个实例并存的阶段 Hot-Upgrade 8 • Envoy热重启参数的协商 • PilotAgent需要使用正确的Epoch参数启动Envoy,才能触发热重启 • PilotAgent需要有从旧实例处得到Epoch的能力 – UDS • 接管StatusPort监听(15021) 实现热升级 Implement Hot-Upgrade 9 实现热升级 Implement Hot-Upgrade 阿里云服务网格热升级完整流程0 码力 | 14 页 | 2.25 MB | 1 年前3
Kubernetes for Edge Computing across
Inter-Continental Haier Production Sites• tensorflowers.cn • Kubeflow Chinese community initiator • 企业级产品与解决方案 • Compass: 打通业务与数据、从数字化到智能化转 型 • Clever: 基于容器的 AI PaaS 平台(AI Devops、资 源管理任务调度) 工业互联网平台 - 制造业大势所趋 • 全球工业互联网平台数量 > 150 国家 • 资源申请:按峰值30%进 行申请 • 峰值:1000TPS, 平时: 100TPS • 做自己擅长的事情,合作 方式开发 • 产品迭代:如何持续演进 和优化 • 外包管理:如何标准化降 低管理成本,提高质量 外包开发模式 资源利用率KPI 01 04 02 03 海尔集团业务转型 - 架构演进 工业互联网 - 行业分析 海尔工业互联网 -才云整体解决方案 海尔工业互联网 Hystrix Zuul Feign Apidoc Metrics Trace Zuul Feign Springcloud: • 相对封闭 • 技术栈比较重 • 需额外维护注册中心 • 一些场景在容器平台中已不复存在 海尔框架: • Quickstart工具支持,填写应用名称,快速生成代码框架 • 充分借助容器平台功能 海尔工业互联网 - 微服务之负载均衡 V IP node0 码力 | 33 页 | 4.41 MB | 1 年前3
共 87 条
- 1
- 2
- 3
- 4
- 5
- 6
- 9













