Oracle 和 MySQL 性能优化感悟优点/缺点/坑 1、定一个NSURLProtocol子类 2、注册这个类 3、NSURLProtocol子类实现 method swizzling 拦截的要点: • 拦截到 • 调回去 • 名词约定:原始方法、代理方法 method swizzling 原理 typedef struct objc_method *Method; typedef struct objc_ method { method_imp; }; method swizzling 原理 基本步骤 1、用class_addMethod为某类添加“代理方法” 2、调用method_exchangeImplementations交换IMP 3、确保你的“代理方法”调用了“原始方法” method swizzling 原理 基本步骤 应用场景 优点/缺点/坑 method swizzling(改进版)0 码力 | 19 页 | 3.82 MB | 1 年前3
Kubernetes Operator 实践 - MySQL容器化Kubernetes 1.7 之后增加了 CRD 自定义资源 • 二次开发扩展 Kubernetes API CRD 的基本原理 ① 观察资源的当前状态 ② 分析当前状态与期望状态的差别 ③ 调用 API 消除差别 TestCluster app=test app=test 申请扩容 期望副本数:3 当前副本数:1 VS app=test 增加2个副本 当前副本数:3 Controller 扩缩容 • 扩容:直接执行 • 缩容:集群 master 是谁? 判断条件: 缩容操作且 master 为 sts 最后一个 pod operator 执行 sts 扩缩容 判断 调用 mha 切主 否 是 pod 都正常运行? 重新调度 mha MGR 高可用简介 • 多主和单主两种工作模式 • MGR 只支持 InnoDB 引擎 • 开启 GTID,ROW 模式 PVC,导致只有 超时时才重新处理 方案:k8s v1.10.7 解决 https://github.com/kubernetes/kubernetes/issues/64549 MySQL-Operator 调用样例 kubectl create –f iflow.yaml apiVersion: "mysql.biz.sogou/v1" kind: MySQLCluster metadata: name:0 码力 | 42 页 | 4.77 MB | 1 年前3
共 2 条
- 1













