2.游戏战中陪伴助手微服务架构设计与应用
游戏战中陪伴助手微服务架构设计与应用 张敏 - AndruZhang 腾讯 - 高级后台工程师 目 录 功能介绍 01 早期探索 02 方案设计和工程实现 03 性能和成本优化 04 DevOps 建设 05 总结 & QA 06 功能介绍 第一部分 战中陪伴助手介绍——和平精英最佳第五人 战中陪伴助手介绍——和平精英最佳第五人 • 游戏战斗中指导 / 建议 • 敌人在附近 设计新运营策略的难度 - 开发迭代: 如需开发介入,那么功能迭代的速度 - 可解释性: 理由是否能否说服玩家遵从建议 - 对用户价值: 提升玩家体验 / 吃鸡率的帮助有多大 推荐系统接入——系统架构 推荐系统: 向量化 方案探索——资源点推荐 针对具体场景开发 - 专利:《一种在游戏中离线挖掘、实时推荐资源点的方案》 - 大数据挖掘资源出现位置 - 左:配置文件 - 右:大数据挖掘 报方案 》 运营迭代 更合理的开发迭代流程 - 项目各角色成员密切配合,深度参与 - Token / 策略的设计开发可并行 - 运营可闭环策略设计,开发无需介入 方案详述——完整架构 先对整个架构有一个大概的认识 - 消息队列消费:解耦 MQ - Token 清洗:事件翻译和 token 计算 - 推荐系统:策略召回和推荐 - 数据分析:离线策略挖掘和模型训练 - 管理平台:开发、运营、运维辅助0 码力 | 47 页 | 11.10 MB | 1 年前3大规模高性能区块链架构设计模式与测试框架-李世敬
大规模高性能区块链架构 设计模式与测试框架 Gopher Meetup 深圳站 2021 年 8 ⽉ 21 号 趣�科技 李世敬 目录 区块链概述 01 大规模高性能区块链架构设计介绍 02 基于Go插件的区块链性能测试工具 03 写在最后 04 区块链概述 4 趣链科技 版权所有 ©2016-2021 4 趣链科技 版权所有 ©2016-2021 4 趣链科技 版权所有 ©2016-2021 『非许可链』公有链 私有链『许可链』 联盟链『许可链』 区块链发展的主力军 不同的组织形态分别对应不同的“区块链产品架构” 11 趣链科技 版权所有 ©2016-2021 11 趣链科技 版权所有 ©2016-2021 11 趣链科技 版权所有 ©2016-2021 11 公有�架构(⾮�可�架构) 应⽤层 数据层 块链式结构 账户模型 时间戳 ⽹络层 共识层 激励层 发⾏机制 分配机制 PoW 公路、越野等具体场景 公有链基础架构⾃下⽽上分为六层:数据层、⽹络层、共识层、激励层、合约层与应⽤层。如果将区块链⽐作⼀ 辆汽车,那么各层分别对应汽车的各个组成部分(下图所⽰),各层之间协同合作,形成多中⼼化可信系统 12 趣链科技 版权所有 ©2016-2021 12 趣链科技 版权所有 ©2016-2021 12 趣链科技 版权所有 ©2016-2021 12 �盟�(�可�架构) 基 础 层 数据层0 码力 | 39 页 | 56.58 MB | 1 年前3如何用GO支撑海外电商的快速发展-吕梦楼
如何用GO支撑海外电商的快速发展 吕梦楼 小米科技(武汉)有限公司 海外电商基础服务负责人 目 录 业务背景 01 架构演变 02 场景落地 03 总结 04 Q&A 05 业务背景 第一部分 业务背景 01. 海外电商业务 1 ShareSave 11 Mi.com B2C 23 Community 10 POCO B2C 26 Mi.com B2B 03. 国际小米社区 业务背景 10 个B2C站点 今年新增 6 个站点 全新国际POCO站 04. 国际POCO站 业务背景 05. 面临挑战 架构演变 第二部分 架构演变 01. 海外电商架构 电商 服务 交易服务 购物车 下单服务 支付网关 地址服务 BFF 中台 商品中心 营销中心 交易中心 订单中台 库存中心 结算中心 发票中心 Mobile MICOM 架构演变 02. 架构演变过程 架构演变 03. 单体应用 演变 仅PC站,页面通过服务端渲染 新增M站,核心服务抽离到Core 架构演变 04. 为什么用GO? 架构演变 05. 混合模式 新增GO商城服务,迁移下单流程中的订单结算、收银台等功能 PC和M站相关功能,请求下发到GO商城服务,页面仍通过PHP服务端渲染 架构演变 06. 前后端分离0 码力 | 33 页 | 3.80 MB | 1 年前3GoFrame框架介绍及设计
GoFrame框架介绍及设计 郭强 成都医联科技 架构师 目 录 框架介绍 01 模块化设计 02 统一框架设计 03 代码分层设计 04 对象封装设计 05 DAO封装设计 06 未来发展规划 07 框架介绍 第一部分 • 框架介绍 • 框架架构 • 项目初心 框架介绍 GoFrame是一款模块化、高性能、企业级的Go基础开发框架。 • 模块化、松耦合 • 模块丰富、开箱即用 强大便捷的开发工具链 • 完善的本地中文化支持 • 设计为团队及企业使用 特点 框架介绍-框架架构 • 发布方式:Docker、二级制、源码模块 • 模块管理: • 核心模块、社区模块、三方模块 • Go Modules管理方式 • 开发工具链 • 设计模式:MVC、三层架构、工具集 • 应用接口:HTTP/TCP/UDP/RPC Server、终端应用、源码接口 • 数据 框架介绍-项目初心 工程化建设 统一框架 核心组件 项目架构 设计模式 开发规范 开发文档 开发工具 …… 模块化设计 第二部分 • 复用原则 • 单仓包设计 • 模块聚合设计 • 常见问题 模块化设计 什么是模块? 模块化的目标? 模块也称作组件,是软件系统中可复用的功能逻辑封装单位。 在不同的软件架构层次,模块的概念会有些不太一样。 在开发框架层面,模块是某一类功能逻辑的最小封装单位。0 码力 | 37 页 | 8.84 MB | 1 年前32.3 用golang写一个操作系统
ios、android l 云操作系统 chrome os和阿⾥里云os。在上⼀一层操作系统基础之上和⾃自家的云系统进⾏行整合 l 去中⼼心化的云操作系统 Leither 架构基本和chrome os类似,只是将后端的云系统去中⼼心化,使之脱离巨头的控制 操作系统历史 l 互联⺴⽹网正在整合各个⾏行业,对各个传统⾏行业进⾏行重构 l 互联⺴⽹网的格局正在固化 Swarms 数 据 层 应 ⽤用 层 消息通讯 索引 数据 应⽤用发布 应⽤用安装 应⽤用管理 Swarms 查 找 维 护 MVC 架构 MVC 架构 同 步 同 步 Leither的技术架构 ü 它是⼀一个⽣生态 ü 它有⾃自⼰己的⽣生态成员 应⽤用开发、内容维护、服务提供、系统⽀支撑、传递者、消费者 ü 它有⾃自⼰己的⾦金融体系 效率:降低基础设施成本 l 可以⽀支持各种开发语⾔言 php golang java c# js python html5 ⺫⽬目前优先⽀支持html5架构 l 没有前端和后端之分 只需要对编程要求最低的js程序员再加美⼯工,便可以完成所有开发⼯工作 l ⾃自动⽀支持⼤大数据 相⽐比于传统的互联⺴⽹网应⽤用,⽤用户0 码力 | 33 页 | 1014.12 KB | 1 年前32-6-Golang 在 Baidu-FrontEnd 的应用-陶春华
百度GOLANG委员会成员 内容提要 • 后台程序开发的需求和难点 –C, Python and Go对比 • 采用Go语言重构BFE –背景和技术路线 –GC问题 –协议一致性 –分布式架构 后台程序开发的需求(1) • 性能 –C/C++, Java –Python, Ruby • 并发性 –Process, Thread, Event(编程难度) • 开发效率 –语言的描述效率:代码量 –严格的编译阶段检查:强类型,文件包含,… –Panic,便于定位问题 Golang(3) • 上线和运维 –可编译为独立可执行程序 BFE(Baidu Front End) • 百度统一前端 –七层流量接入平台 BFE(Baidu Front End) • 主要服务 • 接入转发 • 防攻击、流量调度、数据分析 • 业务现状 • 覆盖大部分重要产品 • 日请求量千亿级别 –并发编程模型:同步(Go) vs 异步(Nginx) –内存管理 –语言描述能力 • 性能 – 在BFE的场景下,性能在可接受范围内 – 通过算法设计和架构设计来弥补 几个问题 • GC优化 • http协议栈 • 分布式架构 GC带来的问题 –GC是个好东西,但也有问题 –难以避免的延迟(几十到几百ms) • 经验公式:10万对象1ms 扫描时间 –1个tcp连接,约10个对象=>0 码力 | 35 页 | 730.17 KB | 1 年前3go web 框架 严清
团队,重构后端服务体 系,为此造了了⼀一些轮⼦子,如 Gear 框架 基于 kubernetes 和 SOA,部分已上线,如 TCM 消息推送服 务直接提供 HTTP/2 和 gRPC 接⼝口 • 前端架构师 ➞ 后端架构师 ⇢ 技术负责⼈人 技术学习⽆无⽌止境,逼迫个⼈人成⻓长,推进团队成⻓长 Why I Don’t Use Go Web Frameworks ——Joe Chasinga0 码力 | 23 页 | 333.12 KB | 1 年前3Go 入门指南(The way to Go)
年年中,Go 语言的设计工作接近尾声,一些员工开始以全职工作状态投入到这个项目的编译器 和运行实现上。Ian Lance Taylor 也加入到了开发团队中,并于 2008 年 5 月创建了一个 gcc 前端。 Russ Cox 加入开发团队后着手语言和类库方面的开发,也就是 Go 语言的标准包。在 2009 年 10 月 30 日,Rob Pike 以 Google Techtalk 的形式第一次向人们宣告了 端复杂 环境的项目。有句话叫 “吃你自己的狗食”,这也体现了谷歌确实想要投资这门语言,并认为它是有生产 价值的。 Go 语言的官方网站是 golang.org,这个站点采用 Python 作为前端,并且使用 Go 语言自带的工具 godoc 运行在 Google App Engine 上来作为 Web 服务器提供文本内容。在官网的首页有一个功能叫做 Go Playground,是一个 Go EP),这项技术要求海量并行支持,高度的抽 象化和高性能。当我们进入到物联网时代,CEP 必然会成为人们关注的焦点。 但是 Go 语言同时也是一门可以用于实现一般目标的语言,例如对于文本的处理,前端展现,甚至像使用 脚本一样使用它。 值得注意的是,因为垃圾回收和自动内存分配的原因,Go 语言不适合用来开发对实时性要求很高的软 件。 越来越多的谷歌内部的大型分布式应用程序都开始使用 Go0 码力 | 380 页 | 2.97 MB | 1 年前32.7 Golang与高性能DSP竞价系统
配合parallel-ssh做集群管理 部署:进程管理 专业DSP解决⽅方案 © ⼲⼴广州舜⻜飞信息科技有限公司 All Right ReservedAll Right Reserved • Nginx做前端 • 开多个Go进程 • Nginx的upstream做负载均衡 • Nginx的upstream记得开 keepalive 部署:web服务器 Nginx Go竞价服务 © ⼲⼴广州舜⻜飞信息科技有限公司 All Right ReservedAll Right Reserved • 专为统计分析⽽而⽣生 • 列存储 • shared-nothing的分布式架构,可扩展性、⾼高可⽤用 • 秒级以内对⼗十亿⾏行级别的表进⾏行统计查询 • 对内存要求⾼高,相当于内存数据库 • JAVA系,开源 曝光统计服务: Druid 专业DSP解决⽅方案0 码力 | 51 页 | 5.09 MB | 1 年前3Go 入门指南(The way to Go)
录 致谢 阅前必读 内容介绍 前言 第1章:Go 语言的起源,发展与普及 1.1 起源与发展 1.2 语言的主要特性与发展的环境和影响因素 第2章:安装与运行环境 2.1 平台与架构 2.2 Go 环境变量 2.3 在 Linux 上安装 Go 2.4 在 Mac OS X 上安装 Go 2.5 在 Windows 上安装 Go 2.6 安装目录清单 2.7 Go 运行时(runtime) 年年中,Go 语言的设计工作接近尾声,一些员工开始以全职工作状态投入到这个项目的编译器和运行实现 上。Ian Lance Taylor 也加入到了开发团队中,并于 2008 年 5 月创建了一个 gcc 前端。 Russ Cox 加入开发团队后着手语言和类库方面的开发,也就是 Go 语言的标准包。在 2009 年 10 月 30 日, Rob Pike 以 Google Techtalk 的形式第一次向人们宣告了 理后端复杂环境的项 目。有句话叫 “吃你自己的狗食”,这也体现了谷歌确实想要投资这门语言,并认为它是有生产价值的。 Go 语言的官方网站是 golang.org,这个站点采用 Python 作为前端,并且使用 Go 语言自带的工具 godoc 运 行在 Google App Engine 上来作为 Web 服务器提供文本内容。在官网的首页有一个功能叫做 Go Playground,是一个 Go0 码力 | 466 页 | 4.44 MB | 1 年前3
共 52 条
- 1
- 2
- 3
- 4
- 5
- 6