Closed dwxiayi closed 7 years ago
感谢答复! 关于问题3:从代码看StartWorker函数 是主线程,其中启动了n多线程,io线程内部才会使用协程,主线程中并未启动协程,只是在loop,上次测试协程时空loop是不停的epll_wait,大概会消耗5%(根据wait的时间占用不同)的cpu,我觉得这个loop只是为了不让进程终止没必要,可以将HeartBeatThread、GroupStatusCache放在这里执行。
你说得好像有道理,能帮忙试一下把这里去掉会怎样吗
我这边还没有搭建编译环境,程序应该会退出吧,测试协程的时候遇到过。 ps:好期待QQ群或者讨论组之类的组织(难道是因为mysql官方出了Group Replication)
1.该函数中会开启两个端口,使用两个线程去accept,这样做的目的是什么呢?增加接入性能吗?还是预留了unixsocket(unix domain socket),暂未开发? 2.后端数据库服务器与phxsqlproxy在同一台机器上时后端是否会支持使用unixsocket方式连接mysql,现在看是使用127.0.0.1这个ip,从资料看unixsocket性能要优与tcp; 3.函数最后 主线程在不停的loop(TickFunc函数),是不是一种资源的浪费; 4.phxsqlproxy模块你们内部是否在使用?从资源和性能讲都有损耗,作为一个新的项目规划,client端应该如果智能的实现数据安全、高可用,能否提供一定的思路,谢谢!