开发者社区> 沉默术士> 正文

TDH_Socket开源介绍

简介:
+关注继续查看
TDH_Socket开源啦

源码地址: https://github.com/taobao/TDH_Socket

同时还开源了Java客户端: https://github.com/taobao/tdhs-java-client

现在介绍一下TDH_Socket:

TDH_Socket是一个MySQL daemon plugin 类似于HandlerSocket(https://github.com/DeNADev/HandlerSocket-Plugin-for-MySQL)

现在TDH_Socket能接受客户端的TCP请求,并且直接通过MySQL的Handler层访问数据,绕开了SQL解析等一系列逻辑

TDH_Socket的Java客户端可以通过在客户端解析SQL的方式提供JDBC接口来提高易用性,并且也不会降低性能



TDH_Socket的一些特性和优点:

1. 具有HandlerSocket的全部功能
2. 连接复用,采用动态IO策略,只使用一个port进行通讯
3. 进行DDL操作时不会hang住(可手动关闭被cache住的表)
4. 支持流输出,对于大数量的返回,不会占用太多内存
5. 易用

1. 不需要在一开始open_table,会在具体执行时open_table,被open的table还是会被当前线程cache住,下次请求不需要再次open
2. Java客户端支持JDBC,在客户端进行SQL解析

6. 支持多线程的并发写操作

1. 默认情况下,对一个表的写操作都会在一个固定的线程被执行,从而避免可能的死锁
2. 也可以通过配置使一个表的写操作被多个线程并发执行,但是可能会导致死锁而进行回滚
3. 客户端可以将写请求发给指定的线程执行,可以在客户端那边在逻辑上保证不会死锁

7. 读线程的动态调整
8. 由于采用读写分开以及物理读和逻辑读的线程分开策略使在有大量物理读的时候也能提供比较高的性能

9. 能对物理读进行流控

本文来源于"阿里中间件团队播客",原文发表时间" 2012-05-16 "

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Socket基础使用
Socket基础使用
12 0
Socket 案例
Socket 案例
38 0
Socket简介和I/O多路复用
Socket简介和I/O多路复用
99 0
Socket - UDP快速入门
Socket - UDP快速入门
57 0
【Socket】Socket相关概念及函数
【Socket】Socket相关概念及函数
80 0
高质量通信gRPC入门,有了它,谁还用Socket
高质量通信gRPC入门,有了它,谁还用Socket
704 0
我们到底选择哪一款开源的Socket框架?
一、摘要 FastSocket(简称:FS)突出:简单灵活、上手容易。 SuperSocket(简称:SS)突出:功能丰富、扩展强大。 二、FS和SS摆在我们的面前,那么我们应该选择哪一个玩呀? 2.1、什么是FastSocket? 1)、FS是一个轻量级易扩展的c#异步socket通信库,项目开始于2011年,经过近3年不断调整与改进,目前在功能和性能上均有不错的表现。
2718 0
+关注
沉默术士
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载