{"id":360616,"date":"2021-02-17T06:08:44","date_gmt":"2021-02-16T22:08:44","guid":{"rendered":"http:\/\/4563.org\/?p=360616"},"modified":"2021-02-17T06:08:44","modified_gmt":"2021-02-16T22:08:44","slug":"%e6%9c%89%e6%b2%a1%e6%9c%89%e7%ae%80%e5%8d%95%e7%9a%84%e5%8f%aa%e6%94%af%e6%8c%81%e8%af%bb%e5%86%99%e5%88%86%e7%a6%bb%e7%9a%84-proxy-%e6%9c%8d%e5%8a%a1","status":"publish","type":"post","link":"http:\/\/4563.org\/?p=360616","title":{"rendered":"\u6709\u6ca1\u6709\u7b80\u5355\u7684\u53ea\u652f\u6301\u8bfb\u5199\u5206\u79bb\u7684 proxy \u670d\u52a1"},"content":{"rendered":"<div>\n<div>\n<div>\n<h1>                  \u6709\u6ca1\u6709\u7b80\u5355\u7684\u53ea\u652f\u6301\u8bfb\u5199\u5206\u79bb\u7684 proxy \u670d\u52a1               <\/h1>\n<p> <\/p>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : zealinux <\/span>  <span><i><\/i> 3<\/span> <\/div>\n<div> <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div isfirst=\"1\"> <\/p>\n<p>\u7528\u4e86\u51e0\u4e2a\u9ad8 star \u7684\u9879\u76ee\uff0c\u7acb\u9a6c\u53d1\u73b0 bug \u51fa\u6765\u3002\u4e0d\u80fd\u5728\u751f\u4ea7\u73af\u5883\u7528\u3002<\/p>\n<p>\u4e0d\u77e5\u9053\u6709\u6ca1\u6709\u7b80\u5355\u7684\u53ea\u652f\u6301\u8bfb\u5199\u5206\u79bb\u7684\u9879\u76ee\uff0c\u51e0\u4e2a\u9879\u76ee\u611f\u89c9\u662f KPI \u51fa\u6765\u7684\uff0c\u6781\u5176\u590d\u6742\u3002 \u529f\u80fd\u5f88\u591a\uff0cbug \u4e5f\u5f88\u591a\u3002<\/p>\n<p>\u6211\u7684\u9700\u6c42:<\/p>\n<pre><code>A =&gt; RW-proxy-server =&gt; \u5199\uff1a\u4e3b\u5e93 || \u8bfb\uff1aslave0\uff0cslave1 <\/code><\/pre>\n<p>\u4e0d\u9700\u8981\u5176\u4ed6\u4ec0\u4e48\u4e71\u4e03\u516b\u7cdf\u7684\u5206\u8868\u529f\u80fd\u3002<\/p>\n<p>\u9690\u7ea6\u89c9\u5f97\u5e94\u8be5\u6709\u8fd9\u6837\u4e13\u6ce8\u7684\u9879\u76ee\uff0c\u53ef\u80fd\u662f\u7528 golang \u5199\u7684\u3002 \u6c42\u63a8\u8350<\/p>\n<\/p><\/div>\n<div> <b>\u5927\u4f6c\u6709\u8a71\u8aaa<\/b> (<span>8<\/span>)        <\/div>\n<div> <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<ul>\n<li data-pid=\"5413914\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : liprais <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             \u4f60\u8981\u7684\u8fd9\u4e2a\u672c\u6765\u5c31\u8db3\u591f\u590d\u6742\u4e86\uff0c\u968f\u4fbf\u5199\u5199\u80af\u5b9a bug \u6ee1\u5929\u98de                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"5413915\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : DollarKiller <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             https:\/\/github.com\/siddontang\/go-mysql\/ \u914d\u5408\u8fd9\u4e2a\u624b\u64b8\u628a                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"5413916\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u4e3b<\/span> <span>\u8cc7\u6df1\u5927\u4f6c : zealinux <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             @DollarKiller \u5173\u952e\u4e0d\u5728\u590d\u5236\uff0c\u800c\u662f\u73b0\u5728\u5df2\u7ecf\u521b\u5efa\u4e86\u4e00\u4e2a\u526f\u672c\u3002<br \/>\u5173\u952e\u70b9\u5e94\u8be5\u4e2d\u95f4\u670d\u52a1\u5305\u88c5 mysql \u534f\u8bae\uff0c\u9274\u6743\uff0c\u89e3\u6790 sql \u548c\u5206\u53d1\u6d41\u91cf                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"5413917\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : DollarKiller <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             @zealinux \u6587\u6863\u770b\u4ed4\u7ec6\u70b9 Server package supplies a framework to implement a simple MySQL server which can handle the packets from the MySQL client. You can use it to build your own MySQL proxy. The server connection is compatible with MySQL 5.5, 5.6, 5.7, and 8.0 versions, so that most MySQL clients should be able to connect to the Server without modifications.                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"5413918\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : bthulu <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             mysql \u5ba2\u6237\u7aef\u6211\u8bb0\u5f97\u539f\u751f\u652f\u6301\u8bfb\u5199\u5206\u79bb\u7684\u554a, \u4ec0\u4e48\u670d\u52a1\u90fd\u4e0d\u9700\u8981\u7528                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"5413919\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : bthulu <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             jdbc \u91cc\u76f4\u63a5\u5728 url \u91cc\u8bbe\u597d\u5c31\u884c\u4e86, jdbc:mysql:replication:\/\/master:3306,slave1:3306,slave2:3306\/test<br \/>\u5f53\u4e8b\u52a1\u4e3a readonly \u7684\u65f6\u5019, jdbc \u9a71\u52a8\u4f1a\u81ea\u52a8\u53bb slave \u8bfb\u6570\u636e.                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"5413920\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : dfzj <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             shardingsphere                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li data-pid=\"5413921\" data-uid=\"2\">\n<div>\n<div>\n<div> <span>\u8cc7\u6df1\u5927\u4f6c : SmiteChow <\/span>  <\/div>\n<div> <i title=\"\u5f15\u7528\"><\/i>  <span>          <\/span> <\/div>\n<\/p><\/div>\n<div>                                                             A \u81ea\u5df1\u80af\u5b9a\u77e5\u9053\u64cd\u4f5c\u662f\u8bfb \/\u5199\uff0c\u4e0d\u9700\u8981\u4ee3\u7406\u3002                                                            <\/div>\n<\/p><\/div>\n<\/li>\n<li>\n","protected":false},"excerpt":{"rendered":"<p>\u6709\u6ca1\u6709\u7b80\u5355\u7684\u53ea\u652f\u6301\u8bfb\u5199\u5206\u79bb\u7684 pr&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[],"tags":[],"_links":{"self":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts\/360616"}],"collection":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=360616"}],"version-history":[{"count":0,"href":"http:\/\/4563.org\/index.php?rest_route=\/wp\/v2\/posts\/360616\/revisions"}],"wp:attachment":[{"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=360616"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=360616"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/4563.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=360616"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}