Go Web编程这本书目前我放在Github上,我现在基本每天晚上抽空会写一些,时间有限、能力有限,所以希望更多的朋友参与到 这个开源项目中来。 撰写方法 撰写方法 文件命名 文件命名 每个章节建立一个md文件,如第11章的第3节,则建立11.3.md 11.3.md。 代码文件 代码文件 代码文件置于src目录之下。每小节代码按目录存放。如第11章的第3节的代码保存于src/11.3/ src/11.3/目录下。在正文中按 代码要go fmt后提交。注释文件注明其所属章节。 如何编译 如何编译 build.go依赖markdown的一个解析包,所以第一步先 go get github.com/russross/blackfriday 这样读者就可以把相应的Markdown文件编译成html文件,执行go build build.go,执行生成的文件,就会在底目 录下生成相应的html文件 交流 交流 欢迎大家加入QQ群:259316004 3.3 Go如何使得web工作 3.4 Go的http包详解 3.5 小结 4.表单 4.1 处理表单的输入 4.2 验证表单的输入 4.3 预防跨站脚本 4.4 防止多次递交表单 4.5 处理文件上传 4.6 小结 5.访问数据库 5.1 database/sql接口 5.2 使用MySQL数据库 5.3 使用SQLite数据库 5.4 使用PostgreSQL数据库 5.5 使用beedb库进行ORM开发0 码力 | 295 页 | 5.91 MB | 1 年前3
大规模高性能区块链架构设计模式与测试框架-李世敬趣链科技 版权所有 ©2016-2021 6 区块链技术定义 区块链是由分布式数据存储、点对点传输、共识机制、加密算法等计算机技术构成的多中心 化系统 不可篡改(可信存证) ü 可对存储的文件、数据进行真实性校验 ü 可信追溯历史数据 去中心化共识(协作共享) ü 多方业务系统数据共享 ü 跨机构业务协作 核心特性 7 趣链科技 版权所有 ©2016-2021 7 趣链科技 版权所有 证书管理 测试框架 治理层 权限体系 治理模型 区块链审计 BaaS运维治理 应⽤层 司法存证 供应链⾦融 智慧政务 物联⽹ 能源电⼒ 跨境贸易 ⼯业物联⽹ 智慧城市 ... 不同于完全开放、任何⼈可以加⼊退出的⾮许可链,许可链架构与其差异性在于节点和⽤户在区块链⽹络中的准 ⼊要求。且⾮许可链⽹络节点⼤都由业务相关的机构组成,造成架构上共识、合约、安全、权限等⽅⾯的不同 13 趣链科技 证书管理 测试框架 治理层 权限体系 治理模型 区块链审计 BaaS运维治理 应⽤层 司法存证 供应链⾦融 智慧政务 物联⽹ 能源电⼒ 跨境贸易 ⼯业物联⽹ 智慧城市 ... 不同于完全开放、任何⼈可以加⼊退出的⾮许可链,许可链架构与其差异性在于节点和⽤户在区块链⽹络中的准 ⼊要求。且⾮许可链⽹络节点⼤都由业务相关的机构组成,造成架构上共识、合约、安全、权限等⽅⾯的不同 �可�架构0 码力 | 39 页 | 56.58 MB | 1 年前3
Go 入门指南(The way to Go)公司内部的软件开发过程中开始经历大量的挫 折,在诸多问题上都不能给出令人满意的解决方案,尤其是在使用 C++ 来开发大型的服务端软件时,情 况更是不容乐观。由于二进制文件一般都是非常巨大的,因此需要耗费大量的时间在编译这些文件上,同 时编程语言的设计思想也已经非常陈旧,这些情况都充分证明了现有的编程语言已不符合时下的生产环 境。尽管硬件在过去的几十年中有了飞速的发展,但人们依旧没有找到机会去改变 10 章)和接口(第 11 章)。我们会对 Go 语 言的函数式和面向对象编程进行透彻的讲解,包括如何使用 Go 语言来构造大型项目(第 9 章)。 在本书的第三部分,你将会学习到如何处理不同格式的文件(第 12 章)和如何在 Go 语言中巧妙地使用 错误处理机制(第 13 章)。然后我们会对 Go 语言中最值得称赞的设计 goroutine 和 channel 进行并发 和多核应用的基本技巧的讲解(第 个代码练习,这将对你学习好 Go 语言有很大的帮助。比如,我 们就为斐波那契算法提供了 13 个不同的版本,而这些版本都使用了不同的概念和技巧。 你可以通过访问本书的 官方网站 下载书中的代码(译者注:所有代码文件已经包括在 GitHub 仓库中), 并获得有关本书的勘误情况和内容更新。 为了让你在成为 Go 语言大师的道路上更加顺利,我们会专注于一些特别的章节以提供 Go 语言开发模式 的最佳实践,同时也会帮助初学者逃离一些语言的陷阱。第0 码力 | 380 页 | 2.97 MB | 1 年前3
Go 入门指南(The way to Go)3.4 构建并运行 Go 程序 3.5 格式化代码 3.6 生成代码文档 3.7 其它工具 3.8 Go 性能说明 3.9 与其它语言进行交互 第4章:基本结构和基本数据类型 4.1 文件名、关键字与标识符 4.2 Go 程序的基本结构和要素 4.3 常量 4.4 变量 4.5 基本类型和运算符 4.6 字符串 4.7 strings 和 strconv 包 4.8 时间和日期 结构体、集合和高阶函数 第12章:读写数据 12.1 读取用户的输入 12.2 文件读写 12.3 文件拷贝 12.4 从命令行读取参数 12.5 用 buffer 读取文件 - 4 - 本文档使用 书栈(BookStack.CN) 构建 12.6 用切片读写文件 12.7 用 defer 关闭文件 12.8 使用接口的实际例子:fmt.Fprintf 12.9 格式化 JSON 15.3 访问并读取页面 15.4 写一个简单的网页应用 第 16章 常见的陷阱与错误 16.1 误用短声明导致变量覆盖 16.2 误用字符串 16.3 发生错误时使用defer关闭一个文件 16.4 何时使用new()和make() - 5 - 本文档使用 书栈(BookStack.CN) 构建 16.5 不需要将一个指向切片的指针传递给函数 16.6 使用指针指向接口类型0 码力 | 466 页 | 4.44 MB | 1 年前3
Go vs. GoPlus(Go+)interface{} • 接口查询 -Windows COM 思想优雅呈现 惊喜4:极度简化但完备的OOP • 废弃大量的 OOP 特性 -继承、构造/析构函数、虚函数、函数重载等 • 简化的符号访问权限控制 • 取消隐藏的 this 指针 -改为显式定义的 receiver 对象 • OOP 编程核心价值原来如此简单 -只是多数人都无法看透 惊喜5:错误处理规范 • 函数多返回值 • 内置的 的基础设计理念 • 静态语言,且语法完全兼容 Go • 形式上比 Go 更像脚本,有更低的学习门槛(和 Python 相当) • 更简洁的数学运算上的语法支持(相比 Go) • 双引擎,既支持静态编译为可执行文件,也支持编译成字节码方 式解释执行 静态语言,且语法完全兼容 Go • 相比脚本语言,静态语言将拥有更强的生命力 • 静态语言中,Go 的语法最为精简,学习门槛也最低 要比 Go 有更低的学习门槛 个种子用户(13-14岁) • 有理数 • Map • Slice • List comprehension • For range 双引擎:既可静态编译,也可解析执行 • 既支持静态编译为可执行文件来执行,也支持编译成字节码方式 进行解释执行 • 数据科学家喜欢单步执行(为什么?这并不是因为懒) -请回忆一下所有数学软件的 UI • 但最终交付仍然需要最大化的执行效率! -因为:数据0 码力 | 54 页 | 1.82 MB | 1 年前3
Go基础语法宝典defer 后指定的函数会在函数退出前调用。 如果有很多调用 defer ,那么 defer 是采用后进先出模式,所以如下代码会输出 4 3 2 1 0 通常来说,defer会用在释放数据库连接,关闭文件等需要在函数结束时处理的操作。 函数作为值、类型 在Go中函数也是一种变量,可以通过 type 来定义它,它的类型就是所有拥有相同的参数,相同的返回 值的一种类型 函数作为类型到底有什么 )。这两个函数在定义时不能有任何的参数和返回值。虽然一个 package 里面可以写任 意多个 init 函数,但这无论是对于可读性还是以后的可维护性来说,强烈建议用户在一个 package 中 每个文件只写一个 init 函数。 Go程序会自动调用 init() 和 main() ,所以不需要在任何地方调用这两个函数。每个 package 中的 init 函数都是可选的,但 package main 包中的包级常量和变量进行 初始化,然后执行 main 包中的 init 函数(如果存在的话),最后执行 main 函数。 import 在写Go代码的时候经常用到import这个命令用来导入包文件,经常看到的方式参考如下: 然后代码里面可以通过如下的方式调用 上面这个fmt是Go语言的标准库,其实是去 GOROOT 环境变量指定目录下去加载该模块,当然Go的 import还支持如下两种方式来加载自己写的模块:0 码力 | 47 页 | 1020.34 KB | 1 年前3
04. GraphQL in Chaos Mesh 2.0 - 李晨曦令来获取。它存在的主要问题是查询客户端所需权限过高。 pod/exec 使用样例:列出 daemon pod 上正在运行的进程。 状态查询的障碍3 对于所有的状态查询都存在的一大问题是,各级状态之间很难进行关联查询。 人脑关联查询示例: 状态查询的解决方案 首先我们考虑障碍1,要避免查询客户端所需权限过高,最简单的办法就是在一个拥有创建 pod/exec 权限的组件上运行一个 API server server 来运行查询命令,而查询客户端仅创建 pod/forward 权限即可与 API server 通信。 Query Client API Server Target Pod pod/forward pod/exec 状态查询的解决方案 现在假定我们已经引入了一个 API server,仅考虑障碍1的查询噪音问题,有 nested resources(类 似 k8s API chaos daemon。 具体的做法是在 chaos daemon 的安装 namespace(如 chaos-testing)中给 controller manager 创建 pod/exec 的权限,然后创建 chaos daemon pod 上的 exec 命令,调用 nsenter 以在各节点的目标 pod 上运行查询命令。 Target Pod API Server Daemon0 码力 | 30 页 | 1.29 MB | 1 年前3
IPC性能极致优化方案-RPAL落地实践可以将页表 项划分为 16 个域,从而可以给每一个域单独赋予一个权限; 2. Intel x86 为每个线程提供了一个寄存器 PKRU (User Page Key Register),其长度为 32 bits,每 2-bit 对应页表中的一个 Protection Key,分别为 WD 位和 AD 位,用于控制所在域的内存访问权限。 用户态进程切换 第三部分 用户态进程切换 传统线程切换0 码力 | 39 页 | 2.98 MB | 1 年前3
03. Golang 在隐私计算平台建设中的实践 - 刘敬⾏行行环境按照数据隐私密级进⾏行行价 值共享 • 业务应⽤用层 基于SDK接⼊入上层业务系统 趣链科技版权所有©2016 – 2021 10 隐私计算流程 • 通过区块链进⾏行行数据使⽤用权限 的控制以及隐私计算任务的协 作 • 链下节点间基于隐私计算算 法,使⽤用多⽅方数据进⾏行行密态计 算,利利⽤用密码学算法达到“明 ⽂文数据不不出本地,计算结果定 向汇集”的数据计算效果,解 区块链节点 隐私计算节点 本地数据库 发起⽅方节点 隐私计算节点 本地数据库 参与⽅方节点A 隐私计算节点 本地数据库 参与⽅方节点B 1.创建任务 2.完善⼦子模型 并分发 3. 权限校验 5. 执⾏行行隐私计 算算法 4.模型审核 6.返回隐私计算结果 7.记录上链 趣链科技版权所有©2016 – 2021 11 匿匿踪查询 集合运算 矩阵运算 基础运算 统计分析0 码力 | 37 页 | 6.20 MB | 1 年前3
Golang大规模云原生应用管理实践定时弹性 事件 指标弹性 分批发布 重启 回滚 日志管理 事件中心 指标监控 存储挂载 服务绑定 手动弹性 回退历史 负载均衡 报警 诊断 组件管理 服务治理 … 权限 K8s Istio Envoy Tekton Argo KEDA ES InfluxDB Promethues Knative Ingress Rook Kube eventer0 码力 | 23 页 | 7.70 MB | 1 年前3
共 47 条
- 1
- 2
- 3
- 4
- 5













