Go 构建大型开源分布式数据库技术内幕
Go 搭建大型开源分布式数据库技术内幕 shenli@PingCAP 关于我 ● 申砾 (Shen Li) ● TiDB 技术负责人 ● 网易有道 / 360搜索 / PingCAP ● Infrastructure software engineer 为什么需要一个新的数据库? 从单机数据库到 NewSQL ● 关系型数据库 ● NoSQL ● 中间件 ● NewSQL0 码力 | 44 页 | 649.68 KB | 1 年前3大规模高性能区块链架构设计模式与测试框架-李世敬
区块链发展历程 2008 2009 • 中本聪发表了比特币的创世论文 《比特币: 一种点对点的电子现 金系统》,标志着区块链作为一 项完整的集成创新技术正式诞生 • 比特币诞生,是世界上首个区 块链应用系统。发展至今有力 地证明了区块链技术的创新性、 颠覆性和顽强的生存能力 中本聪 比特币Bitcoin 2013 • 以太坊发布以太坊白皮书, 引入智能合约,推出首个 图灵完备的区块链平台, 区块链联盟,致力于探索区块链 技术在金融行业的应用产品,自 此联盟链技术逐渐获得广泛关注 R3 CEV区块链联盟 2015 2015 2020 6 趣链科技 版权所有 ©2016-2021 6 趣链科技 版权所有 ©2016-2021 6 趣链科技 版权所有 ©2016-2021 6 区块链技术定义 区块链是由分布式数据存储、点对点传输、共识机制、加密算法等计算机技术构成的多中心 化系统 不可篡改(可信存证) 多方业务系统数据共享 ü 跨机构业务协作 核心特性 7 趣链科技 版权所有 ©2016-2021 7 趣链科技 版权所有 ©2016-2021 7 趣链科技 版权所有 ©2016-2021 7 区块链技术定义 Code is the rule . 8 趣链科技 版权所有 ©2016-2021 8 趣链科技 版权所有 ©2016-2021 8 趣链科技 版权所有 ©2016-2021 8 交易 区块0 码力 | 39 页 | 56.58 MB | 1 年前3go-zero开源项目的成长史
分析⽤户 • 分析ROI go-zero 开源伊始 • 技术分享 • GoCN • Go夜读 • InfoQ • ArchSumit go-zero 开源伊始 • 技术⽂章 • 微服务实践公众号 • 知乎 • InfoQ • GoCN • 开源中国 • … go-zero 开源伊始 • 技术⽂章(国外) • hacker news • reddit 更深⼊的理解⽤户的需求,避免闭⻔造⻋ 分享要注重⼝碑 • GopherChina⾦牌讲师 • ArchSumit⾦牌讲师 • Go夜读年度最佳、最多播放量的分享 技术⽂章 技术⽂章 技术⽂章 技术⽂章 go-zero 推⼴思路 • 项⽬本身才是关键 • 技术⼤会 • 线上线下分享 • 社区建设 • 国内国外兼顾 • 推⼴⾃⼰,但不要排斥、攻击别⼈ • ⽣态发展,上下游协同 go-zero 多个群?⼀个超级⼤群? • geek 抱怨微信不好⽤? • TG 更适合技术交流? go-zero 社区发展 • 如何打造社区氛围 • 怎样培养技术氛围? • 是否允许吹⽔? • 内容越界是否管理? • 群⾥冲突怎么解决? go-zero 社区发展 • 壮⼤社区 • 核⼼成员 • 热⼼成员 • 如何成就⼤家(技术和机会) • 极个别极端成员如何应对? go-zero 的未来0 码力 | 31 页 | 4.83 MB | 9 月前301. Erda 基于云原生的微服务可观测性 - 刘浩杨
微服务和监控平台负责人 目 录 微服务系统监控的挑战 01 可观测性技术理论 02 Erda 服务观测平台技术内核分析 03 Erda 服务观测平台功能概览 04 Erda:新一代企业级云原生 PaaS 平台 当前微服务系统面临的挑战 目 录 微服务系统监控的挑战 01 可观测性技术理论 02 Erda 服务观测平台技术内核分析 03 Erda 服务观测平台功能概览 04 可观测性三大支柱 (二)Metrics 时序模型 Writes are vertical,reads are horizontal (三)数据关联 目 录 微服务系统监控的挑战 01 可观测性技术理论 02 Erda 服务观测平台技术内核分析 03 Erda 服务观测平台功能概览 04 Erda MSP 微服务观测平台 Erda 微服务观测平台优势 指标覆盖完整 通过多种探针,覆盖基础 设施、业务系统、用户终 根据容量和 TTL 自动评估数据 删除周期 InfluxQL To ES 消除 ES 查询的复杂性 统一图表交互接口 目 录 微服务系统监控的挑战 01 可观测性技术理论 02 Erda 服务观测平台技术内核分析 03 Erda 服务观测平台功能概览 04 谢谢观看0 码力 | 25 页 | 6.96 MB | 1 年前3Golang 101(Go语言101 中文版) v1.21.a
2 第33章:表达式估值顺序规则 第34章:值复制成本 第35章:边界检查消除 并发编程 第36章:并发同步概述 第37章:通道用例大全 第38章:如何优雅地关闭通道 第39章:其它并发同步技术 - 如何使用sync标准库包 第40章:原子操作 - 如何使用sync/atomic标准库包 第41章:Go中的内存顺序保证 第42章:一些常见并发编程错误 内存相关 第43章:内存块 句。这样的语句常常 会包含很多子语句。 上面所提及的流程控制语句都属于狭义上的流程控制语句。 下一篇文章中将要介绍 的协程、延迟函数调用、以及恐慌和恢复(第13章),以及今后要介绍的并发同步 技术(第36章)属于广义上的流程控制语句。 本文余下的部分将只解释三种基本的流程控制语句和各种代码跳转语句。其它上面 提及的语句将在后面其它文章中逐渐介绍。 if-else条件分支控制代码块 第12章:基本流程控制语法 这些情形被称为数据竞争(data race)。并发编程的一大任务就是要调度不同计 算,控制它们对资源的访问时段,以使数据竞争的情况不会发生。 此任务常称为并 发同步(或者数据同步)。Go支持几种并发同步技术,这些并发同步技术将在后面 的章节中逐一介绍。 并发编程中的其它任务包括: 决定需要开启多少计算; 决定何时开启、阻塞、解除阻塞和结束哪些计算; 决定如何在不同的计算中分担工作负载。 上一节中这个并0 码力 | 591 页 | 21.40 MB | 1 年前3GoFrame框架介绍及设计
发布文件往往很小 源代码 解释器 输出 每次执行都需要解释 打包发布 解释型语言: 发布文件往往较大 统一框架设计 第三部分 • 技术体系化 • 开发规范化 • 组件统一化 • 形成技术沉淀 • 避免资源浪费 统一框架设计 统一框架设计-技术体系化 Container Converting Errors I18N Cache Validater Configure 统一框架设计-形成技术沉淀 发现问题 分析问题 解决问题 方案沉淀 统一框架 基于统一的开发框架,更容易形成技术沉淀,企业与社区形成良性循环。 统一框架设计-避免资源浪费 当每个团队都在试图自己创造轮子时,不仅 无法形成统一的开发规范,而且会出现非常 多的资源浪费。 让项目组把精力更多的投入到业务中,相信 这是大多数技术公司的共识。使用统一的开 发架构,可以把共性的技术问题提炼出来, 发架构,可以把共性的技术问题提炼出来, 并形成通用的解决方案。避免每个项目都独 自去解决遇到的各种各样的技术难题,有效 的把精力释放出来。 代码分层设计 第四部分 • 经典MVC • 三层架构模式 • 项目代码结构 代码分层设计-经典MVC 痛点: • 视图展示与数据操作方式的进一步剥离,特别是移动端的发展, 前端MVVM框架的发展,我们大多数场景下已不再需要服务端 渲染View • Model层级的代0 码力 | 37 页 | 8.84 MB | 1 年前3Golang 101(Go语言101 中文版) v1.21.a
第32章:代码块和标识符作用域 第33章:表达式估值顺序规则 第34章:值复制成本 第35章:边界检查消除 并发编程 第36章:并发同步概述 第37章:通道用例大全 第38章:如何优雅地关闭通道 第39章:其它并发同步技术 - 如何使用sync标准库包 第40章:原子操作 - 如何使用sync/atomic标准库包 第41章:Go中的内存顺序保证 第42章:一些常见并发编程错误 内存相关 第43章:内存块 第44章:关于Go值的内存布局 语句。这样的语句 常常会包含很多子语句。 上面所提及的流程控制语句都属于狭义上的流程控制语句。 下一篇文章中将 要介绍的协程、延迟函数调用、以及恐慌和恢复(第13章),以及今后要介绍 的并发同步技术(第36章)属于广义上的流程控制语句。 本文余下的部分将只解释三种基本的流程控制语句和各种代码跳转语句。其它 上面提及的语句将在后面其它文章中逐渐介绍。 if-else条件分支控制代码块 一个 这些情形被称为数据竞争(data race)。并发编程的一大任务就是要调度不同 计算,控制它们对资源的访问时段,以使数据竞争的情况不会发生。 此任务 常称为并发同步(或者数据同步)。Go支持几种并发同步技术,这些并发同 步技术将在后面的章节中逐一介绍。 并发编程中的其它任务包括: 决定需要开启多少计算; 决定何时开启、阻塞、解除阻塞和结束哪些计算; 决定如何在不同的计算中分担工作负载。 上一节中这个并发程0 码力 | 821 页 | 956.82 KB | 1 年前3Golang 101(Go语言101 中文版) v1.21.a
第32章:代码块和标识符作用域 第33章:表达式估值顺序规则 第34章:值复制成本 第35章:边界检查消除 并发编程 第36章:并发同步概述 第37章:通道用例大全 第38章:如何优雅地关闭通道 第39章:其它并发同步技术 - 如何使用sync标准库包 第40章:原子操作 - 如何使用sync/atomic标准库包 第41章:Go中的内存顺序保证 第42章:一些常见并发编程错误 内存相关 第43章:内存块 第44章:关于Go值的内存布局 条语句。这样的语句 常常会包含很多子语句。 上面所提及的流程控制语句都属于狭义上的流程控制语句。 下一篇文章中将要 介绍的协程、延迟函数调用、以及恐慌和恢复(第13章),以及今后要介绍的 并发同步技术(第36章)属于广义上的流程控制语句。 本文余下的部分将只解释三种基本的流程控制语句和各种代码跳转语句。其它 上面提及的语句将在后面其它文章中逐渐介绍。 if-else条件分支控制代码块 一个 这些情形被称为数据竞争(data race)。并发编程的一大任务就是要调度不同 计算,控制它们对资源的访问时段,以使数据竞争的情况不会发生。 此任务常 称为并发同步(或者数据同步)。Go支持几种并发同步技术,这些并发同步技 术将在后面的章节中逐一介绍。 并发编程中的其它任务包括: 决定需要开启多少计算; 决定何时开启、阻塞、解除阻塞和结束哪些计算; 决定如何在不同的计算中分担工作负载。 上一0 码力 | 608 页 | 1.08 MB | 1 年前31.6 resource scheduling & container technology for financial service_yujun
2015 Resource Scheduling & Container Technology for Financial Service 动态资源管理和容器技术 在金融行业的架构探索和明天 余军 Gopher China 2015 Gopher China 2015 关于我 n ~19y+ 具体实现采用较为独立的模块方式,方便将来开源后被 第三方使用,定制和集成。 ⑥ 面向金融行业应用场景,进行持续的演进和调整。 Gopher China 2015 我们在围绕Container技术正在做一些面向金融行业场景的 严肃而”有趣”的东西 雏形和明天 Gopher China 2015 IaaS (计算资源, 存储资源, 网络资源) 2015 100% 自主研发。100% 开源给用户 Apache License v 2.0 容器级资源运行技术 基于Linux 内核隔离及业界先进的Container容器技术 自主研发的资源分配和动态调度调度算法 自主研发SWF核心算法 (基于场景的加权均衡算法) 两级作业调度框架 自主研发Gardener0 码力 | 21 页 | 27.20 MB | 1 年前33.云原生边云协同AI框架实践
器、云服务器,利用分布式乃至分布式协同方式实现人工智能的技术 数据在边缘产生 边侧逐步具备AI能力 分布式协同AI 核心驱动力 分布式协同AI核心驱动力 • 随着边侧算力逐步强化,边缘AI持续演变至分布式协同AI 分布式协同AI技术挑战 1. 边缘资源碎片化 2. 边缘数据孤岛 3. 边缘样本少 4. 边缘数据异构 分布式协同AI 技术挑战 边云协同AI框架 第二部分 首个分布式协同AI开源项目Sedna 在评估阶段、生成的模型路径在哪里等信息。 任务失败等异常处理。 实践案例 第四部分 中国电信研究院园区ReID案例 场景描述 在给定视频中的第一帧和目标位置,实现目标检测、跟踪并预测其轨迹。 技术挑战 跨摄像头数据异构:摄像头拍摄的场景复杂,包括光照变化、遮挡严重、追 踪目标数量多等,单点的目标跟踪算法无法得到较好的效果。 业务收益 • 多目标跟踪准确度(MOTA)从70.6%提升到87 场景描述 • 部署Sedna终身学习,实现机器人室外递送过程中的边侧智能环境感知任务; • 基于视觉的语义分割,帮助机器人识别出低矮障碍,比如马路牙子和斜坡, 帮助机器人做出正确的避让决策。 技术挑战 • 机器人本体资源不足。比如无法部署GPU,导致推理速度慢,机器人来不及做避 让决策; • 数据异构问题导致AI模型失效。比如,AI模型无法很好地识别到新环境的图片; • 边侧数据不足,AI模型训练难以收敛或启动。0 码力 | 37 页 | 2.36 MB | 1 年前3
共 49 条
- 1
- 2
- 3
- 4
- 5