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 月愚蠢地删除了它们。 最后,我在 Node 发布中包含了NPM,这使得它成为事实上的标准。 - 不幸的是,有一个模块化的(私有控制的)存储库。 requirie("somemodule")不是明确的。 定义的地方太多了。 your javascript program package.json NPM's database require("somemodule") //0 码力 | 28 页 | 767.84 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
Curve文件系统元数据Proto(接口定义)curve文件系统元数据proto(代码接口定义,已实现) ## 1、 代码结构和代码目录 curve文件系统是相对于curve块设备比较独立的一块,在当前curve项目的目录下,增加一个一级目录curvefs,curvefs下有自己独立的proto\src\test。  ## 2、 文件系统proto定义 #### 2.1 mds.proto mds.proto /* * Copyright (c) 2020 NetEase Inc. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use0 码力 | 15 页 | 80.33 KB | 1 年前3
GIAC2019 Dubbo SpringCloud重新定义微服务治理0 码力 | 31 页 | 1.69 MB | 1 月前3
16-Nocalhost重新定义云原生开发环境-王炜## Nocalhost - 重新定义云原生开发环境 ## 前言 随着业务的快速发展,技术部门的组织架构在横向及纵向不断扩大和调整,与此同时,企业的生产资料:应用系统,也变得越来越庞大。为了让应用系统适配企业组织架构的调整,梳理组织架构对于应用权责的边界,大部分组织会选择使用“微服务”架构来对应用系统进行横向拆分,使得应用系统的维护边界适配组织架构的权责边界。 一般来说,越庞大的组织架构,应 jpg) ## Nocalhost - 重新定义云原生开发环境 Nocalhost 是一个云原生开发环境,希望让开发云原生应用像开发单体应用原始又简单。 Nocalhost 重新梳理了开发过程所涉及到的角色和资源: 团队管理人员 • 开发者 • 应用 · 集群 • 开发空间 通过对这些角色和资源的重新整合,Nocalhost重新定义了云原生开发环境,并带来了全新的云原生开发体验。 为了快速理解 Nocalhost 重新定义的云原生开发环境,让我们首先站在不同的角色来看 Nocalhost 能给他们带来什么。 开发人员: - 摆脱每次修改需要重新 build 新镜像以及长时间的循环反馈,修改代码立即生效 • 一键部署开发环境,摆脱本地环境搭建和资源不足的限制 - 本地 IDE 编辑器和开发环境联动,支持远程调试 - 图形化的 IDE 插件,无需熟悉 kubectl0 码力 | 7 页 | 7.20 MB | 1 年前3
古月《ROS入门21讲》15.服务数据的定义与使用.pdf## ROS入门 21讲 ### 15. 服务数据的定义与使用 主讲人:古月 ## 服务模型  服务模型(服务端/客户端) ## • 自定义服务数据 ## 如何自定义服务数据 string name uint8 age uint8 uint8 sex uint8 unknown = 0 uint8 male = 1 uint8 female = 2 ... string result Person.srv ## 定义srv文件; ### 在package.xml中添加功能包依赖message_generation message_runtime 0 码力 | 9 页 | 1.29 MB | 2 年前3
古月《ROS入门21讲》12.话题消息的定义与使用.pdf### 12. 话题消息的定义与使用 主讲人:古月 ## 话题模型  话题模型(发布/订阅) ## • 自定义话题消息 ## 如何自定义话题消息 string name uint8 sex uint8 age uint8 unknown unknown = 0 uint8 male = 1 uint8 female = 2 Person.msg ## 定义msg文件; ### 在package.xml中添加功能包依赖message_generation message_runtime ### 在CMakeLists PENDENCIES std_msg) • catkin_package(…… message_runtime) ## ➢ 编译生成语言相关文件 * 该例程将发布/person_info话题,自定义消息类型learning_topic::Person*/ ## • 创建发布者代码(C++) #include#include "learning_topic/Person 0 码力 | 9 页 | 1.34 MB | 2 年前3
曾宇星 如何实现 Istio 服务网格自定义扩展功能## 如何基于Istio 实现Mesh自定义扩展功能 曾宇星 阿里云云原生架构师 ## 自我介绍 ## • 阿里云技术专家、云原生架构师 - 长期从事服务端开发和架构工作,10多年分布式领域后台开发经验,目前主要关注于云原生、高性能、高可用分布式架构。 - 有多年 Service Mesh 、Envoy 网关、Kubernetes 容器平台等云原生领域相关开发工作经验。目前在阿里云服务网格团队从事 团队从事 Service Mesh 云产品研发和架构设计工作。 ## Agenda - 为什么需要自定义扩展能力 - Istio 下几种自定义扩展方式详细介绍 • 开发/运维人员使用最佳实践 • 总结 为什么Mesh需要自定义扩展能力? ## 为什么Mesh需要自定义扩展能力? ➢ 业务应用的多样性和差异性,导致Mesh用户需求的多样性 Istio 社区功能和用户实际需求有差异,需要补齐,特别是长尾非通用的小众需求 [Image](/uploads/documents/6/b/7/3/6b73080f855fb39690d8fd5aeba538d3/p8_2.jpg) ## I stio 下自定义扩展方式详细介绍 ## 自定义扩展方式之一:Wasm - kubectl create configmap new-filter \ --from-file=new-filter.wasm=mycode.wasm0 码力 | - 页 | 3.36 MB | 1 年前3
大型Web项目可用性提升 零脚本错误的实战 郭林烁 2017.10## 大型Web项目可用性提升 零脚本错误的实战 郭林烁 2017.10  ## 郭林烁 (joeyguo) @ 腾讯 AlloyTeam ## 1 ## 社区的相关提问 ##### 微信(1004) -=TFC2017=-.. 145f5081066816c9039d4b/p3_4.jpg) 下午8:23 ## 栋 不知道大家在代码上线以后,用什么来检测错误和性能的,是自己在代码里面实现还是用一些平台 @Alloyteam.郭林烁 脚本错误 想知道大家是怎么捕获异步函数的错误的 ## 上午11:21 ; 异步错误无法捕获 ## 4 / 上报方式 ## 通过Ajax发送数据 动态创建 img 标签的形式 function report(msg, level) { var reportUrl0 码力 | 62 页 | 7.09 MB | 2 年前3
带给你“一份应用需求定义,到处交付”的云原生交付体验## 带给你“一份应用需求定义,到处交付”的云原生应用交付体验 ## 手 Kubernetes Community Days  王国东(骁奕) 技术专家 阿里云  ## 云原生IaC方式定义服务 传统云上白屏化运维方式: 繁杂的手动操作,且无法快速复制 












