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 年前3
2.2 龚浩华(月牙寂)p2p缓存系统 基于Golang的Aop设计模式 p2p缓存系统 基于Golang的Aop设计模式 龚浩华 QQ 29185807 月牙寂 背景 v Web缓存(类似CDN技术) § 网页、图片 § 普通下载 § 普通视频 v P2P缓存 § 下载(bt等) § 视频(qvod、百度影音等) 背景 v P2P缓存好处 § 一次获取,多次利用 § 减少局域网出网流量 § 提升用户体验0 码力 | 29 页 | 338.20 KB | 1 年前3
3.云原生边云协同AI框架实践器、云服务器,利用分布式乃至分布式协同方式实现人工智能的技术 数据在边缘产生 边侧逐步具备AI能力 分布式协同AI 核心驱动力 分布式协同AI核心驱动力 • 随着边侧算力逐步强化,边缘AI持续演变至分布式协同AI 分布式协同AI技术挑战 1. 边缘资源碎片化 2. 边缘数据孤岛 3. 边缘样本少 4. 边缘数据异构 分布式协同AI 技术挑战 边云协同AI框架 第二部分 首个分布式协同AI开源项目Sedna 通过kubectl查询到的就是最新的状态了,比如说当前 在评估阶段、生成的模型路径在哪里等信息。 任务失败等异常处理。 实践案例 第四部分 中国电信研究院园区ReID案例 场景描述 在给定视频中的第一帧和目标位置,实现目标检测、跟踪并预测其轨迹。 技术挑战 跨摄像头数据异构:摄像头拍摄的场景复杂,包括光照变化、遮挡严重、追 踪目标数量多等,单点的目标跟踪算法无法得到较好的效果。 业务收益 • 多目标跟踪准确度(MOTA)从70 场景描述 • 部署Sedna终身学习,实现机器人室外递送过程中的边侧智能环境感知任务; • 基于视觉的语义分割,帮助机器人识别出低矮障碍,比如马路牙子和斜坡, 帮助机器人做出正确的避让决策。 技术挑战 • 机器人本体资源不足。比如无法部署GPU,导致推理速度慢,机器人来不及做避 让决策; • 数据异构问题导致AI模型失效。比如,AI模型无法很好地识别到新环境的图片; • 边侧数据不足,AI模型训练难以收敛或启动。0 码力 | 37 页 | 2.36 MB | 1 年前3
2.3 用golang写一个操作系统Leither OS 动态管理众多在线⺴⽹网民的⺴⽹网络资源、存储资源、运算资源 现有互联⺴⽹网的⼤大部分服务形态,都可以在Leither上快速构造出来。 可以构造视频⺴⽹网站、微博、微信、IM。。。。。 所有这些应⽤用,⽤用户体验基本不变的情况下 不需要中⼼心服务器存在 Leither是什么? 数 据 层 底 层 ⺴⽹网 络 层 应 ⽤用 ⽤用 层 消息通讯 索引 数据 应⽤用发布 应⽤用安装 应⽤用管理 Swarms 查 找 维 护 MVC 架构 MVC 架构 同 步 同 步 Leither的技术架构 ü 它是⼀一个⽣生态 ü 它有⾃自⼰己的⽣生态成员 应⽤用开发、内容维护、服务提供、系统⽀支撑、传递者、消费者 ü 它有⾃自⼰己的⾦金融体系 ) 构建同⾏行规模(⺴⽹网络,存储)⼤大约只需要数千万⼈人民币 类⽐比: ⼀一个是现有的中国电⼒力系统(电⼚厂+电⺴⽹网) ⼀一个是成本低于电费的个⼈人太阳能加⾃自动组⺴⽹网技术 效率:降低基础设施成本 l 可以⽀支持各种开发语⾔言 php golang java c# js python html5 ⺫⽬目前优先⽀支持html5架构0 码力 | 33 页 | 1014.12 KB | 1 年前3
Go 入门指南(The way to Go)本文档使用 书栈(BookStack.CN) 构建 阅前必读 在接触 Go 语言之后,对这门编程语言非常着迷,期间也陆陆续续开始一些帮助国内编程爱好者了解和发展 Go 语言 的工作,比如开始录制视频教程《Go编程基础》。但由于目前国内并没有比较好的 Go 语言书籍,而国外的优秀书籍 因为英文的缘故在一定程度上也为不少 Go 语言爱好者带来了一些学习上的困扰,不仅为了加快扩散 Go 爱好者的国 本文档使用 书栈(BookStack.CN) 构建 内容介绍 在接触 Go 语言之后,对这门编程语言非常着迷,期间也陆陆续续开始一些帮助国内编程爱好者了解和发展 Go 语言 的工作,比如开始录制视频教程《Go编程基础》。但由于目前国内并没有比较好的 Go 语言书籍,而国外的优秀书籍 因为英文的缘故在一定程度上也为不少 Go 语言爱好者带来了一些学习上的困扰,不仅为了加快扩散 Go 爱好者的国 前最全面的学习资源。本书 通过对官方的在线文档、名人博客、书籍、相关文章以及演讲的资料收集和整理,并结合我自身在软件工程、编程语 言和数据库开发的授课经验,将这些零碎的知识点组织成系统化的概念和技术分类来进行讲解。 随着软件规模的不断扩大,诸多的学者和谷歌的开发者们在公司内部的软件开发过程中开始经历大量的挫折,在诸多 问题上都不能给出令人满意的解决方案,尤其是在使用 C++ 来开发大型的服务端软件时,情况更是不容乐观。由于0 码力 | 466 页 | 4.44 MB | 1 年前3
Go Web编程kie的话,此种方案将会是首选。 Go实现session管理 Go实现session管理 通过上面session创建过程的讲解,读者应该对session有了一个大体的认识,但是具体到动态页面技术里面,又是怎 么实现session的呢?下面我们将结合session的生命周期(lifecycle),来实现go语言版本的session管理。 session管理设计 session管理设计 Go如何使用session 下一节: 预防session劫持 146 6.4 预防session劫持 6.4 预防session劫持 session劫持是一种广泛存在的比较严重的安全威胁,在session技术中,客户端和服务端通过session的标识符来维 护会话, 但这个标识符很容易就能被嗅探到,从而被其他人利用.它是中间人攻击的一种类型。 本节将通过一个实例来演示会话劫持,希望通过这个实例,能让读者更好地理解session的本质。 同一个集合类的模板是互相知晓的,如果同一模板被多个集合使用,则它需要在多个集合中分别解析 总结 总结 通过上面对模板的详细介绍,我们了解了如何把动态数据与模板融合:如何输出循环数据、如何自定义函数、如何嵌 套模板等等。通过模板技术的应用,我们可以完成MVC模式中V的处理,接下来的章节我们将介绍如何来处理M和C。 links links 目录 上一节: 正则处理 下一节: 文件操作 170 7.5 文件操作 7.50 码力 | 295 页 | 5.91 MB | 1 年前3
Go 入门指南(The way to Go)前最全面的学习 资源。本书通过对官方的在线文档、名人博客、书籍、相关文章以及演讲的资料收集和整理,并结合我自 身在软件工程、编程语言和数据库开发的授课经验,将这些零碎的知识点组织成系统化的概念和技术分类 来进行讲解。 随着软件规模的不断扩大,诸多的学者和谷歌的开发者们在公司内部的软件开发过程中开始经历大量的挫 折,在诸多问题上都不能给出令人满意的解决方案,尤其是在使用 C++ 来开发大型的服务端软件时,情 goroutine 这种轻量级线程的概 念来实现这个目标,然后通过 channel 来实现各个 goroutine 之间的通信。他们实现了分段栈增长和 goroutine 在线程基础上多路复用技术的自动化。 这个特性显然是 Go 语言最强有力的部分,不仅支持了日益重要的多核与多处理器计算机,也弥补了现存 编程语言在这方面所存在的不足。 Go 语言中另一个非常重要的特性就是它的构建速度( 看起来并不相同。但是它通过接口 (interface)的概念来实现多态性。Go 语言有一个清晰易懂的轻量级类型系统,在类型之间也没有层级 之说。因此可以说这是一门混合型的语言。 在传统的面向对象语言中,使用面向对象编程技术显得非常的臃肿,它们总是通过复杂的模式来构建庞大 的类型层级,这违背了编程语言应该提升生产力的宗旨。 函数是 Go 语言中的基本构件,它们的使用方法非常灵活。在第六章,我们会看到 Go 语言在函数式编程0 码力 | 380 页 | 2.97 MB | 1 年前3
Hello 算法 1.1.0 Go版hello‑algo.com 5 /* 标题注释,用于标注函数、类、测试样例等 */ // 内容注释,用于详解代码 /** * 多行 * 注释 */ 0.2.2 在动画图解中高效学习 相较于文字,视频和图片具有更高的信息密度和结构化程度,更易于理解。在本书中,重点和难点知识将主 要通过动画以图解形式展示,而文字则作为解释与补充。 如果你在阅读本书时,发现某段内容提供了如图 0‑2 所示的动画图解,请以图为主、以文字为辅,综合两者 度变化,从而具备 一定的“动态性”。 Tip 如果你感觉物理结构理解起来有困难,建议先阅读下一章,然后再回顾本节内容。 3.2 基本数据类型 当谈及计算机中的数据时,我们会想到文本、图片、视频、语音、3D 模型等各种形式。尽管这些数据的组织 形式各异,但它们都由各种基本数据类型构成。 基本数据类型是 CPU 可以直接进行运算的类型,在算法中直接被使用,主要包括以下几种。 ‧ 整数类型 个汉字。在 GBK 的编码方案中,ASCII 字符使用一个字节表示,汉字使用两个字节表示。 第 3 章 数据结构 hello‑algo.com 61 3.4.3 Unicode 字符集 随着计算机技术的蓬勃发展,字符集与编码标准百花齐放,而这带来了许多问题。一方面,这些字符集一般 只定义了特定语言的字符,无法在多语言环境下正常工作。另一方面,同一种语言存在多种字符集标准,如 果两台计算机使用0 码力 | 383 页 | 18.48 MB | 1 年前3
Hello 算法 1.0.0 Golang版标题注释,用于标注函数、类、测试样例等 */ // 内容注释,用于详解代码 /** * 多行 第 0 章 前言 hello‑algo.com 5 * 注释 */ 0.2.2 在动画图解中高效学习 相较于文字,视频和图片具有更高的信息密度和结构化程度,更易于理解。在本书中,重点和难点知识将主 要通过动画以图解形式展示,而文字则作为解释与补充。 如果你在阅读本书时,发现某段内容提供了如图 0‑2 所示的动画图解,请以图为主、以文字为辅,综合两者 可以在程序运行过程中对其长 度进行调整。 � 如果你感觉物理结构理解起来有困难,建议先阅读下一章,然后再回顾本节内容。 3.2 基本数据类型 当谈及计算机中的数据时,我们会想到文本、图片、视频、语音、3D 模型等各种形式。尽管这些数据的组织 形式各异,但它们都由各种基本数据类型构成。 基本数据类型是 CPU 可以直接进行运算的类型,在算法中直接被使用,主要包括以下几种。 ‧ 整数类型 个汉字。在 GBK 的编码方案中,ASCII 字符使用一个字节表示,汉字使用两个字节表示。 第 3 章 数据结构 hello‑algo.com 61 3.4.3 Unicode 字符集 随着计算机技术的蓬勃发展,字符集与编码标准百花齐放,而这带来了许多问题。一方面,这些字符集一般 只定义了特定语言的字符,无法在多语言环境下正常工作。另一方面,同一种语言存在多种字符集标准,如 果两台计算机使用0 码力 | 382 页 | 17.60 MB | 1 年前3
共 50 条
- 1
- 2
- 3
- 4
- 5













