Node 的设计错误## Node 的设计错误 Ryan Dahl JS Conf 柏林 2018.06 ## 背景: 1. 基于最初的开发,我创建了并管理 Node。 2. 我的主要关注目标是事件驱动的 HTTP server。 3. 这一主要目标对当时服务器端的 JavaScript 起着关键作用。即使在当时这一点不那么明显,但是服务器端 JS 的成功需要事件循环的助力。 ## 背景: 2012 年我离开 动态语言是科学计算的正确工具,通常你会用它进行快速的一次性计算。 而 JavaScript 就是最好的动态语言。 但是相反,现在我将会抱怨 Node 的所有缺点。 当你是某个项目的负责人时,你总是很难发现其中的错误。 有时 Node 对我来说就像是板上钉钉的事。 它本来可以更好。 ## 遗憾:不遵守“诺言” - 我在 2009 年 6 月向 Node 添加了 Promise,但在 2010 年 2 月愚蠢地删除了它们。 Rust 可能是一个不错的选择。 - 如果允许其他人针对 Go 或 Rust 构建他们自己的 Deno,C++ 可能仍然是一个不错的选择? ## Deno 目标:杂项 - 发生未捕获 Promise 错误时立刻自动终止运行(疯狂的是在 Node 中并非如此) - 支持 top-level 的 await (尚未在原型中) • 兼容浏览器(功能重叠时) # Deno : https://github0 码力 | 28 页 | 767.84 KB | 2 年前3
DeepSeek图解10页PDF## DeepSeek 图解 10 页 PDF 作者:郭震 2025.2.3 ## 目录 1 本地部署并运行 DeepSeek …… 2 1.1 为什么要在本地部署 DeepSeek …… 2 1.2 DeepSeek 本地部署三个步骤 …… 2 1.3 DeepSeek 本地运行使用演示 …… 4 2 DeepSeek 零基础必知 …… 5 2.1 LLM 基础概念0 码力 | 11 页 | 2.64 MB | 1 年前3
firebird gfix0 码力 | 44 页 | 247.13 KB | 2 年前3
Go在工程实践的错误处理Golang在工程实践中的错误处理  彭友顺 石墨文档 产研负责人  为什么我们处理错误会这么慢 01 如何完善错误信息 02 优雅处理错误信息 03 分布式错误处理 04 错误信息手册的必要性 05 第一部分 ## 为什么我们处理错误 会这么慢 ## 为什么我们处理错误会这么慢 why 出现错误 定位慢 恢复慢 效率低 ## 原因 错误信息不够完善 错误处理不够优雅 分布式错误难以串联 错误信息难以识别 ## 第二部分 ## 如何完善错误信息 ## 为什么调试慢?-- 为什么调试慢?-- 错误信息 充足信息 gRPC错误日志:param error 高亮信息 封装组件 哪个Client 调用? 哪一行代码 调用? 我的 参数问题? 对方的问题? {"lv":"error","ts":1711111870,"msg":"grpc error","error":"param0 码力 | 30 页 | 3.11 MB | 2 年前3
【彩页】202405 DataEase嵌入式版Datasheet0 码力 | 2 页 | 3.02 MB | 1 年前3
王强-Apache RocketMQ事务消息## Apache RocketMQ 事务消息 王强 (辽天) 阿里巴巴 中间件技术专家 ## QCon 全球软件开发大会 北京·2019 更多技术干货分享,北京站精彩继续 提前参与,还能享受更多优惠 识别二维码 查看了解更多 2019.qconbeijing.com  ## TABLE OF CONTENTS 大纲 • Apache RocketMQ 简介 • Apache RocketMQ 存储设计 • 事务消息的演进与Apache RocketMQ的实现 • Cloud Native时代下消息系统的挑战 ## Apache RocketMQ  金融交易 分布式事务  电子商务 异步解耦  ## 微信号: ## scottlewis ## 分布式事务框架 Seata-Golang  刘晓敏 & QA 05 目录 ## 什么是分布式事务问题? 分布式事务就是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。简单的说,就是一次大的操作由不同的小操作组成,这些小的操作分布在不同的服务器上,且属于不同的应用,分布式事务需要保证这些小操作要么全部成功,要么全部失败。本质上来说,分布式事务就是为了保证不同数据库的数据一致性。 ## Demo Demo 演示 1997-1998 1 ## Seata 原理 ## 整体机制: • 一阶段:业务数据和回滚日志记录在同一个本地事务中提交,释放本地锁和连接资源。 • 二阶段: • 提交异步化,非常快速地完成。 • 回滚通过一阶段的回滚日志进行反向补偿。 BranchSession Lock BranchSession Lock  王启军,华为云PaaS团队架构师,负责微服务框架的开发。曾任当当网架构师,主导电商平台架构设计;曾就职于搜狐负责手机微博的研发。《持续演进的Cloud Native》作者,微信公众号“奔跑中的蜗牛”博主。 [Image](/uploads/documents/4/f/c/1/4fc1dac86fed58e3630871012bbe2224/p5_1.jpg) |方案\\指标|2PC 传统事务|可靠事件|TCC 柔性事务|SAGA 补偿事务| |---|---|---|---|---| |数据一致性|强一致|最终一致|最终一致|最终一致| |总体性能|低|高|取决于实现|取决于实现| |业务侵入性|较低侵入|高侵入|高侵入|高侵入| |产品成熟度|高|高|一般|低|  ## 分布式事务管理中间件 (Distributed Transaction Management, DTM) ## DTM总体架构(TCC) 用户侧 系统侧  • 分布式事务和两阶段提交的原理 Greenplum两阶段提交协议的实现 Greenplum两阶段提交协议的优化 ## 事务的属性:ACID |属性|含义|数据库系统的实现| |---|---|---| |Atomic原子性|事务中的操作要么全部正确执行,要么完全不执行。|Write 完全不执行。|Write Ahead Logging,分布式事务:两阶段提交协议| |Consistency一致性|数据库系统必须保证事务的执行使得数据库从一个一致性状态转移到另一个一致性状态。(满足完整性约束)|实现对A、I、D三个属性的支持| |Isolation隔离性|多个事务并发地执行,对每个事务来说,它并不会感知系统中有其他事务在同时执行。|多版本并发控制Multi-Version Concurrency0 码力 | 42 页 | 2.12 MB | 2 年前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100
相关搜索词
GYPPromiseNode_modules安全性require函数DeepSeek-R1强化学习监督微调推理导向通用强化学习gfix数据库恢复gbak工具索引页错误事务页错误错误处理错误信息分布式错误Fail Fast错误链嵌入式BIDataEase嵌入式版ISV数据可视化自助式分析Apache RocketMQ事务消息分布式事务Cloud Native高并发TiDBHBaseSQLOLTP分布式事务框架两阶段提交机制Seata-Golang注册中心配置中心PostgreSQLGRPCDTMTCC模式微服务架构幂等性原子性事务两阶段提交协议Write Ahead Logging (WAL)Greenplum













