实现PostgreSQL逻辑复制实战
Postgres Conference China 2016 中国用户大会 实现PostgreSQL逻辑复制实战 王青松 神州飞象(北京)数据科技有限公司 Your Logo 2016Postgres中国用户大会 Postgres Conference China 2016 中国用户大会 简介 逻辑复制的功能是从PG的WAL日志中,读取数 据库更新信息,然后“翻译”(Decode)成逻 Pg的逻辑复制可以根据需求把WAL日志直接翻译成 可以直接解析的SQL语句,并通过槽技术向不同DB 进行传递,从而实现不同DB数据库的复制。 2016Postgres中国用户大会 Postgres Conference China 2016 中国用户大会 如何自定义输出插件 我们所要实现以下几个回调函数: LogicalDecodeStartupCB startup_cb; LogicalDecodeBeginCB0 码力 | 17 页 | 1.90 MB | 1 年前3CurveFS rename 接口实现方案
rename 接口实现方案(已实现,选用方案二)© XXX Page 2 of 15 1. 2. 3. 4. 1. 2. 1. 3. 1. 2. 背景 方案调研 Chubaofs Juicefs 方案实现 方案一:chubaofs 方案二:事务方案 方案三:利用 KV 自带的分布式事务 Q&A 1. 是否需要实现跨文件系统的 rename 2:rename A→C (A 存在,而 C 存在) 4. 当 2 个操作的 dentry 属于同一个 copyset 有什么不一样? 背景 当前 curvefs 并没有实现 rename 接口,本文档是对 rename 接口实现的调研及方案设计。 rename 操作,主要操作的是 dentry,如 rename /dir1/file1 /dir2/file2,主要有 2 个步骤:(1) 删除 file1 等同 file1 的 inode id)。 关于 rename 接口的实现,主要调研了 chubaofs 和 juicefs,而 rename 的实现难点主要在于其原子性的保证。 方案调研 Chubaofs chubaofs 中的 rename 实现不是原子性的,它是通 用创建源文件的硬连接,然后删除源文件的方式来实现的,主要有以下 4 步 : 将源文件的 nlink 加一 创建目标文件的0 码力 | 15 页 | 555.93 KB | 5 月前3基于gRPC go实现消息发布订阅
使用gRPC go实现 基于Topic的高效消息订阅发布模型 姓名 张凯 中国电子云 目 录 gRPC go 介绍 01 gRPC四种通信模式及落地场景 02 根据proto生成go桩代码 03 订阅者动态注册 04 发布者消息推送 05 现场案例演示 06 gRPC go介绍 gRPC是什么? 01. 副标题 开篇思考几个问题 01. 副标题 gRPC介绍 gRPC介绍 01. 副标题 gRPC介绍 01. 副标题 gRPC是框架,七层协议 gRPC go是实现,每个语言都有自己的实现 protobuf介绍 01. 副标题 protobuf示例 01. 副标题 gRPC四种通信模式 gRPC四种通信模式 01. 副标题 gRPC四种通信模式 01. 副标题 gRPC的落地场景 基于通信模式如何落地? 01. 副标题0 码力 | 31 页 | 2.42 MB | 1 年前3通过 Electron 托盘(tray)实现后台执⾏⻓任务
tags: electron, node description: 通过 Electron 托盘(tray)实现后台执⾏⻓任务。 Electron 应⽤在执⾏⼀些⻓时间任务(⽐如上传、下载),我们想关闭界⾯后任务依旧执⾏。再次打开界⾯,依旧可以看到正在执⾏的任务以及任 务进度。托盘可以帮我们实现这个功能。 创建托盘和菜单示例 实例化 Tray 并传⼊图标路径; 创建菜单并配置到托盘中。 true }, { label: 'Item4', type: 'radio' } ]) tray.setContextMenu(contextMenu) }) 基于托盘功能实现后台运⾏应⽤ 关闭应⽤前唤醒对话框⼆次确认 关闭应⽤时,触发对话框,可⽀持 3 种场景: 点击「取消」取消关闭操作; 点击「退出」,「后台运⾏」选中时,界⾯关闭,托盘不关闭,任务继续执⾏; setImage(getTrayIcon())); 托盘其他场景 显示未读消息数 tray.setTitle('6') ; 有未读消息时图标闪动:通过 setImage 定时轮询切换图标实现 注意事项 MacOS 全屏退出界⾯是会出现⿊屏问题,解决⽅案 判断如果全屏,在关闭全屏时,先退出全屏再隐藏界⾯ // 修复全屏 hide ⿊屏问题 // https://github.0 码力 | 6 页 | 1.19 MB | 1 年前3基于amqp实现的golang消息队列MaxQ
7/1/2017 基于amqp实现的golang消息队列MaxQ http://192.168.10.11:3999/maxq.slide#1 1/22 基于amqp实现的golang消息队列 MaxQ 2017-07-01 张培培 饿了么-基础框架组 7/1/2017 基于amqp实现的golang消息队列MaxQ http://192.168.10.11:3999/maxq.slide#1 MaxQ架构模型 5. MaxQ相关特性 6. 使用场景和案例 7/1/2017 基于amqp实现的golang消息队列MaxQ http://192.168.10.11:3999/maxq.slide#1 3/22 1. 队列 跟消息队列相比,有哪些共性? 7/1/2017 基于amqp实现的golang消息队列MaxQ http://192.168.10.11:3999/maxq.slide#1 堆积能力 消息可靠性 生产消费关系 Pull/Push 7/1/2017 基于amqp实现的golang消息队列MaxQ http://192.168.10.11:3999/maxq.slide#1 5/22 2. IPC消息队列 跟消息队列相比,有哪些共性? 7/1/2017 基于amqp实现的golang消息队列MaxQ http://192.168.10.11:3999/maxq0 码力 | 22 页 | 1.45 MB | 1 年前3网易云Service Mesh的产品架构与实现
163yun.com 网易云Service Mesh的产品架构与实现 刘超 网易研究院云计算技术部首席架构师www.163yun.com 关于我 • 刘超 • 网易云 解决方案总架构师 • 10余年云计算领域研发及架构经验,先后在EMC,CCTV证券资 讯频道,HP,华为,网易从事云计算和大数据架构工作 • 毕业于上海交通大学。 • 曾出版《Lucene应用开发揭秘》 • 多0 码力 | 35 页 | 6.33 MB | 5 月前302 TiDB Operator 架构与实现 付业成
Yecheng Fu (@cofyc) PingCAP.com Agenda ● TiDB Operator 简介 ● 扩展 Kubernetes 的几种方式 ● TiDB Operator 实现 TiDB Operator 是什么 PingCAP.com Cloud Native Era: Portable, Scalable, Automated Full lifecycle management PingCAP.com Admission Webhook Able to intercept API requests and may change or deny it. TiDB Operator 实现 PingCAP.com TiDB Operator Implementation - The tidb-controller-manager - Initialization - Watch objects 的几种方式 - Custom Resource - Custom Controller - Scheduler Extender - Admission Webhook - TiDB Operator 实现 - the tidb-controller-manager - Full lifecycle management of a TiDB Cluster - Deploying, Upgrading0 码力 | 47 页 | 1.73 MB | 5 月前3TiDB: HBase分布式事务与SQL实现
TiDB: HBase分布式事务与SQL实现 About me ● TiDB & Codis founder ● Golang expert ● Distributed database developer ● Currentlly, CEO and co-founder of PingCAP liuqi@pingcap.com https://github.com/pingcap/tidb0 码力 | 34 页 | 526.15 KB | 1 年前3用Go语言实现推送服务器
用Go语言实现推送服务器 陈叶皓 chen.yh@ctrip.com 议程 • 推送服务器介绍 • Golang特点 • 推送服务架构 • 部分代码 • 上线效果 议程 • 推送服务器介绍 • 推送服务架构 • 部分代码 • 上线效果 什么是推送服务器 • 推送业务信息到手机端 • 始终保持连接 推送服务器要求 • 高并发 • 可靠性 • 高性能 • 支持水平扩展 • 无单点故障 • 高并发 – goroutine • 可靠性 – 使用Redis暂存消息 • 高性能 – 静态编译语言 • 支持水平扩展 – 使用RPC组成集群 • 无单点故障 – 使用Redis实现数据共享 Go语言的并发模型 • 事件驱动,共享线程池 runtime.GOMAXPROCS(runtime.NumCPU()) • 使用“go”命令创建goroutine go sockstore0 码力 | 25 页 | 260.04 KB | 1 年前3基于Rust-vmm实现Kubernetes运行时
0 码力 | 27 页 | 34.17 MB | 1 年前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100