Golang大规模云原生应用管理实践Golang⼤规模云原⽣应⽤管理实践 刘洋(炎寻) 关于我 • 毕业于中国科学技术大学,定居杭州 • 就职于阿里云-云原生应用平台团队 • Problem Solver,聚焦中间件,容器,Kubernetes,PaaS平台… • OAM社区成员 开局一张图 规模化应用交付效率对比去年 每万笔峰值交易的IT成本对比4年前 提升1倍 下降80% 云原生 技术 稳定 成本 效率 策略与机制随着层次的变化而变化; 应用管理的策略与机制 应用 版本 工作负载 负载均衡 标签 流量 组件 日志 指标 容量 服务 依赖 路由规则 持久卷 部署策略 健康检查 … 灰度 发布 定时弹性 事件 指标弹性 分批发布 重启 回滚 日志管理 事件中心 指标监控 存储挂载 服务绑定 手动弹性 回退历史 负载均衡 报警 诊断 组件管理 服务治理 … 级以维持安全,高可用,高性能的状态; • … 能力复用 自动化 可观测 稳定 安全 开发者真正想要的是策略:大象无形的基础设施,坚如磐石的中间件,丰富高效的应用PaaS平台 基础设施 云原生PaaS平台提供应用管理策略 基础设施 K8s 云原生生态(CNCF) 云原生应用 4 6 7 2 3 5 1 1 Kubectl plugins 2 Apiserver extension 3 4 50 码力 | 23 页 | 7.70 MB | 1 年前3
08 Pipenv和Python包管理 明希Python的依赖管理及Pipenv @frostming 我是谁? • 研发效能·持续集成@Tencent • 从 2014 年开始用 Python,前测试,现开发 • 开源爱好者 • Pipenv 维护者之一 队长别开枪,是我! 目录 CONTENTS 为什么需要虚拟环境 为什么需要依赖管理 Pipenv 的简单使用 Python 包管理的未来 为什么需要虚拟环境 你是否遇到过这些问题: • virtualenvwrapper • pew • pyenv-venv • conda • direnv • ... pip ? + 我们为什么需要依赖管理 pip 是否已经足够使用? 它的依赖管理有什么问题? 碰到这些问题,该怎么办? 依赖冲突 $ pip install celery django-celery $ pip install celery $ pip (piptools) • Poetry • 没了 可用工具 Pipenv 的简单使用 • 自动创建、管理虚拟环境,与项目绑定 • 依赖解析、锁定 • 新的requirements.txt规范,基于TOML格式 • 优美的命令行界面 Pipenv Demo Python 包管理的未来 Python 包管理的未来 PEP 517 – 与构建系统无关的配置文件格式 PEP 518 – 在指定Python构建依赖0 码力 | 24 页 | 1.24 MB | 1 年前3
成都敏捷之旅十周年/4_廖靖斌如何使用影响地图发掘有价值的需求2018如何使用影响地图发掘有价值的需求 Eric Liao 2 内容 • 什么是影响地图? • 影响地图的价值? • 影响地图有哪些的核心要素? • 如何在实践中应用影响地图? www.leangoo.com 3 什么是影响地图 www.leangoo.com 4 影响地图 • 发明人是Example of specification《实例化需求》 的作者:Gojko 的作者:Gojko Adzic • Example of specification《实例化需求》一书的伟 大贡献之后(获得 2012年 Jolt Award 年度最佳图书 大奖) • 2012年10月他发行了 Impact Mapping《影响地 图》这本只有三个部份,共73页的小册子。它展现 了一种「让需求可视化的能力」 5 产品功能 产品功能 产品功能 产品功能 产品功能 业务解决方案, 如何解决问题 要做什么需求 和功能 www.leangoo.com 11 影响地图作为需求PK的依据 • 产品创意 • 体验优化和改善 • 市场和竞争对手分析 • 用户/客户反馈 • 老板 • 投资人 • 其他干系人 • 人人都是产品经理(团队 自己也是用户) 需求来源 需求PK 需求化粪池 PK成功 PK失败 提交0 码力 | 29 页 | 1.81 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 02 现代 C++ 入门:RAII 内存管理分为前半段和后半段,前半段主要介绍现代 C++ ,后半段主要介绍并行编程与优化。 1.课程安排与开发环境搭建: cmake 与 git 入门 2.现代 C++ 入门:常用 STL 容器, RAII 内存管理 3.现代 C++ 进阶:模板元编程与函数式编程 4.编译器如何自动优化:从汇编角度看 C++ 5.C++11 起的多线程编程:从 mutex 到无锁并行 6.并行编程常用框架: OpenMP 们来点(相对)简单的作为饭后甜点吧! C++98 :令人头疼的内存管理 • 在没有智能指针的 C++ 中,我们只能手 动去 new 和 delete 指针。这非常容易出 错,一旦马虎的程序员忘记释放指针,就 会导致内存泄露等情况,更可能被黑客利 用空悬指针篡改系统内存从而盗取重要数 据等。 RAII 解决内存管理的问题: unique_ptr • 似曾相识的情形……是的,和我们刚刚提 管对象生命周期的大权。 • 请根据你的具体情况,决定要选用哪一种 解决方案。 移交控制权后仍希望访问到 p 指向的对象 • 解决方案 2 中,有时候我们会遇到移交控 制权后,仍希望访问到对象的需求。 • 如果还是用 p 去访问的话,因为被移动构 造函数转移了, p 已经变成空指针,从而 出错。 解决方案:提前获取原始指针 • 最简单的办法是,在移交控制权给 func 前,提前通过0 码力 | 96 页 | 16.28 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 16 现代 CMake 模块化项目管理指南现代 CMake 模块化项目管理指南 彭于斌( @archibate ) 课件 & 源码: https://github.com/parallel101/course 往期录播: https://space.bilibili.com/263032155 找不到头文 件怎么办呀 CMake Cookbook 小彭老师建议 : ~~-·~·~-·~ -~·-·~·- 第一章:文件 / 1/lib/cmake/Qt5” 设置。 举例, Windows 系统, Qt5 • 例如我把 Qt5 安装到了 D:/Qt5.12.1 。 • 首先找到他里面的 Qt5Config.cmake 文件所在位置(可以用文件管理器的“搜索”功能)。 • 假如你找到该文件的位置是 D:/Qt5.12.1/msvc2017/lib/cmake/Qt5/Qt5Config.cmake ,那 么请你设置变量 Qt5_DIR 为 阶段,可以从命令行设置(注意要加引号): • cmake -B build -DQt5_DIR=”D:/Qt5.12.1/msvc2017/lib/cmake/Qt5” • (2) 全局启用。右键“我的电脑” ->“ 管理” ->“ 高级”添加一个环境变量 Qt5_DIR 值为 D:/Qt5.12.1/msvc2017/lib/cmake/Qt5 ,然后重启 Visual Studio 。这样以后你每次构建任 何项目,0 码力 | 56 页 | 6.87 MB | 1 年前3
全球架构师峰会深圳2015/研发体系构建_龚银_中型创业公司的技术管理之痛ArchSummit 全球架构师峰会 深圳站 2015 中型创业公司的 技术管理之痛 By 龚银 何谓「中型创业公司」 创业 公司 中型 创业公司 成熟 公司 自我介绍 从事过传统IT、搞过硬件、短暂创业、玩过互联网、...... 金蝶 比格邦 天猫 一加 12 • 传统IT • ERP • 广电行业 • 硬件 • 重视规划和系统思维的作用,根据现状随时调整轻重缓急 充分的沟通机制和反馈机制,让大家都能有一致的理解 聚焦与系统思维 技术和管理比重随时调整和平衡 技术、业务和管理的平衡 技术管理者大多对技术热衷,对管理忽视 技术、业务、系统花费精力和时间太多,团队管理精力太少 平衡 时间的分配:轻重缓急,适度授权 根据团队规模和业务情况,选择合适自己的占比 制定规划,不同的时间点和阶段重心进行调整 个人的几点有效实践 锻炼身体,保持良好的体力和心态 每天写管理日志,如实记录,定期反思 保持学习,每天至少预留30分钟时间思考,30分钟时间学习 定期的一对一会谈 心态、视野、行动 不同公司不同阶段有不 同的关注点和解决方法 ,没有标准答案,思考 并实践,找到最合适自 己的路 文化 管理 组织 技术 “在担任CEO的8年多时间里 ,只有3天是顺境,剩下的80 码力 | 36 页 | 2.49 MB | 1 年前3
Go Module在又拍云的实践0 码力 | 28 页 | 12.85 MB | 1 年前3
2022年美团技术年货 合辑架在速度和精度方面 仍有很大的提升的空间。基于此,我们通过研究并借鉴了业界已有的先进技术,开发 了一套新的目标检测框架——YOLOv6。该框架支持模型训练、推理及多平台部署 等全链条的工业应用需求,并在网络结构、训练策略等算法层面进行了多项改进和优 化,在 COCO 数据集上,YOLOv6 在精度和速度方面均超越其他同体量算法,相关 结果如下图 1 所示: 算法 2 > 2022年美团技术年货 基于量化敏感度分析的部分量化 YOLOv6s_repopt 在 PTQ 后的 mAP 达到了 40.9%,虽然比之前的 35.0% 有了 很大的改善,但仍然有 1.5% 的精度损失,还无法满足业务需求。因此,我们采用了 部分量化(Partial PTQ),一种使网络中的部分量化敏感层恢复浮点计算,来快速恢 复量化模型精度的方法。首先需要对网络中的每一层都进行量化敏感度分析。 我们在 YOLOv6s-repopt 3. 部署时优化 3.1 图优化 量化部署时,可以直接利用 TensorRT 的 PTQ 接口进行生成量化引擎,但是这种 方法往往精度损失较大。因此,一般要先进行 QAT,使量化模型精度满足业务需求, 然后导出带有“Quant”、“DeQuant”节点的 ONNX,最后再利用 TensorRT 构 建量化引擎。我们发现这两种方案最终生成的图结构并不相同,导致部署模型的实际 运行效率存在很大的差异,通常0 码力 | 1356 页 | 45.90 MB | 1 年前3
202309 MeterSphere ⼀站式开源持续测试平台⼀站式开源持续测试平台 2023 年 9 ⽉ 1 2 持续测试的兴起与现状 3 MeterSphere 加速企业持续测试落地 MeterSphere 企业版及专业服务 持续测试是持续交付发展的必然需求 持续交付可以降低发布⻛险,提⾼可靠性,使 软件能够根据⽤户反馈、市场变化和企业战略 变更不断进⾏调整。 持续交付能⼒是企业核⼼竞争⼒ 持续测试能⼒保障业务⾜够可靠 持续测试是执⾏⾃动化测试的过程,作为软件 保 证 业 务 ⾜ 够 稳 催⽣ 促进 为什么测试环节会成为持续交付中的瓶颈? 03. 价值衡量 • 需求/⽤户故事的⻛险评估缺失; • 关键性核⼼业务测试评估不⾜。 02. 碎⽚化管理 • 测试⼯具使⽤碎⽚化,不同的测试⼯ 具之间不兼容、⽆联动; • 测试⼈员管理碎⽚化,不同的测试⼈ 员协同缺失。 01. 测试速度 • ⾮探索性⼿⼯执⾏⽤例⽐重过多; • ⽤例编写和维护在协同上较为冗余; 测试平台是提⾼⽣产能效最⾼效⽅法之⼀ 开发中 等待测试 测试中 建设测试平台,提升测试整体的吞吐量 测试跟踪 测试计划 测试环境 测试数据 测试资源 API 项⽬ 管理 ⼈员 管理 接⼝ 测试 功能 测试 性能 测试 UI 测试 其他 测试 从系统⻆⾊的⻆度来看,下游的 ⽣产⼒决定上游的⽣产速度。通 过测试平台的建设,最终推动研 发效能的提升。 10 码力 | 45 页 | 4.65 MB | 1 年前3
敏捷开发/LIVE-211是什么,聊聊研发效能度量那些事儿@张燎燎原 阿⾥里里巴巴⾼高级技术专家 张燎燎原 阿里巴巴高级技术专家,他是敏捷和精益方法的积极实 践者和推动者,具有十多年软件研发一线实践经验,经 历过消费电子、通信及互联网多个行业,长期从事研发 管理及研发教练工作,负责组织级大规模敏捷导入实施 和转型的辅导。译有《程序员度量》、《软件驱魔》等。 同时,他热衷编写代码和开源,涉及软件设计、测试驱 动开发、代码重构、遗留代码的维护和持续集成及交付。 研发效能度量体系 R&D Efficiency Metrics 效能改进的愿景 目标 Vision Metrics 改进是系统工程 System improvement 没有度量量的管理理,就是… Content 好的度量是什么 What’s Good Metrics 研发效能度量体系 R&D Efficiency Metrics 效能改进的愿景 目标 Vision 研发效能的度量量 需求响应周期 持续发布能力 交付吞吐率 交付过程质量 交付质量 交付周期 开发周期 集成发布时⻓长 发布频率 单位时间交付需求数 创建/关闭缺陷分布 缺陷库存 单位时间线上缺陷 线上问题解决时⻓长 持续快速、高质量 地交付价值的能力 软件的交付过程 已选择 分析中 就绪 开发中 待测试 验收中 待发布 已发布 需求池 需求开发周期 需求交付周期 端到端价值流0 码力 | 36 页 | 7.19 MB | 1 年前3
共 492 条
- 1
- 2
- 3
- 4
- 5
- 6
- 50













