倒退从前

MYSQL

前阵子因为受到攻击的问题,博客虽没大碍,但资源消耗大增。某日查看账单时无意中发现大量的资源消耗在了MYSQL查询上,而且全部都是价格昂贵的主库查询,价格低廉的从库查询次数居然是零!

印象中自己用过的WordPress for SAE版本都有标注支持主从分离,以便降低资源消耗。平常消耗不高的时候我从未留意数据查询这块是不是真的主从分离了,到这非常时期消耗大增时,矛盾才得以暴露,原来我一直都在用的价格高昂的主库读写数据,低廉经济的从库从未享受过……这是怎么回事?

虽然防火墙替我当掉了一部分攻击,资源消耗也降到了之前合理的水平,但博客本身不赚钱,昂贵的主数据库终究不能一直用下去,能省则省,我抽空进行了代码排查。首先从最基础的“wp-config.php”配置文件开始,发现所有的WordPress for SAE版本对应的配置文件都写有数据库分离配置。可为啥没有效果?看看后台设置貌似也没有专门的主从分离开关,难道是代码错了?

网上所有的代码都差不多的,自己试着修改了几次代码依旧无果,我开始怀疑SAE是不是在跟我开玩笑,想来也不至于,最后搜索出一篇技术文章提到了WordPress for SAE的弊端,上面说到要去掉主从分离,除了注释掉“wp-config.php”配置文件里边对应的代码以外,还要将wp-includes目录下另一个名叫”wp-db.php”的文件替换回来。OK,原来主从分离除了配置文件以外,还需要”wp-db.php”这小玩意,关键就应该在这里了。

果不出我所料,自己所用的WordPress for SAE 4.1版本中对应的”wp-db.php”文件与官方相同版本的文件毫无差异,我还指望升级解决,可后来发现网上另一位大神给出的最新WordPress for SAE 4.2.2中的”wp-db.php”也跟原版相同,网上WordPress for SAE版本普遍都是“wp-config.php”配置文件里边有主从分离的代码,但实际都没有通过修改”wp-db.php”真正实现数据库主从分离。唯有SAE官方应用仓库中的WordPress for SAE 3.4.1,或则WordPress for SAE官方博客中提供的3.5.2版才有完整修改,而这些WordPress for SAE版本都显得太老了。

我还想参照老版文件,看着修改4.2.2中的”wp-db.php”,结果发展这同一个文件,可新旧版本间差异太大,自己根本看不懂,更别提修改了,算了。专业的事还是交给专业的人解决,自己将就把博客降回至3.5.2版本还省心点。虽然老版本的BUG会不少,但在SAE上想必安全不会出什么太大的问题。唯有不爽的是自己这个主题,在老版的WordPress for SAE上会出现样式失效,所以留言评论框很难看,好在不是什么太大的问题,我也没啥心思继续琢磨了。

P.S.主从分离又称读写分离,这在分布式数据库是很常见的设计。通常都是一处写入,多处读取,将大量读取请求分散给不同服务器以便降低负载。因为主服务器要求苛刻,SAE目前主从服务器价格比是4比1.5,即主服务器价格是从服务器的2.6倍。

凡事皆有利弊,主从分离能降低负载,但会带来数据同步问题,在业务繁忙的时,主从分离的数据可能同步不上,就会出现文章修改了,刷新之后还是没改的情况。如何保持主从及时同步数据是平台设计人员应该考虑的问题。

觉得好可以点个赞!
(暂无人赞)
Loading...

不是一类人

前阵子新闻曝说广州快递员工集体内盗,胆大到明知有监控,仍肆无忌惮下手盗走,小到随身WIFI,大到手机项链。据多名犯罪嫌疑人落网后交代,平时工作中他们看到有员工偷拿包裹里的物品却没有受到任何处罚,心里觉得不平衡,认为别人也在拿,自己为什么就不能拿?

一个人在镜头下你可能不敢,但若几个人一起犯罪了,即便有镜头盯着,那也天不怕地不怕。在我看来,最初犯事不受罚,这无形中也助长了那几个败类的胆子。要扯得再远一点,当初法西斯公然反人类的种种暴行,并非因为那些没人性,而是看着大伙都做了,都杀了,都强奸了。大伙都没事,自己当然也可以。

解释完为啥败类们敢在镜头底下犯罪后,咱再看看物流安全的现状。当今做物流真还得凭良心,分拨分拣中心有监控还好,但还有很多地方是没有监控的,广州城区一些街道的晚上,很多快递大哥就这么在路边大街上直接做分拣登记,一个个快递堆得满地都是,路人稍微多点,顺捎走一个东西了快递哥未必知道。类似场景见得多,弄得我至今不敢用快递邮寄重要证单。普通物品丢了还能买,可很多证单却不是用钱能买到的。

自己没丢,不意味着类似丢证的麻烦不会找上我。上个月就有客户走空运丢了护照,还有国外使馆相关的重要文件,说是一个装了6斤的大红色的纤袋,查看监控,过安检的时候看着还有的,到上海之后卸下机板硬生生就没了。前查后查都像是广州机场的问题,偏偏调查阻力很大。

调查阻力在于,一说是目的站异常电报来得太晚,广州这边原则上不承认超期电报有效性。二说是现场操作的地勤,跟机场货运是两家公司,对于无效的异常,机场不便让地勤公司深入一同协查。三说广州机场不接受我们客户单方面说的少货异常,上海机场需要承担异常超时反馈的责任,如确有少货事实,也需要上海机场出面另做说明。广州机场建议我们另行找渠道沟通处理,或则报警让公安介入。

客户是不接受这些说法的,尤其对于如此简单的事实,沟通调查起来居然如此繁杂,以至于我做解释的时候,客户都认为我们在推卸责任,玩踢皮球游戏!这让我很是尴尬,只能说,国企的思维跟民营企业的思维有很大程度上的不同。我们喜欢简单直接的沟通,他们注重规范、程序、身份等级之类的玩意。你跟他们,完全不是一类人!

觉得好可以点个赞!
(1个赞)
Loading...