Borsh 安全高效的二进制序列化
第三届中国 Rust 开发者大会 安全高效的二进制序列化 Daniel Wang @ NEAR Borsh • 运行、编码效率 • 确定性 • 跨平台兼容性 二进制序列化的问题 Binary Object Representation Serializer for Hashing • 字节级别确定性 • 执行速度快 Borsh • 轻量级 • 每一个对象与其二进制表示之间都存在一个双射映射 中, borsh 并没有使用 serde • 全部逻辑原生实现 • 序列化、反序列化速度大幅领先其他解决方案 执行速度 执行速度 benchmark 执行速度 benchmark 执行速度 benchmark 执行速度 benchmark • 编译后的体积更小 • borsh 序列化后的二进制更精简 轻量级 序列化结果体积对比 Borsh 基本用法 Case Study NEAR NEAR 智能合约 Case Study Solana 智能合约 Case Study • non self-describing • 保证序列化后的二进制唯一性和确定性 • 主要序列化规则 Borsh 规范 • 整数采用低字节序( little endian) 存储 • 对于动态长度的集合,先用一个 u32 存储集合 size • 对于原本无序的集合(如 hashmap ),存储时使用0 码力 | 21 页 | 3.35 MB | 1 年前3一次线上java 应用响应时间过长问题的排查
链滴 一次线上 java 应用响应时间过长问题的排查 作者:xinzhongtianxia 原文链接:https://ld246.com/article/1569574881351 来源网站:链滴 许可协议:署名-相同方式共享 4.0 国际 (CC BY-SA 4.0)最近接手一个老 java 应用,没多久接到响应时间太长的报警,整个排查过程还是挺有意思的, 录一下。
整个过程中,设计到 cpu,内存,垃圾回收,引用,spring, 单例 等等知识,整个下来,心情愉悦。< p>接到报警
吃完晚饭回来,接到报警短信,服务响应时间太长,达到 2s 以上。
第一反应,怎么可能,这个应用很简单,就提供了几个查询接口,QPS id="垃圾回收">垃圾回收看垃圾回收日志,发现一直在进行 Full GC,但是几乎没啥效果,GC 完了,老年代依然是几乎 满的状态。
即使是 CMS,也不能避免传说中的 stop the world,所以响应时间变长了。
但是,现在问题来了,Full GC 回收不掉的对象都是啥啥啥?分析 java 堆内存
先把线上流量从这台机器切走,然后
0 码力 | 3 页 | 247.74 KB | 1 年前32020美团技术年货 算法篇
与特征的类型、数量及复杂度也在与日俱增。算法团队如何尽量少地开发和部署上 算法 < 3 线,如何快速进行模型特征的迭代?如何确保良好的预估性能?在线预估框架 Augur 应运而生。经过一段时间的实践,Augur 也有效地满足了算法侧的需求,并成为美团 搜索与 NLP 部通用的解决方案。下面,我们将从解读概念开始,然后再分享一下在 实施过程中我们团队的一些经验和思考。 2. 抽象过程:什么是模型预估 都是由其他特征以及 OP 组合而成的特征。通过这种方式,业务方根据自 己的需求编写 OP , 可以快速复用已有的 OP 和特征,创造自己需要的新特征。而在 真实的场景中,IO OP 的数量相对固定。所以经过一段时间的累计,OP 的数量会趋 于稳定,新特征只需基于已有的 OP 和特征组合即可实现,非常的高效。 4.1.3 配置化的模型表达 特征可以用利用 OP、使用表达式的方式去表现,但特征还可能需要经过 程资源留给实际计算。因此,预估服务对机器的要求并不高。 为了描述清楚整个过程,这里需要明确特征的两种类型: ● ContextLevel Feature:全局维度特征,一次模型预估请求中,此类特征是通 用的。比如时间、地理位置、距离、用户信息等等。这些信息只需计算一次。 ● DocLevel Feature:文档维度特征,一次模型预估请求中每个文档的特征不 同,需要分别计算。 一个典型的模型预估请求,如下图所示:0 码力 | 317 页 | 16.57 MB | 1 年前32022年美团技术年货 合辑
新春将至,一年一度的美团技术年货也如约到来! 时间煮雨,岁月缝花,花开无声,花谢无语。2022这一年,我们一起经 历了无数的悲喜,也留下了满满的回忆。 也许生活就是这样,只有历尽波澜,才能欣赏茫茫大海的辽阔和无边, 才能感受到漫天星辰的光芒和温暖。 在2023年春节到来之际,我们从去年美团技术团队公众号上精选了60多 篇技术文章,整理制作成一本1300多页的电子书,作为新年礼物赠送给 继而又促进网络的正向优化。 例如,OTA[7] 通过将样本匹配建模成最佳传输问题,求得全局信息下的最佳样本匹 配策略以提升精度,但 OTA 由于使用了 Sinkhorn-Knopp 算法导致训练时间加长, 而 SimOTA[4] 算法使用 Top-K 近似策略来得到样本最佳匹配,大大加快了训练速 度。故 YOLOv6 采用了 SimOTA 动态分配策略,并结合无锚范式,在 nano 尺寸 CSPStackRep,它在 综合性能上比上一版的 Single Path 结构更具优势。 2. 针对不同网络,系统性地验证了各种最新策略 / 算法的优劣,综合精度和速 度,为每类网络选择合适的方案。同时将模型整体训练时间减少了 50%,极 大地提升了模型的训练效率。 3. 引入自蒸馏思想并设计了新的学习策略,大幅提升了 YOLOv6-M/L 的模型 精度。 算法 < 15 4. 通过训练时 Early Stop0 码力 | 1356 页 | 45.90 MB | 1 年前3Python 标准库参考指南 3.8.20
. . . . . . . . . . . . . . . . . . . 36 4.6 序列类型 --- list, tuple, range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 4.7 文本序列类型 --- str . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 4.8 二进制序列类型 --- bytes, bytearray, memoryview . . . . . . . . . . . . . . . . . . . . . . 52 4.9 集合类型 --- set, frozenset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 8 数据类型 171 8.1 datetime --- 基本日期和时间类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 8.2 calendar --- 日历相关函数0 码力 | 2052 页 | 9.74 MB | 9 月前3Python 标准库参考指南 3.10.15
. . . . . . . . . . . . . . . . . . 39 4.6 序列类型 --- list, tuple, range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 4.6.1 通用序列操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 4.6.2 不可变序列类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 4.6.3 可变序列类型 . . . . . . . . . . . . . . . . . . . . . . . . 对象 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 4.7 文本序列类型 --- str . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 40 码力 | 2207 页 | 10.45 MB | 9 月前3Python 标准库参考指南 3.8.20
. . . . . . . . . . . . . . . . . . . . 34 4.6 序列类型 --- list, tuple, range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.7 文本序列类型 --- str . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 4.8 二进制序列类型 --- bytes, bytearray, memoryview . . . . . . . . . . . . . . . . . . . . 49 4.9 集合类型 --- set, frozenset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 8 数据类型 159 8.1 datetime --- 基本日期和时间类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 8.2 calendar --- 日历相关函数 . .0 码力 | 1927 页 | 9.69 MB | 9 月前3Python 标准库参考指南 3.8.20
. . . . . . . . . . . . . . . . . . . . 34 4.6 序列类型 --- list, tuple, range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.7 文本序列类型 --- str . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 4.8 二进制序列类型 --- bytes, bytearray, memoryview . . . . . . . . . . . . . . . . . . . . 49 4.9 集合类型 --- set, frozenset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 8 数据类型 159 8.1 datetime --- 基本日期和时间类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 8.2 calendar --- 日历相关函数 . .0 码力 | 1927 页 | 9.69 MB | 9 月前3Python 标准库参考指南 3.7.13
. . . . . . . . . . . . . . . . . . . 34 4.6 序列类型 --- list, tuple, range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.7 文本序列类型 --- str . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 4.8 二进制序列类型 --- bytes, bytearray, memoryview . . . . . . . . . . . . . . . . . . . . . . 50 4.9 集合类型 --- set, frozenset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 8 数据类型 163 8.1 datetime --- 基本的日期和时间类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 8.2 calendar --- 日历相关函数 . .0 码力 | 1961 页 | 9.14 MB | 9 月前3Python 标准库参考指南 3.7.13
. . . . . . . . . . . . . . . . . . . . 34 4.6 序列类型 --- list, tuple, range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.7 文本序列类型 --- str . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 4.8 二进制序列类型 --- bytes, bytearray, memoryview . . . . . . . . . . . . . . . . . . . . 49 4.9 集合类型 --- set, frozenset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 8 数据类型 157 8.1 datetime --- 基本的日期和时间类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 8.2 calendar --- 日历相关函数 . . . .0 码力 | 1846 页 | 9.09 MB | 9 月前3
共 512 条
- 1
- 2
- 3
- 4
- 5
- 6
- 52