Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

你们开源了Zebra和DBProxy,公司内部应用是咋分工的,两个一起用?那个性能更好,有测试过吗? #30

Closed
y123456yz opened this issue Apr 25, 2019 · 4 comments

Comments

@y123456yz
Copy link

y123456yz commented Apr 25, 2019

你们开源了Zebra和DBProxy,公司内部应用是咋分工的,两个一起用?那个性能(包括tps、时延等)更好,有测试过吗?
谢谢

@y123456yz
Copy link
Author

y123456yz commented Apr 25, 2019

@ainilife
@8wy1985659
基于什么考虑,这样搞两个?一个C实现,一个JAVA实现,如果在同等条件下,dbproxy在linux内核高版本支持reuse_port的话,性能会比java好很多,因为据我所知,java jdk现在应该是还不支持。

你司两个代理都用?

@8wy1985659
Copy link
Collaborator

8wy1985659 commented Apr 26, 2019

  1. DBProxy是服务端代理方案 Zebra是客户端代理方案 Zebra目前是公司主推的方案 java应用统一使用Zebra DBProxy目前主要支持一些使用小语种开发的应用。

2.相较于在调用链路上网络通信的耗时,中间件本身性能上的差异微乎其微,Zebra直连数据库相较于DBProxy节省了3层网络开销,测试时整体性能提升超过30%。同时由于省略了DNS MGW 数据库代理 等中间节点,避免了因中间节点问题导致不可用的情况,大幅提升整体可用性。

@y123456yz
Copy link
Author

y123456yz commented Apr 26, 2019

@8wy1985659
那我明白了,你们这个是部署在所有业务方机器上面,然后直连数据库?是这意思。
和dbproxy的区别就是,省掉了中间一层。
直白点,就是java业务你们内部用zebra,其他语言用dproxy。也就是dproxy更通用一点,没有语言限制,如果是java业务你们这个更适合一点,是否可以这样理解?
同时,你们的dbproxy内部是不是基本上不咋维护了

@8wy1985659
Copy link
Collaborator

对的

dbproxy内部基本不开发了

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants