可视化学习 Go 并发编程## 可视化学习 Go 并发编程 2017.8.5 黄庆兵 - 网易 bingohuang.com ## 并发 简单来说,并发是一种构造程序的方式  ## Concurrency is not Parallelism Slide (http://talks ents/9/d/7/e/9d7ec6880e87f715ac8d1b4b792dd0b8/p3_1.jpg) 1. 并发很强大 2.并发帮助实现并行,使并行(扩展等)变得容易 3. 并发不是并行,并发重点是架构,并行重点是执行,两者不同,但相关。 ## 可视化 并发(Concurrency) & 并行(Parallelism) 一图胜千言! • 并行(PARALLELISM) html) • 并发(CONCURRENCY) 这是并发 (/2017/go-concurrency-visualize/pingpong36.html) 为什么要关注并发?当今是多核的时代,并发的世界 ## 多核的时代  并发编程并不容易,但0 码力 | 29 页 | 1.48 MB | 2 年前3
从高并发到极端并发:百度 Feed 与春晚红包的高可用实践-吴永巍## 从高并发到极端并发: 百度Feed与春晚红包的高可用实践 吴永巍 百度 主任架构师 # TGO鲲鹏会 # 汇聚全球科技领导者的高端社群 全球12大城市 850+高端科技领导者 使命 Mission 为社会输送更多优秀的 科技领导者 ## 愿景 Vision 构建全球领先的有技术背景 优秀人才的学习成长平台  ## 目录 • 春晚项目,技术挑战 - 整体拆解,架构设计 - 各子系统高可用设计 • Feed信息流:常规到极端 全方位工程实践 ## 春晚,极端并发,技术实力最高级别的检验 • 春晚的力量 • 业界技术难题 现场直播,没有重来的机会 - 不仅仅是摇一摇红包 ✓信息流 + 视频 ✓语音 + 搜索 ## 摇一摇红包 ![Image] jpg) ## 春晚项目的技术挑战 • 从 “高并发” 到 “极端并发” • 万一出问题,负面影响不可挽回,需要“万无一失” • 只有短短一个月的准备时间 • 结合AI、推荐、搜索、视频等多项技术,复杂度高 每秒千万级并发 数亿用户参与 208亿次互动 ## 极端并发下的架构设计理念 • 从数万QPS的“高并发”到数千万QPS的“极端并发” √大量的技术沉淀和积累 √针对性的专项设计0 码力 | 28 页 | 58.98 MB | 2 年前3
Go Web编程## 《Go Web 编程》 因为自己对Web开发比较感兴趣,所以最近抽空在写一本开源的书籍《Go Web编程》《Build Web Application with Golang》。写这本书不表示我能力很强,而是我愿意分享,和大家一起分享Go写Web应用的一些东西。 - 对于从PHP/Python/Ruby转过来的同学了解Go怎么写Web应用开发的 对于从C/C++转过来的同学了解Web到底是怎么运行起来的 这样读者就可以把相应的Markdown文件编译成html文件,执行go build build.go,执行生成的文件,就会在底目录下生成相应的html文件 ## 交流 欢迎大家加入QQ群:259316004《Go Web编程》专用交流群 大家有问题还可以上德问上一起交流学习:http://www.dewen.org/topic/165 ## 致谢 首先要感谢Golang-China的QQ群102319854,里面 Go基础 - 2.3. 流程和函数 - 2.4. struct - 2.5. 面向对象 - 2.6. interface - 2.7. 并发 - 2.8. 小结 3. Web基础 - 3.1 web 工作方式 - 3.2 Go搭建一个简单的web服务 - 3.3 Go如何使得web工作0 码力 | 295 页 | 5.91 MB | 2 年前3
1.5 Go 语言构建高并发分布式系统实践## go语言并发编程实践 以360消息推送系统为例 周洋 部门:360手机助手 Weibo: @johntech-o Date: 2015.04.25 ## 目录 go语言在基础服务开发领域的优势? 我遭遇了哪些挑战? 如何应对的? 具有go特色的运维 在高并发,通信交互复杂,重业务逻辑的分布式系统中,Go语言优势体现在:开发体验好、一定量级下服务稳定、性能满足需要 ## 以360消息推送系统为例 |08|单播-指定用户在线-发送在线消息\_0|单播 1.用户建立长连接检查状态为在线 2.用单播接口发送在线消息 4.用3.检查用户是否收到消息(预期能收到)|PASS|log||53| ## 总结回顾 go语言在基于并发协作的,重业务逻辑的基础服务方向非常适用 适用 = 开发体验好 + 服务稳定 + 性能满足需要 go语言程序开发需要找到一种平衡,既利用协程带来的便利性又做适当集中化处理 套路 = 按请求和业务逻辑并行0 码力 | 39 页 | 5.23 MB | 2 年前3
Rust 异步并发框架在移动端的应用 - 陈明煜CHINA CONF 2023 第三届中国 Rust 开发者大会 6.17-6.18 @Shanghai # Rust 异步并发框架在移动端的应用 陈明煜 chenmingyu4@huawei.com 华为 公共开发部 嵌入式软件能力中心 ## 😍 ## Rust 异步并发框架在移动端的应用 Applications of Rust Runtime in Mobile  ## 序 Angular 是一个开发平台。它能帮你更轻松的构建 Web 应用。Angular 集声明式模板、依赖注入、端到0 码力 | 27 页 | 177.00 KB | 2 年前3
新语⾔,新思维 解读⼀个并发问题的多种实现 - 陶召胜## 新语言,新思维 ## 解读一个并发问题的多种实现 陶召胜 ## next: 异步编程的问题 ## 变量读写冲突 异步任务1 读、写 共享变量 读、写 异步任务2 ## I O阻塞 object ExampleBlockingScala extends App { //所有并发任务在这个拥有10个线程的线程池中执行 implicit val ec = ExecutionContext ExecutionContext.fromExecutorService(Executors.newFixedThreadPool(10)) //创建100个并发任务,每个任务都会阻塞5秒 (1 to 100).map(i => { println(s"Calling blocking Future: ${i}") Future { //阻塞5秒,模拟I/O阻塞 println(s"Blocking future finished ${i}") } }) //这是另一个并发任务,因为线程被大量I/O阻塞导致这个任务很少有机会得到执行 Future { (1 to 100).map(i => println(s"another a future0 码力 | 42 页 | 9.85 MB | 2 年前3
MoonBit月兔编程语言 现代编程思想 第七课 命令式编程:命令,可变数据结构,循环现代编程思想 命令式编程 Hongbo Zhang ## 函数式编程 - 到此为止,我们介绍的可以归类于函数式编程的范畴 - 对每一个输入,有着固定的输出 对于标识符,我们可以直接用它所对应的值进行替代——引用透明性 • 开发实用的程序,我们需要一些计算之外的“副作用” ☐ 进行输入输出 ☐ 修改内存中的数据等 ☐ 这些副作用可能导致多次执行的结果不一致 ## 引用透明性 let t = acc1 + acc2 5. acc1 = acc2; acc2 = t 6. } 7. acc1 8. } ## 总结 本章节初步接触了命令式编程,包括 • 如何使用命令 • 如何使用变量 • 如何使用循环等0 码力 | 23 页 | 780.46 KB | 2 年前3
MoonBit月兔编程语言 现代编程思想 第九课 接口# 现代编程思想 接口 Hongbo Zhang ## 回顾 ## • 第六课:定义平衡二叉树 我们定义一个更一般的二叉搜索树,允许存放任意类型的数据 1. enum Tree[T] { 2. Empty 3. Node(T, Tree[T], Tree[T]) 4. } 5. 6. // 我们需要一个比较函数来比较值的大小以了解顺序 7. // 负数表示小于,0表示等于,正数表示大于0 码力 | 16 页 | 346.04 KB | 2 年前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100













