Go Web编程GOROOT=$HOME/go export GOBIN=$GOROOT/bin export PATH=$PATH:$GOBIN 看到如下图片即说明你已经安装成功 7 图1.1 源码安装之后执行Go命令的图 如果出现Go的Usage信息,那么说明Go已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的PATH环境 变中是否包含了Go的安装目录。 Go标准包安装 Go标准包安装 linux-amd64.tar.gz -C $GO_INSTALL_DIR。 设置PATH,export PATH=$PATH:$GO_INSTALL_DIR/go/bin 然后执行go 9 图1.2 Linux系统下安装成功之后执行go显示的信息 如果出现go的Usage信息,那么说明go已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的PATH环境 变中是否包含了go的安装目录。 GO安装 下一节: GO 命令 14 1.3 Go 命令 1.3 Go 命令 Go 命令 Go 命令 Go语言自带有一套完整的命令操作工具,你可以通过在命令行中执行go来查看它们: 图1.3 Go命令显示详细的信息 这些命令对于我们平时编写的代码非常有用,接下来就让我们了解一些常用的命令。 go build go build 这个命令主要用于测试编译。在包的编译过程中,若有必要,会同时编译与之相关联的包。0 码力 | 295 页 | 5.91 MB | 1 年前3
Hello 算法 1.1.0 Go版艺、 到解放生产力的工业产品、再到宇宙运行的科学规律,几乎每一件平凡或令人惊叹的事物背后,都隐藏着精 妙的算法思想。 同样,数据结构无处不在:大到社会网络,小到地铁线路,许多系统都可以建模为“图”;大到一个国家,小 到一个家庭,社会的主要组织形式呈现出“树”的特征;冬天的衣服就像“栈”,最先穿上的最后才能脱下; 羽毛球筒则如同“队列”,一端放入、另一端取出;字典就像一个“哈希表”,能够快速查找目标词条。 . . . . . . . . . . . . . . . . . 187 第 9 章 图 189 9.1 图 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 9.2 图的基础操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 9.3 图的遍历 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200 9.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .0 码力 | 383 页 | 18.48 MB | 1 年前3
Hello 算法 1.0.0 Golang版. . . . . . . . . . . . . . . . . 187 第 9 章 图 189 9.1 图 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 9.2 图的基础操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 9.3 图的遍历 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201 9.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 数据结构:基本数据类型和数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤 和示例问题等。 第 0 章 前言 hello‑algo.com 3 图 0‑1 本书主要内容 0.1.3 致谢 本书在开源社区众多贡献者的共同0 码力 | 382 页 | 17.60 MB | 1 年前3
Hello 算法 1.2.0 简体中文 Go 版艺、 到解放生产力的工业产品、再到宇宙运行的科学规律,几乎每一件平凡或令人惊叹的事物背后,都隐藏着精 妙的算法思想。 同样,数据结构无处不在:大到社会网络,小到地铁线路,许多系统都可以建模为“图”;大到一个国家,小 到一个家庭,社会的主要组织形式呈现出“树”的特征;冬天的衣服就像“栈”,最先穿上的最后才能脱下; 羽毛球筒则如同“队列”,一端放入、另一端取出;字典就像一个“哈希表”,能够快速查找目标词条。 . . . . . . . . . . . . . . . . . 187 第 9 章 图 189 9.1 图 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 9.2 图的基础操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 9.3 图的遍历 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200 9.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .0 码力 | 384 页 | 18.49 MB | 10 月前3
Go 入门指南(The way to Go)就开始研发一款以 C 语言为目标结果的编 译器来拓展 Go 语言的设计思想。 这是一个由计算机领域 “发明之父” 所组成的黄金团队,他们对系统编程语言,操作系统和并行都有着非 常深刻的见解 图 1.1 Go 语言设计者:Griesemer、Thompson 和 Pike Go入门指南 - 4 - 本文档使用 看云 构建 在 2008 年年中,Go 语言的设计工作接近尾声,一些员工开始以全职工作状态投入到这个项目的编译器 github.com/golang/go/issues。 Go 通过以下的 Logo 来展示它的速度,并以囊地鼠(Gopher)作为它的吉祥物。 Go入门指南 - 5 - 本文档使用 看云 构建 图1.2 Go 语言 Logo 谷歌邮件列表 golang-nuts 非常活跃,每天的讨论和问题解答数以百计。 关于 Go 语言在 Google App Engine 的应用,这里有一个单独的邮件列表 的语法更加简洁和干净。同时,Go 语言也拥有一些 动态语言的特性,这使得使用 Python 和 Ruby 的开发者们在使用 Go 语言的时候感觉非常容易上手。 下图展示了一些其它编程语言对 Go 语言的影响: 图 1.3 其它编程语言对 Go 语言的影响 Go入门指南 - 7 - 本文档使用 看云 构建 1.2.2 为什么要创造一门编程语言 C/C++ 的发展速度无法跟上计算机发展的脚步,十多年来也没有出现一门与时代相符的主流系统编程0 码力 | 380 页 | 2.97 MB | 1 年前3
Go 入门指南(The way to Go)Thompson 就开始研发一款以 C 语言为目标结果的编译器来拓展 Go 语言的设计思想。 这是一个由计算机领域 “发明之父” 所组成的黄金团队,他们对系统编程语言,操作系统和并行都有着非常深刻的见 解 图 1.1 Go 语言设计者:Griesemer、Thompson 和 Pike 在 2008 年年中,Go 语言的设计工作接近尾声,一些员工开始以全职工作状态投入到这个项目的编译器和运行实现 上。Ian com/golang/go,Go 项目 Bug 追踪和功能预期详见 github.com/golang/go/issues。 Go 通过以下的 Logo 来展示它的速度,并以囊地鼠(Gopher)作为它的吉祥物。 图1.2 Go 语言 Logo 谷歌邮件列表 golang-nuts 非常活跃,每天的讨论和问题解答数以百计。 关于 Go 语言在 Google App Engine 的应用,这里有一个单独的邮件列表 语言的主要特性与发展的环境和影响因素 1.2.1 影响 Go 语言发展的早期编程语言 1.2 语言的主要特性与发展的环境和影响因素 - 18 - 本文档使用 书栈(BookStack.CN) 构建 图 1.3 其它编程语言对 Go 语言的影响 C/C++ 的发展速度无法跟上计算机发展的脚步,十多年来也没有出现一门与时代相符的主流系统编程语言,因 此人们需要一门新的系统编程语言来弥补这个空缺,尤其是在计算机信息时代。0 码力 | 466 页 | 4.44 MB | 1 年前3
Golang 101(Go语言101 中文版) v1.21.abinderclip、 sunznx、 haozibi、 Tony Bai、 lanastasov、 liukaifei、 Abirdcfly、 Tahir Raza、 lniwn、 GFZRZK、 Jiadas、 黎显图、 Raymon Zhang、 Crazy Yang、 sdjdd、 N0mansky、 bestgopher、 9r0k、 wieghx、 SourceLink、 Will Xiang、 Cholerae org网站和《Go语言101》电子书。 感谢Adam Chalkley对电子书制作过程提出的改进建议。 特别感谢Renee French ? 和Rob Pike。 本书电子版和纸质版封面中的生动的图 片来源于Rob Pike的一张幻灯片 ? 。 Renee French是这张图片中的地鼠卡通形 象的设计者。 本书由老貘 ? 历时三年写成。目前本书仍在不断改进和增容中。你的赞赏是 本书和Go101 可以同时执行多条指令流水线。 为了将CPU的能力发挥到极致,我们常常需 要使我们的程序支持并发(concurrent)计算。 并发计算是指若干计算可能在某些时间片段内同时运行的情形。 下面这两张 图描绘了两种并发计算的场景。在此图中,A和B表示两个计算。 在第一种情 形中,两个计算只在某些时间片段同时运行。 第二种情形称为并行 (parallel)计算。在并行计算中,多个计算在任何时间点都在同时运行。并行0 码力 | 821 页 | 956.82 KB | 1 年前3
2.7 Golang与高性能DSP竞价系统© ⼲⼴广州舜⻜飞信息科技有限公司 All Right ReservedAll Right Reserved • RTB: Real-time Bidding,实时竞价,允许⼲⼴广告买家根据 活动⺫⽬目标、⺫⽬目标⼈人群以及费⽤用⻔门槛等因素对每⼀一个⼲⼴广告 及每次⼲⼴广告展⽰示的费⽤用进⾏行竞价。 • DSP: Demand Side Platform,需求⽅方平台,允许⼲⼴广告客 Google Protobuf) • 根据⼲⼴广告位属性过滤活动 • 根据客户端信息过滤活动(浏览器、操作系统类型等) • 根据地区过滤活动 • 查询Cookie Mapping得到访客在DSP系统的唯⼀一ID • 根据⽤用户看过⼲⼴广告的频次过滤活动 • 根据访客的⼈人群属性过滤活动 • 根据活动的出价选择胜出的活动 • 其他更细致的过滤条件 100毫秒内要做些什么 • 每天N亿曝光 • 30个维度,40个指标 • 表的数据量和维度的离散程度相关 • 如⼲⼴广告位有5000个,全国500个城市,时间粒度到⼩小时级别,则地区汇总表⼀一个 推⼲⼴广活动⼀一天最多就有 5000*500*24 = 6千万 记录 • 实时统计 • 实时计算、⼊入库 • 实时查询,秒级响应 曝光统计服务 专业DSP解决⽅方案 © ⼲⼴广州舜⻜飞信息科技有限公司0 码力 | 51 页 | 5.09 MB | 1 年前3
Golang 101(Go语言101 中文版) v1.21.abinderclip、 sunznx、 haozibi、 Tony Bai、 lanastasov、 liukaifei、 Abirdcfly、 Tahir Raza、 lniwn、 GFZRZK、 Jiadas、 黎显图、 Raymon Zhang、 Crazy Yang、 sdjdd、 N0mansky、 bestgopher、 9r0k、 wieghx、 SourceLink、 Will Xiang、 Cholerae 可以同时执行多条指令流水线。 为了将CPU的能力发挥到极致,我们常常需要 使我们的程序支持并发(concurrent)计算。 并发计算是指若干计算可能在某些时间片段内同时运行的情形。 下面这两张图 描绘了两种并发计算的场景。在此图中,A和B表示两个计算。 在第一种情形 中,两个计算只在某些时间片段同时运行。 第二种情形称为并行(parallel)计 算。在并行计算中,多个计算在任何时间点都在同时运行。并行计算属于特殊 wg.Wait() // 阻塞在这里,直到所有任务都已完成。 } 运行这个修改后的程序,我们将会发现所有的20条问候语都将在程序退出之前 打印出来。 协程的状态 从上面这个的例子,我们可以看到一个活动中的协程可以处于两个状态:运行 状态和阻塞状态。一个协程可以在这两个状态之间切换。 比如上例中的主协程 在调用wg.Wait方法的时候,将从运行状态切换到阻塞状态;当两个新协程完成 各自的任务后,主协程将从阻塞状态切换回运行状态。0 码力 | 608 页 | 1.08 MB | 1 年前3
如何用GO支撑海外电商的快速发展-吕梦楼产品站 营销管理 优惠券/码管理 营销活动管理 商品管理 活动中心 抢购/秒杀 直播/抽奖 竞价/拼团 活动模版 数据服务 推荐服务 搜索服务 流量平台 其他服务 评论服务 积分服务 站内信 礼品卡服务 内容发布服务 SEO 站点管理 EDM/ Push Mobile POCO Android 用户画像 支付活动管理 PC Mobile MICOM Traefxi配置文件 场景落地 01. 微服务网关 场景落地 01. 微服务网关 场景落地 01. 微服务网关 场景落地 02. 秒杀 新品发售 爆品发售 大型促销活动 流量瞬时爆发 场景落地 02. 秒杀 技术栈选型:GO + Ker Redis 场景落地 02. 秒杀 三次限流 原子计数限流:每秒只通过部分请求进行限流 队列限流:业务系统请求入队列的限流0 码力 | 33 页 | 3.80 MB | 1 年前3
共 40 条
- 1
- 2
- 3
- 4













