1.2 基于 Golang 构建高可扩展的云原生 PaaS 平台release_id: ${release:id} pipeline.yml 定义 - 屏蔽掉流⽔线定义的复杂度 - 丰富的通⽤Action,开箱即⽤ - Action 扩展规范,任意扩展 Workload 管理 - Create - Update - Delete - Describe - Scale - Restart services: trade-server: } 案例:创建 HTTP/gRPC 接⼝ - 使⽤ protobuf 定义 API - ⾃动⽣成 http 和 gRPC 接⼝ 和client 代码 - 可选⾃动发布 接⼝ 到 OpenAPI 未来的规划 - 轻量化服务注册发现 - ⽀持运⾏时插件,允许⽤户以 服务的⽅式拦截系统接⼝ - ⽀持UI的运⾏时扩展 开源新时代的挑战 第五部分 打造围绕开源的开发流程 - GitFlow0 码力 | 40 页 | 8.60 MB | 1 年前3
Best practices for building Kubernetes OperatorsDefaulter function https://book.kubebuilder.io/cronjob-tutorial/webhook-implementationDefaulting - OpenAPI v3 schema https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-0 码力 | 36 页 | 2.19 MB | 6 月前3
GoFrame框架介绍及设计Go基础开发框架。 • 模块化、松耦合 • 模块丰富、开箱即用 • 简洁易用、快速接入 • 文档详尽、易于维护 • 自顶向下、体系化设计 • 统一框架、统一组件、降低选择成本 • 开发规范、设计模式、代码分层模型 • 强大便捷的开发工具链 • 完善的本地中文化支持 • 设计为团队及企业使用 特点 框架介绍-框架架构 • 发布方式:Docker、二级制、源码模块 • 模块管理: Server、终端应用、源码接口 • 数据库类型:通过标准库驱动接口支持多种数据库类型 • 跨平台性:基于Golang开发语言强大跨平台特性 框架介绍-项目初心 工程化建设 统一框架 核心组件 项目架构 设计模式 开发规范 开发文档 开发工具 …… 模块化设计 第二部分 • 复用原则 • 单仓包设计 • 模块聚合设计 • 常见问题 模块化设计 什么是模块? 模块化的目标? 模块也称作组件,是软件系统中可复用的功能逻辑封装单位。 实现相同功能逻辑的模块百花齐放,选择成本过高 • 项目依赖的模块过多,项目整体的稳定性会受到影响 • 项目依赖的模块过多,无从下手是否应当升级模块版本 • 各个模块孤立设计,单独看待每个模块可替换性很高, 开发体系难以建立,开发规范难以统一 模块化设计-模块聚合设计 • 框架核心维护较全面的通用基础模块,降低基础模块选择成本 • 我们只需要维护一个统一的框架版本,而不是数十个模块版本 • 我们只需要了解一个框架的内容变化,而不是数十个模块的内容变化0 码力 | 37 页 | 8.84 MB | 1 年前3
Go 入门指南(The way to Go)和多核应用的基本技巧的讲解(第 14 章)。最后,我们会讨论如何将 Go 语言应用到分布式和 Web 应用 中的相关网络技巧(第 15 章)。 我们会在本书的第四部分向你展示许多 Go 语言的开发模式和一些编码规范,以及一些非常有用的代码片 段(第 18 章)。在前面章节完成对所有的 Go 语言技巧的学习之后,你将会学习如何构造一个完整 Go 语言项目(第 19 章),然后我们会介绍一些关于 Go 语言在云(Google 语言已经提供了大量有关 Web 方面的功能,我们可以通过它强大的 http 和 template 包来 达到 Web 应用的 GUI 实现。 我们会经常涉及到一些关于 Go 语言的编码规范,了解和使用这些已经被广泛认同的规范应该是你学习阶 段最重要的实践。我会在书中尽量使用已经讲解的概念或者技巧来解释相关的代码示例,以避免你在不了 解某些高级概念的情况下而感到迷茫。 我们通过 227 个完整的代 操作系统和 Limbo 编程语言;Ken Thompson,贝尔实验室 Unix 团队成员,C 语言、Unix 和 Plan 9 的创始人之一,与 Rob Pike 共同开 发了 UTF-8 字符集规范。自 2008 年 1 月起,Ken Thompson 就开始研发一款以 C 语言为目标结果的编 译器来拓展 Go 语言的设计思想。 这是一个由计算机领域 “发明之父” 所组成的黄金团队,他们对系统编程语言,操作系统和并行都有着非0 码力 | 380 页 | 2.97 MB | 1 年前3
Go 入门指南(The way to Go)本技巧的讲解(第 14 章)。最后,我们会讨论如何将 Go 语言应用到分布式和 Web 应用中的相关网络技巧(第 15 章)。 我们会在本书的第四部分向你展示许多 Go 语言的开发模式和一些编码规范,以及一些非常有用的代码片段(第 18 章)。在前面章节完成对所有的 Go 语言技巧的学习之后,你将会学习如何构造一个完整 Go 语言项目(第 19 章),然后我们会介绍一些关于 Go 语言在云(Google 语言已经提供了 大量有关 Web 方面的功能,我们可以通过它强大的 http 和 template 包来达到 Web 应用的 GUI 实现。 我们会经常涉及到一些关于 Go 语言的编码规范,了解和使用这些已经被广泛认同的规范应该是你学习阶段最重要的 实践。我会在书中尽量使用已经讲解的概念或者技巧来解释相关的代码示例,以避免你在不了解某些高级概念的情况 下而感到迷茫。 我们通过 227 个完整的代 操作系统和 Limbo 编程语言;Ken Thompson,贝尔实验室 Unix 团队成员,C 语言、Unix 和 Plan 9 的创始人之一,与 Rob Pike 共同开发了 UTF-8 字符集规范。自 2008 年 1 月起,Ken Thompson 就开始研发一款以 C 语言为目标结果的编译器来拓展 Go 语言的设计思想。 这是一个由计算机领域 “发明之父” 所组成的黄金团队,他们对系0 码力 | 466 页 | 4.44 MB | 1 年前3
Go Web编程代码文件 代码文件置于src目录之下。每小节代码按目录存放。如第11章的第3节的代码保存于src/11.3/ src/11.3/目录下。在正文中按 需要添加代码。 格式规范 格式规范 正文 正文 请参看已有章节的规范,要注意的是,每个章节在底部都需要有一个links节,包含“目录”,“上一节”和“下一 节”的链接。 代码 代码 代码要go fmt后提交。注释文件注明其所属章节。 型语言的开发效率,以及静态类型的安全性。它也打 算成为现代的,支持网络与多核计算的语言。要满足这些目标,需要解决一些语言上的问题:一个富有表达能力但轻 量级的类型系统,并发与垃圾回收机制,严格的依赖规范等等。这些无法通过库或工具解决好,因此Go也就应运而生 了。 在本章中,我们将讲述Go的安装方法,以及如何配置项目信息。 目录 目录 links links 目录 下一节: Go安装 2节中的mathapp应用,我们可以指定go build -o astaxie.exe,默认情况是你的package名(非main包),或者是第一个源文件的文件名(main包)。 (注:实际上,package名在Go语言规范中指代码中“package”后使用的名称,此名称可以与文件夹名不 同。默认生成的可执行文件名是文件夹名。) go build会忽略目录下以“_”或“.”开头的go文件。 如果你的源代码针对不同的0 码力 | 295 页 | 5.91 MB | 1 年前3
6.从 0 到 1 搭建十亿级包裹 API Versioning1.1 SaaS 产品的特点 - 产品定位 - 稳定性影响 - 稳定性承诺 SaaS 2B 和 2C 的差异 国内 SaaS 和国际 SaaS 的技术规划的差异 - 专注和极致 - 规范和标准 - 安全合规 - 全球化 1.2 API 的重要性 API 也是产品的一部分,而不仅仅是技术。对于 SaaS 产品,提供 API 服务几乎是与企业级用户合作的必须项,特别是在海外。 通过 API,企业可以开发自己的应用程序、插件或集成 其他工具,以满足特定的业务需求。 - 数据集成 - 通过 API,企业可以灵活地与 SaaS 提供商实现数据 的共享和交换。 1.2.1 标准与规范 RESTful - Request - Response - Query - … 全球化 - 多时区 - 多语言 - 多国家/地区 - 多币种 - … 安全性 - AES0 码力 | 28 页 | 2.26 MB | 1 年前3
2.1 gofmt 的文化演变不需要设置! 4/21/2015 gofmt 的文化演变 http://127.0.0.1:3999/gofmt-cn.slide#1 3/34 初衷 代码审查是软件工程的最佳实践 代码审查是基于代码规范和正规格式的 太多时间浪费在审查格式上而不是代码本身了 但是这工作对机器来说是最好不过了的 第一个决定就是要写一个好的格式美化器 4/21/2015 gofmt 的文化演变 http://127 在2007年,没人喜欢代码格式器 例外:IDE强制的格式化 但是:很多程序员不用IDE... 问题:如果是格式化太具有毁坏性,那么就没有人会用 被忽视的观点:“刚刚好“的,统一化的格式是好过于各种不同的格式的。 规范的价值在于:整齐划一,而不是完美 4/21/2015 gofmt 的文化演变 http://127.0.0.1:3999/gofmt-cn.slide#1 6/34 好的格式美化器的问题 当0 码力 | 34 页 | 9.97 MB | 1 年前3
Hello 算法 1.0.0b4 Golang版gvenusleo, hpstory, justin‐tse, krahets, nuomi1, Reanon, sjinzh 完 成(按照首字母顺序排列)。感谢他们付出的时间与精力,正是他们确保了各语言代码的规范与统一。 推荐语 “一本通俗易懂的数据结构与算法入门书,引导读者手脑并用地学习,强烈推荐算法初学者阅读。” ——邓俊辉,清华大学计算机系教授 “如果我当年学数据结构与算法的时候有《Hello 专有名词和有特指含义的词句会使用“双引号” 标注,以避免歧义。 ‧ 涉及到编程语言之间不一致的名词,本书均以 Python 为准,例如使用 None 来表示“空”。 ‧ 本书部分放弃了编程语言的注释规范,以换取更加紧凑的内容排版。注释主要分为三种类型:标题注 释、内容注释、多行注释。 /* 标题注释,用于标注函数、类、测试样例等 */ // 内容注释,用于详解代码 /** * 多行 * 准。 2. 复杂度 hello‑algo.com 28 � 为什么很少看到 Θ 符号? 可能由于 ? 符号过于朗朗上口,我们常常使用它来表示「平均复杂度」,但从严格意义上看, 这种做法并不规范。在本书和其他资料中,若遇到类似“平均时间复杂度 ?(?)”的表述,请 将其直接理解为 Θ(?) 。 2.3. 空间复杂度 「空间复杂度 Space Complexity」用于衡量算法使用内存0 码力 | 347 页 | 27.40 MB | 1 年前3
云原生时代分布式链路追踪实践-曲赛定位过程“击鼓传花” 跨端性能瓶颈分析繁杂 性能分析难 缺乏对系统整体认知的把控 不合理的调用关系 不合理的直连存储 架构治理能力匮乏 云原生可观测性 3 4 Trace 标准规范 5 标准 概述 Traces Metrics Logs 状态 OpenTracing 2015年底发起,2016年被批准为CNCF第三 个项目 ✓ 停止更新 OpenCensus 2010 码力 | 17 页 | 2.47 MB | 1 年前3
共 25 条
- 1
- 2
- 3













