2.5 Go在猎豹移动的应用## 毛剑 GO在猎豹移动的应用 ## Why Go? ☑ 优雅简洁,少就是多; ☑ 性能好、系统级语言; 静态语言、强类型约束; 交叉编译&部署; 网络模型&并发同步模型; 标准库、内置工具强大支持; 开源&社区活跃; ## 我们做了啥? 业务 - 猎豹移动全球passport体系; • 游戏开放平台; • 游戏支付体系; 平台 基于gopush的推送平台&goim; f19e60396b430e5dbd32ac78ddc43/p4_37.jpg) Lvs VIP 四层协议转发 Nginx Upstream ELB 七层协议转发 应用层 业务 API 前端 PHP 服务层 Go Service 缓存层 Redis 存储层 MySQL S3 / Gluster FS ## 接入层优化 ☑ DNS在移动网络下不适用; - 避免劫持、失效,dns提供商故障; ; ☑ rpc和api都是基于Go开发的服务; 国内DNS->VIP->Ivs->tengine->Go; 海外DNS->ELB DNS->ELB->Go; Service之间通过Thrift或者net/rpc通讯; 依赖redis sdk访问redis; ☑ 直连mysql; ☑ 用户的所有业务逻辑基于Go处理; 。 - 翻译:《Go 翻译:《Go Web 编程》,《Redis 实战》。 Redis 使用教程 - 包含大量 Rafis 命令以及使用真实价格。 - 内容源图最新 Radio 版本。 - 国内 Radio 新手和阅月者。 - 开源文档:《Go 标准库中文文档》,《Redis 命令参考》,《SICP 解题集》等。 - 个人网站:huangz.me。 ## 路线图 ## 路线图 一. Redis 简介 ## 路线图 more.  Redigo is a Go client for the Redis database with support for Print-alike API, Pipelining (including transactions)0 码力 | 176 页 | 2.34 MB | 2 年前3
1.1 Go语言游戏项目应用情况汇报## Go语言游戏项目应用情况汇报 厦门真有趣信息科技有限公司 达达 ## 项目介绍 - 2012年 - 2015年,仙侠道网页版,使用Go语言替代神仙道时期的Erlang,开发流程和主要架构不变 - 2014年 - 2015年,仙侠道手机版,在原有架构基础上拆分游戏逻辑服务器,分离互动功能 ## 游戏服务端的挑战 • 请求频繁 - 实时性要求高(百毫秒的延迟便可被感知) • 开发效率要求高(每周一更)0 码力 | 21 页 | 1.63 MB | 2 年前3
Go在数据库中间件的应用## Go在数据库中间件的应用 基础架构组/刘延允 liuyun827@foxmail.com 2017年9月 K 酷狗音乐 ## 关于我 • 刘延允——酷狗音乐,基础架构组 • 数据库变更通知服务 • 酷狗消息队列 • 酷狗数据库中间件 • 主要工作:分布式存储、高可用、数据库 • 两年通信设备开发经验,四年互联网 • 五年C/C++使用经验,一年Golang ## 内容提要 • 程序开发的需求 • GoLang特性 - Go开发mysql中间件 - 整体方案 - 分表路由 - 故障切换 - 平滑扩容 - 系统运维 ## 程序开发的需求 • 语言特性精炼,容易入门 • 开发效率高,代码逻辑清晰 • 运行性能强,节省机器资源 • 部署维护方便 • 生态圈完善 ## Golang特性 • Go语法简练;没有学习压力 • 开发效率高;语言描述能力接近于脚本语言 开发效率高;语言描述能力接近于脚本语言 • 性能高;接近于C/C++,充分利用资源 - 容易部署;可执行程序,编译时解决上线部署、运行时的依赖 • 强大的标准库、丰富的第三方库、go test、pprof • 自动内存管理;内存泄漏与野指针是C/C++语言开发者的噩梦 • Go routine + channel;简单的并发与简易的数据同步 ## 系统整体方案 ## • 系统框架图  ’ alt=‘OCR图片’/> 2.1 Go在GC性能上的改进 Go在GC性能上的改进 Go 1.8 Release Notes:相比1.7版本GC Pause大幅减小,通常低于100微妙甚至10微秒 Go 使用CMS(Concurrent Mark Sweep) GC算法,优点是不中断业务的情况下并行执行,将STW时间降低到最小,缺点是并行执行需要更多的同步开销降低了吞吐量,以及堆空间的增长难以预测。 ’ alt=‘OCR图片’/> 2.2 GC算法考量的因素0 码力 | 25 页 | 2.16 MB | 1 月前3
1.每秒百万数据点 Go 应用监控系统演进## GCN ## 每秒百万数据点 Go 应用监控系统演进 张平 aftership AfterShip 高级 SRE ## 关于 AfterShip  ## 拥抱云原生和开源系统  监控架构概览 01 如何监控 Go 应用? 02 Metrics 系统架构演进 03 Why VictoriaMetrics so good? 04 总结与展望 05 ## 第一部分 监控架构概览 ## 监控系统架构概览 -- -- 告警通道 ## PagerDuty slack ## 第二部分 ## 如何监控 Go 应用? ## 基于 Prometheus Go 应用监控接入流程 确定指标 为应用埋点 部署应用 配置服务发现 监控展示 ## 指标类型 • Go 运行时指标 ☐ Goroutine 数量 • 应用层指标 infra http request total • 业务指标 ☐ 总 Tracking0 码力 | 42 页 | 2.32 MB | 2 年前3
2.4 Go在分布式docker里面的应用_孙宏亮#### Go在Docker分布式环境中的应用 孙宏亮@DaoCloud allen.sun@daocloud.io ## 个人介绍 · 孙宏亮 • DaoCloud技术合伙人,高级工程师 • 热爱golang&docker • 《Docker源码分析》作者 • docker、swarm等项目commiter ## Agenda • Docker生态&Golang • 执行镜像构建  PaaS平台 1. 应用生命周期管理 2. 弹性能力 3. 混合云能力 Go入门指南 书栈(BookStack.CN) ## 目录 致谢 阅前必读 内容介绍 前言 第1章:Go 语言的起源,发展与普及 1.1 起源与发展 1.2 语言的主要特性与发展的环境和影响因素 第2章:安装与运行环境 2.1 平台与架构 2.2 Go 环境变量 2.3 在 Linux 上安装 Go 2.4 在 Mac OS OS X 上安装 Go 2.5 在 Windows 上安装 Go 2.6 安装目录清单 2.7 Go 运行时(runtime) 2.8 Go 解释器 第3章:编辑器、集成开发环境与其它工具 3.1 Go 开发环境的基本要求 3.2 编辑器和集成开发环境 3.3 调试器 3.4 构建并运行 Go 程序 3.5 格式化代码 3.6 生成代码文档 3 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 时间和日期 4.9 指针 第5章:控制结构0 码力 | 466 页 | 4.44 MB | 2 年前3
Go 入门指南(The way to Go)1986bf1/p1_3.jpg) The Way to Go Go入门指南 Ivo Balbaert 著 陈佳桦 译 ## 前言 原文出处:https://github.com/Unknwon/the-way-to-go_ZH_CN ## 用更少的代码,更短的编译时间,创建运行更快的程序,享受更多的乐趣 对于学习 Go 编程语言的爱好者来说,这本书无疑是最适合你的一本书籍,这里包 开发出的软件能够很好地在现代的多核计算机上工作 - 开发出的软件能够很好地在网络环境下工作 • 使人们能够享受软件开发的过程 Go 语言就在这样的环境下诞生了,它让人感觉像是 Python 或 Ruby 这样的动态语言,但却又拥有像 C 或者 Java 这类语言的高性能和安全性。 Go 语言出现的目的是希望在编程领域创造最实用的方式来进行软件开发。它并不是要用奇怪的语法和晦涩难懂的概念来从根本上推翻已有的编程语言,而是建立并改善了 来支持并发和并行编程。 这本书是为那些想要学习 Go 这门全新的,迷人的和充满希望的编程语言的开发者量身定做的。当然,你在学习 Go 语言之前需要具备一些关于编程的基础知识和经验,并且拥有合适的学习环境,但你并不需要对 C 或者 Java 或其它类似的语言有非常深入的了解。 对于那些熟悉 C 或者面向对象编程语言的开发者,我们将会在本书中用 Go 和一些编程语言的相关概念进行比较(书中会使用大家所熟知的缩写0 码力 | 380 页 | 2.97 MB | 2 年前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100













