Go在工程实践的错误处理
Golang在工程实践中的错误处理 彭友顺 石墨文档 产研负责人 目 录 为什么我们处理错误会这么慢 01 如何完善错误信息 02 优雅处理错误信息 03 分布式错误处理 04 错误信息手册的必要性 05 为什么我们处理错误 会这么慢 第一部分 错误信息不够完善 why 原因 出现 错误 定位 慢 恢复 慢 效率低 为什么我们处理错误会这么慢 错误处理不够优雅0 码力 | 30 页 | 3.11 MB | 1 年前3降级预案在同程艺龙的工程实践-王俊翔
降级预案在同程艺⻰龙的⼯工程实践 演讲者 / 王俊翔 同程艺龙 ⾃自我介绍 搜索故障 微信⼩小程序 API⽹网关 资源1 搜索引擎 统⼀一资源⽹网关 资源2 资源3 资源4 …… 资源4 ⼤大量量超时 统⼀一资源⽹网关 搜索引擎 API⽹网关 ⼤大量量请求超时 缺乏熔断设计 交易易故障 第三⽅方⽀支付 ⽀支付中⼼心 ⽀支付回写 消息队列列 ⽀支付通知 交易易中台 ,并做好降级预防措施 • 参数修正,及时调整流控、降级策略略,优化告警、超时参数设置 • 模拟线上故障,进⾏行行故障复现,验证故障后续的处理理措施是否⾏行行之有效 • 以战养兵,历练团队,让⼯工程师有更更多机会积累经验,提升应对故障的能⼒力力 常态化的故障演练对系统进⾏行行反复验证 系统设计 Agent Core Custom Code Model Burn CPU Servlet 治 理理保障系统的可⽤用性 • 通过反复的故障演练,发现系统中的薄弱点,并进⾏行行有效的预防 • 配合降级预案,让系统的可靠性更更易易验证,让演练更更加常态化 • 历练团队、积累经验,促进⼯工程师的进步,提⾼高应对故障的能⼒力力 ⾃自我介绍0 码力 | 26 页 | 18.67 MB | 1 年前3PyConChina2022-杭州-Pants:Python工程化必备构建工具-沈达
Pants: Python工程化 必备构建工具 主讲人: 沈达 – 比图科技数据工程师 Pants 2 https://www.pantsbuild.org 面向任意规模代码仓库的高性能、可扩展、用户友好的构建系统。 由 主要实现 用 定义构建 对 支持最好 Pants 1 诞生于推特 Pants 2 涅槃重生 由Toolchain赞助 人生苦短,我用Python 用户 JupyterLab 个人:JupyterLab最佳实践 用户 JupyterLab 痛点:如何快速启动 痛点:如何分享、协作 痛点:如何管理依赖 模版工程 https://github.com/da-tubi/jupyterlab-best-practice 企业项目:多个子项目的Python代码仓库 模版工程 https://github.com/da-tubi/pants-pyspark-subprojects • 可扩展 智能依赖 • 新建子项目简单 • 开发环境和生产环境一致 • 本地缓存(SaaS支持:远程缓存) • 只要没有import,就会智能排除 业余项目:如何分发用Python实现的插件 示例工程 https://github.com/texmacs/plugins-in-python JAR • Executable • Assembly PEX • Executable • Assembly0 码力 | 9 页 | 975.41 KB | 1 年前3跟我一起写 Makefile (PDF 重制版)
HTML 的标签的含义。特别在 Unix 下的软件编译,你就不能不自己写 makefile 了,会不 会写 makefile,从一个侧面说明了一个人是否具备完成大型工程的能力。 因为,makefile 关系到了整个工程的编译规则。一个工程中的源文件不计其数,并且按类型、功能、 模块分别放在若干个目录中,makefile 定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需 要后编译,哪些文 带来的好处就是——“自动化编译”,一旦写好,只需要一个 make 命令,整个工程完全自 动编译,极大的提高了软件开发的效率。make 是一个命令工具,是一个解释 makefile 中指令的命令工 具,一般来说,大多数的 IDE 都有这个命令,比如:Delphi 的 make,Visual C++ 的 nmake,Linux 下 GNU 的 make。可见,makefile 都成为了一种在工程方面的编译方法。 现在讲述如何写 makefile make 使用手册,在这个示例中,我们的工程有 8 个 c 文件,和 3 个头文件,我们要写一个 makefile 来告诉 make 命令如何编译和链接这几个文件。我们的规则是: 1. 如果这个工程没有编译过,那么我们的所有 c 文件都要编译并被链接。 2. 如果这个工程的某几个 c 文件被修改,那么我们只编译被修改的 c 文件,并链接目标程序。 3. 如果这个工程的头文件被改变了,那么我们需要编译引用了这几个头文件的0 码力 | 81 页 | 628.51 KB | 1 年前3FISCO BCOS 2.9.0 中文文档
提供企业级联盟链部署工具 可视化数据展现 区块链浏览器 可视化节点管理 基于WeBASE,提供节点管理器 动态管理节点 支持动态新增、剔除、变更节点 动态更改配置 支持动态变更系统配置 数据备份与恢复 提供数据导出与恢复服务组件 监控统计 输出统计日志,提供监控工具 监管审计 基于WeBASE,提供监管审计入口 架构 FISCO BCOS 在2.0中,创新性提出“一体两翼多引擎”架构,实现系统吞吐能 确认您的java版本 $ java -version # 返回 # java version "14.0.2" 2020-07-14 第二步. 创建一个Java工程 在IntelliJ IDE中创建一个gradle项目,勾选Gradle和Java,并输入工程名 asset-app。 注意:该项目的源码可以用以下方法获得并参考。(此步骤为非必须步骤) 注解 如果因为网络问题导致长时间无法下载,请尝试将`199 ~/fisco $ curl -#LO https://github.com/FISCO- BCOS/LargeFiles/raw/master/tools/asset-app.tar.gz # 解压得到Java工程项目asset-app $ tar -zxf asset-app.tar.gz repositories { mavenCentral() maven { allowInsecureProtocol0 码力 | 2649 页 | 201.08 MB | 1 年前3FISCO BCOS 2.9.0 中文文档
提供企业级联盟链部署工具 可视化数据展现 区块链浏览器 可视化节点管理 基于WeBASE,提供节点管理器 动态管理节点 支持动态新增、剔除、变更节点 动态更改配置 支持动态变更系统配置 数据备份与恢复 提供数据导出与恢复服务组件 监控统计 输出统计日志,提供监控工具 监管审计 基于WeBASE,提供监管审计入口 架构 FISCO BCOS 在2.0中,创新性提出“一体两翼多引擎”架构,实现系统吞吐能 确认您的java版本 $ java -version # 返回 # java version "14.0.2" 2020-07-14 第二步. 创建一个Java工程 在IntelliJ IDE中创建一个gradle项目,勾选Gradle和Java,并输入工程名 asset-app。 注意:该项目的源码可以用以下方法获得并参考。(此步骤为非必须步骤) 注解 如果因为网络问题导致长时间无法下载,请尝试将`199 ~/fisco $ curl -#LO https://github.com/FISCO- BCOS/LargeFiles/raw/master/tools/asset-app.tar.gz # 解压得到Java工程项目asset-app $ tar -zxf asset-app.tar.gz repositories { mavenCentral() maven { allowInsecureProtocol0 码力 | 2649 页 | 201.08 MB | 1 年前3FISCO BCOS 2.0 中文文档
提供企业级联盟链部署工具 可视化数据展现 区块链浏览器 可视化节点管理 基于WeBASE,提供节点管理器 动态管理节点 支持动态新增、剔除、变更节点 动态更改配置 支持动态变更系统配置 数据备份与恢复 提供数据导出与恢复服务组件 监控统计 输出统计日志,提供监控工具 监管审计 基于WeBASE,提供监管审计入口 架构 FISCO BCOS 在2.0中,创新性提出“一体两翼多引擎”架构,实现系统吞吐能 确认您的java版本 $ java -version # 返回 # java version "14.0.2" 2020-07-14 第二步. 创建一个Java工程 在IntelliJ IDE中创建一个gradle项目,勾选Gradle和Java,并输入工程名 asset-app。 注意:该项目的源码可以用以下方法获得并参考。(此步骤为非必须步骤) 注解 如果因为网络问题导致长时间无法下载,请尝试将`199 ~/fisco $ curl -#LO https://github.com/FISCO- BCOS/LargeFiles/raw/master/tools/asset-app.tar.gz # 解压得到Java工程项目asset-app $ tar -zxf asset-app.tar.gz repositories { mavenCentral() maven { allowInsecureProtocol0 码力 | 2649 页 | 201.08 MB | 1 年前3FISCO BCOS 3.0.0-rc2 中文文档
提供企业级联盟链部署工具 可视化数据展现 区块链浏览器 可视化节点管理 基于WeBASE,提供节点管理器 动态管理节点 支持动态新增、剔除、变更节点 动态更改配置 支持动态变更系统配置 数据备份与恢复 提供数据导出与恢复服务组件 监控统计 输出统计日志,提供监控工具 监管审计 基于WeBASE,提供监管审计入口 架构 FISCO BCOS 在2.0中,创新性提出“一体两翼多引擎”架构,实现系统吞吐能 确认您的java版本 $ java -version # 返回 # java version "14.0.2" 2020-07-14 第二步. 创建一个Java工程 在IntelliJ IDE中创建一个gradle项目,勾选Gradle和Java,并输入工程名 asset-app。 注意:该项目的源码可以用以下方法获得并参考。(此步骤为非必须步骤) 注解 如果因为网络问题导致长时间无法下载,请尝试将`199 ~/fisco $ curl -#LO https://github.com/FISCO- BCOS/LargeFiles/raw/master/tools/asset-app.tar.gz # 解压得到Java工程项目asset-app $ tar -zxf asset-app.tar.gz repositories { mavenCentral() maven { allowInsecureProtocol0 码力 | 2569 页 | 166.06 MB | 1 年前3FISCO BCOS 2.9.0 中文文档
提供企业级联盟链部署工具 可视化数据展现 区块链浏览器 可视化节点管理 基于WeBASE,提供节点管理器 动态管理节点 支持动态新增、剔除、变更节点 动态更改配置 支持动态变更系统配置 数据备份与恢复 提供数据导出与恢复服务组件 监控统计 输出统计日志,提供监控工具 监管审计 基于WeBASE,提供监管审计入口 架构 FISCO BCOS 在2.0中,创新性提出“一体两翼多引擎”架构,实现系统吞吐能 确认您的java版本 $ java -version # 返回 # java version "14.0.2" 2020-07-14 第二步. 创建一个Java工程 在IntelliJ IDE中创建一个gradle项目,勾选Gradle和Java,并输入工程名 asset-app。 注意:该项目的源码可以用以下方法获得并参考。(此步骤为非必须步骤) 注解 如果因为网络问题导致长时间无法下载,请尝试将`199 ~/fisco $ curl -#LO https://github.com/FISCO- BCOS/LargeFiles/raw/master/tools/asset-app.tar.gz # 解压得到Java工程项目asset-app $ tar -zxf asset-app.tar.gz repositories { mavenCentral() maven { allowInsecureProtocol0 码力 | 2585 页 | 166.09 MB | 1 年前3FISCO BCOS 2.9.0 中文文档
IDE:IntelliJ IDE. 进入IntelliJ IDE官网,下载并安装社区版IntelliJ IDE 4.4.2 第二步. 创建一个Java工程 在IntelliJ IDE中创建一个gradle项目,勾选Gradle和Java,并输入工程名asset-app。 注意:该项目的源码可以用以下方法获得并参考。(此步骤为非必须步骤) 4.4. 4. 创建区块链应用项目 39 FISCO curl -#LO https://github.com/FISCO-BCOS/LargeFiles/raw/master/tools/asset-app. ˓→tar.gz # 解压得到Java工程项目asset-app $ tar -zxf asset-app.tar.gz 注解: • 如 果 因 为 网 络 问 题 导 致 长 时 间 无 法 下 载 , 请 尝 试 将‘199.232 1/node0/conf/node.key ˓→ed157f4588b86d61a2e1745efe71e6ea 执行后,节点私钥自动被加密,加密前的文件备份到了文件node.key.bak.xxxxxx中,请将备份私 钥妥善保管,并删除节点上生成的备份私钥 [INFO] File backup to "nodes/127.0.0.1/node0/conf/node.key.bak.1546502474"0 码力 | 1489 页 | 107.09 MB | 1 年前3
共 268 条
- 1
- 2
- 3
- 4
- 5
- 6
- 27