Await-Tree Async Rust 可观测性的灵丹妙药 - 赵梓淇
Rust 开发者大会 Await-Tree Async Rust 可观测性的灵丹妙药 赵梓淇 Bugen Zhao Await-Tree Async Rust 可观测性的灵丹妙药 Await-Tree 的 设计原理与实现 2 回顾 Async Rust 的设计与痛点 1 Await-Tree 的 应用与真实案例 3 Await-Tree Async Rust 可观测性的灵丹妙药 可观测性的灵丹妙药 Await-Tree 的 设计原理与实现 2 回顾 Async Rust 的设计与痛点 1 Await-Tree 的 应用与真实案例 3 Async Rust 的优势 • 异步编程的共同优势 • async/await 关键字 • 用户态调度 • Async Rust 的独特优势 • Ownership 与 Lifetime • 无栈协程 Async Rust 回顾 阻塞的位置和原因 • 难以调试 Async Stuck • ? 如何解决? Await-Tree Async Rust 可观测性的灵丹妙药 Await-Tree 的 设计原理与实现 2 回顾 Async Rust 的设计与痛点 1 Await-Tree 的 应用与真实案例 3 设计目标 Await Tree 的设计原理与实现 • 追踪关键 Future 的生命周期和控制流 • Init0 码力 | 37 页 | 8.60 MB | 1 年前3Angular CLI Tutorial
is set up in the workspace configuration s uch that all builds make use of bundling, limited tree-shaking, and also limited dead code elimination. --progress Log progress to the console is set up in the workspace configuration such that all builds make use of bundling, limited tree-shaking, and also limited dead code elimination. 28 --progress=true|false Log progress to the console is set up in the workspace configuration such that all builds make use of bundling, limited tree-shaking, and also limited dead code elimination. 19 --progress=true|false Log progress to the console0 码力 | 64 页 | 1.04 MB | 1 年前3《玩转webpack》加餐:webpack5专题
cache/webpack,最⼤ 500MB,缓存时常两个星期,旧的缓存先淘汰。 webpack 5 webpack 4 构建优化:Tree Shaking 优化-嵌套的 Tree shaking webpack 5 webpack 4 构建优化:Tree Shaking 优化-内部模块 Tree shaking 代码⽣成:⽀持⽣成 ES6 代码 webpack 4 之前只⽣成 ES5 的代码。 webpack 50 码力 | 40 页 | 12.03 MB | 1 年前3《玩转webpack》第五章 进阶篇: webpack 构建速度和体积优化策略
tinypng:也是将24位png文件转化为更小有索引的8位图片,同时所有非必要的metadata 也会被剥离掉 tree shaking(摇树优化)复习 概念:1 个模块可能有多个方法,只要其中的某个方法使用到了,则整个文件都会被打到 bundle 里面去,tree shaking 就是只把用到的方法打入 bundle ,没用到的方法会在 uglify 阶段被擦除掉。 使用:webpack com/polyfill_service/v2/polyfill.min.js?unknown=polyfill&features=Promise,Map,Set 体积优化策略总结 Scope Hoisting Tree-shaking 图片压缩 动态 Polyfill 公共资源分离0 码力 | 36 页 | 8.13 MB | 1 年前3《玩转webpack》 第三章 基础篇 Webpack 进阶用法
minChunks: 2 } } } } } }; minuSize: 分离的包体积的⼤大⼩小 tree shaking(摇树优化) 概念:1 个模块可能有多个⽅方法,只要其中的某个⽅方法使⽤用到了了,则整个⽂文件都会被打到 bundle ⾥里里⾯面去,tree shaking 就是只把⽤用到的⽅方法打⼊入 bundle ,没⽤用到的⽅方法会在 uglify 阶段被擦除掉。 使⽤用:webpack 代码执⾏行行的结果不不会被⽤用到 代码不不会被执⾏行行,不不可到达 代码只会影响死变量量(只写不不读) if (false) { console.log('这段代码永远不会执行’); } Tree-shaking 原理理 利利⽤用 ES6 模块的特点: ·只能作为模块顶层的语句句出现 · import 的模块名只能是字符串串常量量 · import binding 是 immutable的0 码力 | 69 页 | 4.33 MB | 1 年前3The Power of RxJS In NativeScript + Angular
• Add operators on to the prototype • No tree shaking • Lettable operators • aka operator functions • Higher order functions • Yay tree shaking • Yay functional programming Lots more to come…0 码力 | 66 页 | 6.73 MB | 1 年前3webpack wasm challenge
NAMES IN BINARY • SAVES A FEW BYTES • BECOMES MORE RELEVANT WHEN USING MANY SMALL MODULES • TREE SHAKING WASM EXPORTS • WE REMOVE THE EXPORTS, BUT HAVE NO DCE • WE NEED A WASM MINIMIZER! THE FUTURE CONSTRUCT FOR WASM? MY OPINION • MANY SMALL WASMS > ONE BIG WASM • SIMILAR TO JS, CODE SPLITTING, TREE SHAKING • HIDING ASYNC IS IMPORTANT FOR TRANSPARENT USAGE IN LIBRARIES • CODE SPLITTING STAYS IMPORTANT0 码力 | 39 页 | 6.70 MB | 1 年前3MY STORY WITH WEBPACK
WEBPACK 1 DOCS) NOV 2015: FIRST WEBPACK 2 BETA • ECMASCRIPT MODULES ARE NOW NATIVELY SUPPORTED • TREE SHAKING (UNUSED EXPORTS ELIMINATION) • INTERNAL CODE IS IN PROGRESS OF BEING UPGRADED TO ES2015 2016: OF CommonsChunkPlugin JAN 2018: ALPHA VERSION WEBPACK 4 • OPTIMIZATION IMPROVEMENTS • BETTER TREE SHAKING WITH THE sideEffects FLAG • MODULE TYPES: NATIVE SUPPORT FOR: • JS (CJS/AMD/ESM) • JSON •0 码力 | 55 页 | 8.90 MB | 1 年前3Web的未来 新技术和新语言带来的改变
运行环境 Dart source code Dart VM JavaScript source code dart2js Source map tree shaking minification Dart2js Tree-shaking ● 语言的设计影响性能 ● 使用snapshot启动速度快10倍 ● 运行时不能改变对象结构有利于VM优化 ● Dart VM 性能已超越 JavaScript0 码力 | 91 页 | 3.44 MB | 1 年前3Vue.js v3.0 教程(Vue3 教程)
2 应用程序,我们强烈建议你等待迁移版本完成以获得更流畅的体验。 下面列出了从 2.x 开始的重大更改: 全局 Vue API 已更改为使用应用程序实例 全局和内部 API 已经被重构为可 tree-shakable 组件上 v-model 用法已更改 和非 - v-for 节点上 key 用法已更改 在同一元素上使用的 v-if 和 Vue.nextTick() 为方便起见,回调的 this 上下文 自动绑定到当前当前实例。 模块捆绑程序,如 webpack (opens new window) 支持 tree-shaking,这是“死代码消 除”的一个花哨术语。不幸的是,由于代码是如何在以前的 Vue 版本中编写的,全局 API Vue.nextTick() 不可摇动,将包含在最终捆绑中不管它们实际在哪里使用。 语法 全局 API Treeshaking - 329 - 本文档使用 书栈网 · BookStack.CN 构建 在 Vue 3 中,全局和内部 API 都经过了重构,并考虑到了 tree-shaking 的支持。因此,全局 API 现在只能作为 ES 模块构建的命名导出进行访问。例如,我们之前的片段现在应该如下所示: 1. import { nextTick } from 'vue'0 码力 | 368 页 | 3.97 MB | 1 年前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100