领域驱动设计&中台/淘宝应用架构升级——反应式架构的探索与实践淘宝应⽤用架构升级 反应式架构的探索与实践 淘宝 泽彬(许泽彬) • 花名:泽彬 • 就职于阿⾥里里,经历: • 负责淘宝应⽤用架构升级 • 核⼼心开发 - 建设⽤用户增⻓长设施与平台建设 • 负责过分布式调⽤用链跟踪框架 & 系统 • 核⼼心开发 - 分布式数据库同步系统 • Github :https://github.com/zavakid • 开源项⽬目: 01 架构升级的效果 02 架构升级的思考 03 架构升级的实践 CONTENTS 01 架构升级的效果 02 架构升级的思考 03 架构升级的实践 架构升级的效果 我的淘宝 · RT 降低 40%+ · QPS 提升 30% 猜你喜欢 · QPS 提升 90%+ · LOAD下降 70%+ 到底是怎样的架构升级 能达到这种效果? 能达到这种效果? CONTENTS 01 架构升级的效果 02 架构升级的思考 03 架构升级的实践 架构升级的思考 现有架构的问题? 现有架构的问题 同步等待 • 现有同步模型,线程 多 load ⾼高 • 资源利利⽤用率 应⽤用本身的解决⽅方案? 并⾏行行度有限 • ⽆无法纯业务依赖并发 • 微服务化让问题更更凸 显 • RT 累积 RT 与 ⽤用户增⻓长0 码力 | 27 页 | 1.13 MB | 1 年前3
FISCO BCOS 1.3 中文文档FISCO BCOS Documentation FISCO BCOS平台是金融区块链合作联盟(深圳)(以下简称:金链盟)开源 工作组以金融业务实践为参考样本,在BCOS开源平台基础上进行模块升级与 功能重塑,深度定制的安全可控、适用于金融行业且完全开源的区块链底层平 台。 金链盟开源工作组获得金链盟成员机构的广泛认可,并由专注于区块链 底层技术研发的成员机构及开发者牵头开展工作。其中首批成员包括以下单位 ,编译配置文件 build.gradle可参考bcosliteclient.zip中的编译配置; java应用根目录的lib目录下要存放FISCO BCOS的web3sdk.jar,web3sdk 升级时,首先请从github下载最新[web3sdk.jar](https://github.com/FISCO- BCOS/web3sdk/releases)替换java应用的原lib文件夹下的web3sdk acle JDK1.8版本,尚 未支持其他的java版本,请参考物料包java安装 ERROR - OpenSSL 1.0.2 be requied 物料包需要openssl 1.0.2版本,请升级openssl版本。 ERROR - failed to get openssl version 无法获取openssl的版本,请尝试从新安装openssl。 ERROR - XXX is not0 码力 | 491 页 | 5.72 MB | 1 年前3
Go 入门指南(The way to Go)./all.bash 在完成编译之后(通常在 1 分钟以内,如果你在 B 型树莓派上编译,一般需要 1 个小时),你会在终 端看到如下信息被打印: 图 2.3 完成编译后在终端打印的信息 注意事项 在测试 net/http 包时有一个测试会尝试连接 google.com ,你可能会看到如下所示的一个无厘头 的错误报告: Go入门指南 - 16 - 本文档使用 看云 构建 ‘make[2]: 位处理器,Go 不支持 PowerPC 处理器。 你可以通过该页面查看有关在 PowerPC 处理器上的移植进度:https://codedr-go- ppc.googlecode.com/hg/。 注意事项 在 Mac 系统下使用到的 C 工具链是 Xcode 的一部分,因此你需要通过安装 Xcode 来完成这些工具的安 装。你并不需要安装完整的 Xcode,而只需要安装它的命令行工具部分。 你可以在 代码从旧的发行版迁移到最新的发行版,它主要负责简单的、重复的、枯燥无 味的修改工作,如果像 API 等复杂的函数修改,工具则会给出文件名和代码行数的提示以便让开发人 员快速定位并升级代码。Go 开发团队一般也使用这个工具升级 Go 内置工具以及 谷歌内部项目的代 码。 go fix 之所以能够正常工作是因为 Go 在标准库就提供生成抽象语法树和通过抽象语法树对代码 进行还原的功能。该工具会尝试更新当前目录下的所有0 码力 | 380 页 | 2.97 MB | 1 年前3
CmlPHP v2.x 开发手册
据 1.6.6.15.3 4. 通过字段值删除数据 1.6.6.15.4 5. 获取总数 1.6.6.15.5 6. 获取列表 1.6.6.15.6 7. 注意事项 1.6.6.15.7 16. 同时查询多个库 1.6.6.16 7. 模型-MongoDB 1.6.7 1. Orm详细Api 1.6.7.1 8. 服务 加密解密 1.8.4 9. 常见问题 1.9 1. 模板中不同的url_model模式下传参给后端 ? &符混乱 1.9.1 10. 服务高可用 1.10 11. 升级日志 1.11 CmlPHP v2.x开发手册 本教程是针对CmlPHP开发框架的V2.x系列版本的开发使用教程。 本教程离线版下载:pdf、mobi、epub CmlPHP主页:cmlphp 属性,若有则自动提取,若没有则使用配置文件中数据库相关配置 里配置的表前缀,建议在当前模型的表前缀与配置中数据库相关配置里配置的表前 缀不一样的时候在当前model中声明 $tablePrefix 属性 注意事项 使用快捷方法的时候操作的db都为 default_db 中配置的db,如果是操作其它db 如 game_db 需 要 在 相 应 的 模 型 中 声 明 $db 属 性 值 为 相 应 的0 码力 | 251 页 | 973.37 KB | 1 年前3
Django、Vue 和Element UI 前后端原理论述24 《51 测试天地》七十四 www.51testing.com 说明:本篇文档包括 MeterSphere 基本的安装过程及常规报错,但是一些环境原因,最后没 有安装成功,现将安装过程及注意事项进行整理,供参考!!! 系统要求: 1、8c 32G 2、windows 纯净版(没有其他系统软件) 安装过程 ·安装 WSL ·安装 Ubuntu ·Docker 安装与配置 ·下载安装包 Ubuntu,报错 WslRegisterDistribution failed with error: 0x800701bc 解决方法:出现这个 error 的原因是:wsl1 升级到 wsl2 之后,内核却没有升级,因 此需要更新内核。 解决方法:下载最新的 wsl 安装包,安装包下载后,直接运行安装即可。wsl 下载更 新。 成功后截图 : 3、Ubuntu 切换 root 用户 《51 测试天地》七十四 www.51testing.com 上述内容为自动化流程的几个关键操作函数,后续的功能操作,也是这几种关键方 法实现,读者们自行实现定制化操作,但在实现过程有以下注意事项: 1、在实现过程中,建议每一次鼠标模拟点击前进行一次应用程序置顶操作 setFront(hwnd); 2、建议点击间隔秒数控制较大一些,使用 time.sleep(睡眠秒数)进行设置,避免程序0 码力 | 61 页 | 6.84 MB | 1 年前3
CmlPHP v2.x 开发手册
6.14 1.6.15 1.6.16 1.6.17 1.6.17.1 1.6.17.2 1.6.18 1.6.19 1.6.20 1.6.21 1.6.22 1.6.23 注意事项 同时查询多个库 模型-MongoDB Orm详细Api 服务 视图 统一的API Html模板引擎 Blade模板引擎 锁-并发处理 缓存 语言包 日志 调试 Session自定义保存位置 伪静态配置 Apache Nginx 静态资源管理 安全 防注入 用户数据输入 csrf 加密解密 常见问题 模板中不同的url_model模式下传参给后端 ? &符混乱 服务高可用 升级日志 CmlPHP v2.x开发手册 本教程是针对CmlPHP开发框架的V2.x系列版本的开发使用教程。 本教程离线版下载:pdf、mobi、epub CmlPHP主页:cmlphp.com 动提取,若没有则使用配置文件中数据库相关配置里配置的表前 缀,建议在当前模型的表前缀与配置中数据库相关配置里配置的 表前缀不一样的时候在当前model中声明 $tablePrefix 属性 注意事项 使用快捷方法的时候操作的db都为 default_db 中配置的db,如果 是操作其它db如 game_db 需要在相应的模型中声明 $db 属性值为 相应的 db配置名称 如 有一个0 码力 | 245 页 | 720.67 KB | 1 年前3
CmlPHP v2.x 开发手册
简单的单字段自减(多字段参考update) 聚合操作 事务 调用存储过程 原生/子查询/union 快捷方法 通过某字段值获取数据 添加数据 通过某字段值更新数据 通过字段值删除数据 获取总数 获取列表 注意事项 同时查询多个库 模型-MongoDB Orm详细Api 服务 视图 统一的API Html模板引擎 Blade模板引擎 锁-并发处理 缓存 语言包 日志 调试 Session自定义保存位置 伪静态配置 Apache Nginx 静态资源管理 安全 防注入 用户数据输入 csrf 加密解密 常见问题 模板中不同的url_model模式下传参给后端 ? &符混乱 服务高可用 升级日志 3 CmlPHP v2.x开发手册 本教程是针对CmlPHP开发框架的V2.x系列版本的开发使用教程。 本教程离线版下载:pdf、mobi、epub CmlPHP主页:cmlphp.com 属性,若有则自动提取,若没有则使用配置文件中数据 库相关配置里配置的表前缀,建议在当前模型的表前缀与配置中数据库相关配置里配置的表前缀 不一样的时候在当前model中声明 $tablePrefix 属性 75 注意事项 使用快捷方法的时候操作的db都为 default_db 中配置的db,如果是操作其它db如 game_db 需要在 相应的模型中声明 $db 属性值为相应的 db配置名称 如 有一个0 码力 | 143 页 | 1.54 MB | 1 年前3
Laravel 5.6 中文文档扩展包等等等等。此外,所有的前端脚手架代码都已升 级到 Bootstrap 4,Laravel 底层使用的 Symfony 组件都已升级到 Symfony ~4.0 版本。 Laravel 5.6 版本的发布恰逢 Spark 6.0 的发布,所以这也是自 Laravel Spark 发布以来第一次重大版本升级。Spark 6.0 为 Stripe 和 Braintree 引入 了按座定价功能,以及本地化、Bootstrap rap 4、增强 UI 和 Stripe Elements 支持。 注:本文档只是概述了框架大部分引人注目的重要升级,要了解详细升级日志可以查看 GitHub 上到 change logs。 日志优化 Laravel 5.6 带来了日志系统的重大升级,所有日志配置都存放在新的 config/logging.php 配置文件,你现在可以轻松构建发送日志消息到多个处 理器的日志”堆栈”。例如,你可以发送所有 lacademy.org 4 Bootstrap 4 所有前端脚手架例如用户登录认证模板和 Vue 示例组件都已经升级到 Bootstrap 4。默认情况下,生成的分页链接现在也已升级到 Bootstrap 4。 升级指南 预计升级时间:10-30 分钟 PHP Laravel 5.6 需要 PHP 7.1.3 或更高版本。 更新依赖 在 composer0 码力 | 377 页 | 14.56 MB | 1 年前3
Go 入门指南(The way to Go)./all.bash 在完成编译之后(通常在 1 分钟以内,如果你在 B 型树莓派上编译,一般需要 1 个小时),你会在终端看 到如下信息被打印: 图 2.3 完成编译后在终端打印的信息 注意事项 在测试 net/http 包时有一个测试会尝试连接 google.com ,你可能会看到如下所示的一个无厘头的错误报 告: 1. ‘make[2]: Leaving directory 位处理器,Go 不支持 PowerPC 处理器。 你可以通过该页面查看有关在 PowerPC 处理器上的移植进度:https://codedr-go- ppc.googlecode.com/hg/。 注意事项 在 Mac 系统下使用到的 C 工具链是 Xcode 的一部分,因此你需要通过安装 Xcode 来完成这些工具的安装。你 并不需要安装完整的 Xcode,而只需要安装它的命令行工具部分。 你可以在 代码从旧的发行版迁移到最新的发行版,它主要负责简单的、重复的、枯燥无味的修 改工作,如果像 API 等复杂的函数修改,工具则会给出文件名和代码行数的提示以便让开发人员快速定位并升 级代码。Go 开发团队一般也使用这个工具升级 Go 内置工具以及 谷歌内部项目的代码。 go fix 之所以能 够正常工作是因为 Go 在标准库就提供生成抽象语法树和通过抽象语法树对代码进行还原的功能。该工具会尝 试更新当前目录下的所有0 码力 | 466 页 | 4.44 MB | 1 年前3
ThinkJS 3.0 中文文档install -g think-cli 安装完成后,系统中会有 thinkjs 命令(可以通过 thinkjs -v 查看版本号)。如果找不到这个命 令,请确认环境变量是否正确。 如果是从 2.x 升级,需要将之前的命令删除,然后重新安装。 创建项目 执行 thinkjs new [project_name] 来创建项目,如: $ thinkjs new demo; $ cd demo; $ html |--- www | |--- static //存放静态资源⽬目录 | | |--- css | | |--- img | | |--- js 升级指南 本文档为 2.x 升级到 3.x 的文档,由于本次升级接口改动较大,所以无法平滑升级。本文档更多的 是介绍接口变化指南。 核心变化 3.0 抛弃了已有的核心架构,基于 Koa 2.x 版本构建,兼容 Koa 里的所有功能。主要变化为: selectData(){ this._relationOrder= 'level DESC'; return this.select(); } } 形参 model 指向当前模型类。 注意事项 关联字段的数据类型要一致 比如:数据表里的字段 id 的类型为 int ,那么关联表里的关联字段 user_id 也必须为 int 相 关的类型,否则无法匹配数据。这是因为匹配的时候使用绝对等于进行判断的。0 码力 | 129 页 | 2.12 MB | 1 年前3
共 239 条
- 1
- 2
- 3
- 4
- 5
- 6
- 24













