alibaba / cobar

a proxy for sharding databases and tables
Apache License 2.0
3.21k stars 1.22k forks source link

求教,cobar在select的数据量较大的情况下,有什么调优方法? #52

Open liuxinglanyue opened 9 years ago

liuxinglanyue commented 9 years ago

坐等。。。。

liuxinglanyue commented 9 years ago

修改 NIOProcessor.DEFAULT_BUFFER_CHUNK_SIZE = 1024 * 32; MultiNodeExecutor.RECEIVE_CHUNK_SIZE = 32 * 1024; 会有一点点的性能提升,还不是很理想。

mingxuboy commented 9 years ago

我个人觉得这个参数用处不大, 在Multinode的情况下(需要从多个节点查询数据),实际上查询几乎是串行的。 单节点(查询参数里面带了分区信息)查询的情况下,这个参数大小对性能应该是没有什么影响的。 我在实际运用中,对于大量数据返回的情况, 计划抛弃Cobar,而采用本地模式(类似于TDDL的方式)。

ghost commented 9 years ago

采用本地模式 是啥手段 ?

mingxuboy commented 9 years ago

就是不通过Cobar中间件(因为数据量比较大的情况下中间件的效率较低),类似于https://github.com/alibaba/cobarclient 的方式,由客户端做路由,减少数据经过的路径,另外可以根据应用自身的需要设置Socket的receiveBufferSize。不过我还没有仔细研究。