2.1.3 如何用Go模拟CPU
如何用Go模拟CPU 蒙卓 华为 – 2012实验室 工程师 成为盘古? 让这个世界里面的人(程序)无法察觉 这个世界是创造出来的 目录 • 计算机的演化历史 – 硬件计算到冯诺伊曼架构 • 构建虚拟世界 – MOS 6502 • 控制单元(control unit) • 运算逻辑单元(arithmetic logic unit) • 6502汇编器与链接器 • 未来目标 1970年程序员 抽象意味着更慢 • 为啥现在程序员好像更弱了? • 因为我们处在最好也是最坏的时代 • 抽象多且环环嵌套 • 硬件过于复杂 • 软件基于操作系统等复杂概念 • 真的快且便宜 Go模拟CPU • 如何用Go实现冯诺伊曼架构CPU? • 简单:一个循环+一个大数组 读取当前指令 执行指令 下一条指令 模拟目标 – MOS 6502 • 诞生于1975年 • MOS 6502应用范围广 • 资料多且易获得 Pike:The assembler is just doing text processing https://www.youtube.com/watch?v=KINIAgRpkDA Go 编写汇编器 • 如何开始? • http://www.appleoldies.ca/anix/ • 先读读前人的工作 • 然后用Go实现! Go 编写汇编器等工具 • 用Go编写的汇编器编写ZHUOS • Tokenizer0 码力 | 42 页 | 7.10 MB | 1 年前3副本如何用CLup管理PolarDB
如何用CLup管理Polardb 4008878716 services@csudata.com http://www.csudata.com 中启乘数科技 @http://www.csudata.com │中启乘数科技(杭州)有限公司 数据赋能│价值创新 关于我 《PostgreSQL修炼之道:从小工到专家》的作者,中 启乘数科技联合创始人,PostgreSQL中国用户会常委。 从0 码力 | 34 页 | 3.59 MB | 5 月前3如何从零开始参与技术社区?
Confidential 如何从零开始参与技术社区 王刚,拓数派PieCloudDB 技术专家 @2024 OpenPie. All rights reserved. OpenPie Confidential @2024 OpenPie. All rights reserved. OpenPie Confidential ⼤ 纲 • 我与 OpenPie • 社区贡献的从0到1 • 如何进⾏代码贡献 Confidential So Let’s Begin to Hack The Postgres! @2024 OpenPie. All rights reserved. OpenPie Confidential 如何加⼊ PieCloudDB 社区 • 开源计划 • 参与⽅式 • 产品试用(社区版、云上云版) • 贡献⽂章 • 加⼊社区交流群 • 等等 @2024 OpenPie. All rights0 码力 | 25 页 | 871.00 KB | 1 年前31.3 七牛如何做HTTP服务测试
七牛如何做 HTTP服务测试? 许式伟 2015-4-18 HTTP服务测试 • 单元测试 – 某个独立子服务的测试 • 集成测试 – 整个集群对外业务API的测试 • Stage环境 • Product环境 怎么测? • 七牛早期做法 – 实现服务逻辑(Service Implementation) Case) • 问题 – 客户端SDK修改导致测试案例编不过 – 客户端SDK通常是使用方友好,而不是测试方友好 – 让服务端与客户端SDK耦合,容易过早陷入客户端SDK如何抽象 更合理的细节,而不能专注于测试服务逻辑本身 换个角度 • 直接基于协议测试呢? – 比如,基于 http.Client 类直接写测试案例 • 问题 {"a": "hello1", "b": 2}, {"a": "world2", "b": 4} ]' 测试环境 • 如何让 stage 和 product 环境共享测试案例? – 测试环境参数化 – 也方便测试脚本入库(不入库 User/Password、AK/SK 这种敏感 信息)0 码力 | 27 页 | 422.11 KB | 1 年前32.2.5 Go 如何助力企业进行微服务转型
Go 如何助⼒企业进⾏微服务转型 万俊峰Kevin About me • go-zero 作者 • 好未来技术委员会资深专家 • GopherChina ⾦牌讲师 • ArchSummit 明星讲师 • 腾讯云开发者⼤会讲师 Agenda • 为什么选 Go? • 单体和微服务怎么选? • 单体到微服务何时转? • 单体到微服务怎么转? 为什么选 Go? • 节省服务成本 什么信号标明该考虑转换了? • 单体系统已过度复杂 - 体感 • 当前架构已不能满⾜业务发展需要 • 研发效率降低 • 持续集成、持续交付⽐较困难 • 团队⼈员已经⽐较多了 单体到微服务怎么转? 如何启动? • 最重要的是决⼼ • 充分调研必要性 • 技术选型 • 充分调研可⾏性 • 争取公司或者部⻔领导的⽀持 • 建微服务迁移核⼼团队,经验、执⾏⼒、⾃驱⼒ 现状分析 •0 码力 | 25 页 | 4.51 MB | 1 年前32.1.7 谈如何构建易于拆分的单体应用
谈如何构建易于拆分的单体应⽤ 郑渊 腾讯公司 ⾼级⼯程师 ⽬ 录 微服务架构的困境与突破 01 建模:通过表象看本质 02 基于go-kit构建易拆分的单体应⽤ 03 总结 04 微服务架构的困境与突破 第⼀部分 微服务架构的困境与突破 01 Monolith to Microservices To move from Monolithic to Microservices 我们的业务模型 DDD并⾮唯⼀ 的建模⽅法! 从建模到放弃! 建模:通过表象看本质 04 回到⽣活的原点 建模 映射 建模:通过表象看本质 05 案例分析:⼀个简易的直播平台 如何找到:⼈,事,物,规则? 建模:通过表象看本质 06 业务⽤例—⼈+事 ➢ 业务⽤例:A Business Use-Case is a way in which a customer or ? ➢ 解法:联系⽣活中的类似场景进⾏推演;想想⽣活中什么样的场景跟直播平台很类似? 建模:通过表象看本质 08 动态视图—规则 ➢ 动态视图:通过对象之间的交互来说明⽤例是如何被实现的 ➢ 问题:如何把实体转化为软件架构中的模块/系统 对象? ➢ ⽅案:尽量去映射,采⽤相似的命名,减少理解 上的差异! 建模:通过表象看本质 09 业务架构图 ➢ 分层架构:变与不变 ➢0 码力 | 27 页 | 13.04 MB | 1 年前3如何使用 docker 部署一个 beego 项目
链滴 如何使用 docker 部署一个 beego 项目 作者:xhaoxiong 原文链接:https://ld246.com/article/1526210600840 来源网站:链滴 许可协议:署名-相同方式共享 4.0 国际 (CC BY-SA 4.0)理解 Docker
Docker 帮助你为应用程序创建一个单独的可部 class="highlight-cl"> # Set the entry po 原文链接:如何使用 docker 部署一个 beego 项目 nt of the container to the bee command that runs the 注意 image 的确切名字和编号可能不同,但是,你应该至少看到列表中有
原文链接:如何使用 docker 部署一个 beego 项目golang 和
test-image
image如果发现在尝试过程中
build
了多余的无效的镜像,可以尝试使用0 码力 | 5 页 | 269.19 KB | 1 年前
3领域驱动设计&中台/如何让DDD落地
架构师 系统分析师 如何从需求到DDD? 我想要⼀一个电商 平台,我可以在 上⾯面卖东⻄西 ? Event Storming⾥里里缺少了了什什么信息 提交订单的时候 要做什什么检查? 如何添加商品? ⽀支付订单的时候和 ⽀支付宝对接的逻辑 是什什么样的? 魔⻤鬼隐藏在细节之中 今天既然是讲落地,那么就从⼀一个实际需求出发,我们看看 如何把需求拆解成⽤用户故事,然后如何把⽤用户故事转变成领 成领 域故事,最后领域故事⼜又如何变成为代码。 02 从需求到代码 京⻄西商城的需求 ‣ 产品运营⼈人员可以添加新的商品,编辑产品库存,并发布到京⻄西商城,⽤用户 可以进⾏行行购买; ‣ 京⻄西商城的买家可以查看产品可购买的库存数量量,并⽣生成购买订单,买家可 以撤单,查看订单的状态,对订单进⾏行行⽀支付(⽀支付宝)。⽀支付成功后,仓储 管理理员会收到出库请求,进⾏行行配货并发货。同时,买家可以查看物流状态以 领域模型 如何区分实体和值对象 ��� �� VS Ø ������ Ø ����� Ø ��Id����� Ø ����/��� Ø �� Ø ��Order/Car Ø ������ Ø ����� Ø ��������� Ø ��Equals()�� Ø ����/���� Ø ���(Immutable) Ø ��Address/Color 如何区分应⽤用服务和领域服务0 码力 | 32 页 | 3.25 MB | 1 年前3如何用 MySQL 构建全方位高可用应用
0 码力 | 40 页 | 2.19 MB | 1 年前3如何向Go官方提交代码-蒙卓
如何向Go官方提交代码 蒙卓 hi@mzh.io 自我介绍 ● 后端工程师,主要写Go ● 业余搞Go官方库开发 ● 主要喜欢折腾ARM/MIPS 性能优化 ● 第一个中国Go 官方MIPS64 builder 维护者 目录 1. 为啥参与Go开发 2. 如何提交CL 3. 交流技巧 4. 参考资料 为啥参与Go开发? 解决BUG 4000+ issue 2510 TODO ~50%减少内存 增长知识 runtime 垃圾回收 编译器 HTTP3 密码学…. 为啥参与Go开发? 没准……还可以去美国玩一圈 感谢Ben Shi 大佬引荐 如何提交CL Change Log/List (CL) 如何提交CL 1. 申请Google账号,填写CLA(Contributor License Agreement) 2. 申请Gerrit(评审平台)账号 3. 安装go-codereview org/doc/contribute.html 如何提交CL 官方wiki 把大象放进冰箱 如何提交CL 发布周期 如何提交CL 1. typo -- 简单 2. 新特性 -- 中等 3. bug -- 困难 4. release-blocker -- 地狱 CL类型 如何提交CL 1. typo0 码力 | 38 页 | 5.95 MB | 1 年前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100