1.3 Go practices in TiDB 姚维PingCAP wink@pingcap.com Agenda ● How to build a stable database ○ Schrodinger-test platform ○ Failpoint injection ○ Goroutine-leak detection ● Optimization ○ Chunk vs interface{} ○ Vectorized execution TiDB the Cat is dead, and the Schrodinger will give us a report What is Schrodinger(2/2) Failpoint injection ● Failpoints are used to add code points where errors may be injected ● Why we need failpoints cases func someFunc() string { // gofail: var SomeFuncString string // // this is called when the failpoint is triggered // return SomeFuncString return "default" } About gofail ● An implementation of FreeBSD0 码力 | 32 页 | 1.76 MB | 6 月前3
高可用与一致性:构建强一致性分布式数据库 TiDB-沈泰宁It’s complicated! •Unit tests •Integration tests •Fuzz testing •libFuzzer •AFL •Fault injection •Failpoint, https://www.freebsd.org/cgi/man.cgi?query=fail •Jepsen, https://github.com/jepsen-io/jepsen com/jepsen-io/jepsen Tests •A framework for distributed systems verification, with fault injection •Found bugs •Redis •etcd •Cassandra … Jepsen Jepsen: How does it work? N1 N2 N3 N4 N5 Control TiDB Cluster0 码力 | 45 页 | 4.63 MB | 1 年前3
TiDB中文技术文档Alpha - 408 - 本文档使用 书栈(BookStack.CN) 构建 优化 Coprocessor count (*) 和点查 unique index 的性能 增加更多的 Failpoint 以及稳定性测试 case 解决 PD 和 TiKV 之间重连的问题 增强数据恢复工具 tikv-ctl 的功能 Region 支持按 table 进行分裂 支持 Delete Range0 码力 | 444 页 | 4.89 MB | 6 月前3
TypeScript 多场景设计方案及应用实践
劣势:满⾜足不不了了⾃自定义的需求(xml) ⾃自动化装配 TS TS TS TS ⾃自研 100%满⾜足⾃自⼰己的需求,整体代码⾃自⼰己能掌握,同时更更简单 ⾃自研 injection TS ⾃自研 ⾃自研 injection @provide() export class UserService { @inject() userManager: UserManager = new async getUser(id: number) { return this.userManager.get(id); } } 关键字 TS ⾃自研 ⾃自研 injection @provide() export class UserService { @inject() userManager: UserManager; async getUser(id: Express/Koa TS 传统 Web 场景初试 Express/Koa TS 跨场景 不不同场景公⽤用⼤大部分装饰器器 TS 同场景跨类型 类似场景复⽤用装饰器器 TS Injection Midway-egg Midway-core Midway- express Midway-koa Midway-rpc Midway-faas Midway-orm Midway- schedule0 码力 | 95 页 | 8.28 MB | 1 年前3
10 WEB攻击与防护技术 徐震 杨亮 《PHP语⾔程序设计》二、典型攻击 三、攻防原理 四、防护产品体系 OWASP Top 10 – 2007 (Previous) OWASP Top 10 – 2010 (New) A2 – Injection Flaws A1 – Injection A1 – Cross Site Scripting (XSS) A2 – Cross Site Scripting (XSS) A7 – Broken Authentication 网络层 应用层 在应用层,我们的安全边界存在巨大 的漏洞!!! 提纲 一、背景概述 二、典型攻击 三、攻防原理 四、防护产品体系 3.1. SQL注入 16 概述 n SQL Injection q 攻击者利用WEB应用程序对用户输入验证上的疏忽, 在输入的数据中包含对某些数据库系统有特殊意义 的符号或命令,让攻击者有机会直接对后台数据库 系统下达指令,进而实现对后台数据库乃至整个应 过滤错误信息,避免泄露“包含文件”信息(避免攻 击者发现漏洞) n 对输入变量进行过滤 n 对特殊字符进行替换、编码,如“/” 38 3.4.操作系统命令注入攻击 39 概述 n OS command injection,操作系统命令注入 q 利用WEB应用对用户输入验证设计上的疏失,或者说验证的 不严格,在HTML代码中,使用一些函数调用操作系统命令, 对系统进行操作,造成入侵行为 q 执行文件操作、系统命令操作、执行系统程序等0 码力 | 114 页 | 3.65 MB | 1 年前3
大学霸 Kali Linux 安全渗透教程discovery/info_disclosure/interesting_files Exploitation ------------ exploitation/injection/command_injector exploitation/injection/xpath_bruter Import ------ import/csv_file Recon ----- recon/compa x86_powershell_injection.txt。 (5)此时再打开一个终端窗口,查看渗透攻击文件的内容,如下所示: root@kali:~# cd /root/.set/reports/powershell/ root@kali:~/.set/reports/powershell# ls powershell.rc x86_powershell_injection.txt root@kali:~/ root@kali:~/.set/reports/powershell# cat x86_powershell_injection.txt powershell -nop -windows hidden -noni -enc JAAxACAAPQAgACcAJABjACAAPQAgACcAJwBb AEQAbABsAEkAbQBwAG8AcgB0ACgAIgBrAGUAcgBuAGUAbAAzADIALgBkAG0 码力 | 444 页 | 25.79 MB | 1 年前3
13 Istio 流量管理原理与协议扩展 赵化冰– LB、基于应用协议的错误码进行 Retries 和 Circuit Breaker – 基于七层协议 Meta data 的路由(RPC协议中的调用 服务名、方法名等) – Fault Injection(RPC 协议层的错误码) – RPC 调用的 Metrics(调用次数,调用失败率等) – Tracing • 四层服务治理 – 服务发现(基于 VIP 或者 Pod IP:DNS 只用于解析得 Filter • Decoding/encoding • Parsing header • Routing • Load balancing • Circuit breaker • Fault injection • Telemetry collecting Reviews v1 Reviews v2 AwesomRPC (header: user:jason) AwesomRPC (header: user:others) Filter • Decoding/decoding • Parsing header • Routing • Load balancer • Circuit breaker • Fault injection • Telemetry collecting Pilot 将通用协议路由规则解析为统一格式 的 xDS 配置下发。 RPC Filter Framework Awesome RPC Specific0 码力 | 20 页 | 11.31 MB | 6 月前3
TiDB v5.2 中文手册为内部处理单元增加流程控制,避免出现内存溢出问题 #1751 * 增加 Unified Sorter 清理陈旧临时文件的功能,禁止多个 cdc 服务共享 sort-dir 目录 #1741 * 给 Failpoint 增加 HTTP 接口调用 #1732 14.6.4.3 Bug 修复 • TiDB – 修复带有子查询的 UPDATE 语句更新生成列时会 panic 的问题 #24658 – 修复 类型列可能造成的 panic 问题 #17935 – 修复访问被拒绝时的错误信息 #17722 – 修复 JSON 数据中 int 和 float 类型比较的问题 #17715 – 修复 Failpoint 测试造成的 data race 问题 #17710 – 修复 Region 预分裂超时在创建表时可能不生效的问题 #17617 – 修复 BatchClient 中因为失败可能导致的主动 • 支持 TLS • 优化 RocksDB 配置,提升性能 • 优化 Coprocessor count (*) 和点查 unique index 的性能 2245 • 增加更多的 Failpoint 以及稳定性测试 case • 解决 PD 和 TiKV 之间重连的问题 • 增强数据恢复工具 tikv-ctl 的功能 • Region 支持按 table 进行分裂 • 支持 Delete0 码力 | 2259 页 | 48.16 MB | 1 年前3
TiDB v5.1 中文手册为内部处理单元增加流程控制,避免出现内存溢出问题 #1751 * 增加 Unified Sorter 清理陈旧临时文件的功能,禁止多个 cdc 服务共享 sort-dir 目录 #1741 * 给 Failpoint 增加 HTTP 接口调用 #1732 14.4.4.3 Bug 修复 • TiDB – 修复带有子查询的 UPDATE 语句更新生成列时会 panic 的问题 #24658 – 修复 类型列可能造成的 panic 问题 #17935 – 修复访问被拒绝时的错误信息 #17722 – 修复 JSON 数据中 int 和 float 类型比较的问题 #17715 – 修复 Failpoint 测试造成的 data race 问题 #17710 – 修复 Region 预分裂超时在创建表时可能不生效的问题 #17617 – 修复 BatchClient 中因为失败可能导致的主动 • 支持 TLS • 优化 RocksDB 配置,提升性能 • 优化 Coprocessor count (*) 和点查 unique index 的性能 2175 • 增加更多的 Failpoint 以及稳定性测试 case • 解决 PD 和 TiKV 之间重连的问题 • 增强数据恢复工具 tikv-ctl 的功能 • Region 支持按 table 进行分裂 • 支持 Delete0 码力 | 2189 页 | 47.96 MB | 1 年前3
[试读]Angular 应用安全编程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.2 依赖注入(dependency injection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 第二部分 Angular 应用安全防范 9 依赖注入(dependency injection) 组件是服务的消费者,也就是说,你可以把一个服务注入到组件中,让组件类得以访问该服务类。 在 Angular 中,要把一个类定义为服务,就要用 @Injectable 装饰器来提供元数据,以便让 Angular 可以 把它作为依赖注入到组件中。 7 图 2.1: Dependency Injection 同样,也要使用 @Injectable0 码力 | 27 页 | 177.00 KB | 1 年前3
共 70 条
- 1
- 2
- 3
- 4
- 5
- 6
- 7













