Tag Archives: mysql

【メモ】面试时被问道的几个技术(?)问题

很撸瑟地跑到 @stutiredboy 他们那里去面试,结果被问了一堆问题答不出来。正好好久没更新blog了,那么就把记得的东西写在上面吧…顺序不分先后。(下面有一些敏感词,不过我有SSL我自豪,哼哼~岚少语气:你来呀~)

  1. GFW是什么?Wikipedia:GFW
    深入理解: http://gfwrev.blogspot.jp/2010/02/gfw.html反正我当时回答本质上是个大规模群集啥的,然后在主要干路上旁听啥的,基本封锁手段有关键词过滤,dns劫持污染等等,基本在口胡orz……
  2. 更改dns为8.8.8.8还是不能解决dns污染的问题,应该怎么办?好吧当时口胡太多,一问具体细节就真的囧了……回来查了下解决办法挺多的,首先有dns over tcp嘛,截止昨天@ayanamist还回复我说目前DNS还不会污染DNS的TCP查询,当然不保证将来会这么做。刚才@wzyboy又补充如下:

    2. 可以把查询通过 Socks 隧道来查询
    3. 可以把查询通过 VPN 来查询
    4. 可以在 resolver 上指定只用 8.8.8.8 去查询

    当然具体细节还待查了。1的话,看见了DNSForwarder 2.0这个软件,还没来得及用…至于2、3,我目前的感觉是可以开socks和vpn不如就直接翻了嘛…(别打我

    关于本地dns的进一步配置可以参考@wzyboy 的这篇博文: https://wzyboy.im/post/874.html

    追加评论:

    DNS污染的话目前还有IPv6,但已经在试验封锁了;TCP效率太低,能不用就别用;SOCKS等应用层代理对整个系统来说意义不大。

  3. mysqldump有啥缺点?呃,因为我只用来备份wp博客数据库,所以有啥缺点是肯定搭不上来的……google了一下答案如下:

    mysqldump优点:备份出来的数据比较小,基本算是纯数据,如果是innodb引擎,数据都在内存里面的话,不会发生物理磁盘的读操作。
    mysqldump缺点:不支持增量备份,会发生表锁,如果数据量过大,表锁时间会很长。
    xtrabackup优点:支持热备,支持增量备份。
    xtrabackup缺点:备份是物理拷贝+逻辑备份的方式备份数据库,会发生物理磁盘的读操作,但是物理备份的速度会比较快。

    简单说来就是不适合备份数据量大而且非slave机器上的数据…有这个需求可以考虑改用xtrabackup。

    追加评论:

    真要有条件搞增量还不如起个slave算了,在slave上做mysqldump成本最低。

  4. git和svn有啥区别?好吧虽然现在用git很少,不过区别还是知道的,至少git是个分布式版本控制吧,不像svn服务器挂了整个就挂了,但是面试的时候就是忘记了这点-_-||
  5. 一般什么时候git commit?当时口胡的是觉得代码没有问题了,程序/脚本能正常运行就commit…我总不能说git add 之后再commit吧,就像回答问你是说,我说我是人一样。Google了一下貌似也没啥说法。反正感觉自己就是不会写代码,用git纯粹是跟风、备份下vim配置文件啥的…

    追加评论:

    在保证能运行的前提下把commit拆得越散越好。

  6. 如何动态监控vps的状态?这个…不知道啊-_-||当时回答是刷linode的面板。基米大大@jimmy_xu_wrk给出的建议如下

    监控如果是中心化的就snmp
    如果无中心就找第三方
    自己监视自己毫无意义
    万一网路故障了谁去通知你?

    于是直接打消了我想写个python的sleekxmpp机器人定时推送到gtalk之类的想法…… @wzyboy推荐 http://www.siteuptime.com/。另外nagios啊cacti之类的解决方案也是应该学习了解的。

  7. openvpn的基本工作原理?面试时简单回答了一些建立隧道,服务器CA之类的,反正中间必须是加密传输。早上Google了些,具体原理看着我头疼,另外关于为什么client的ip是 .5 .6,server的ip是 .1 .2,和 @helijohnny 以及 @wzyboy 讨论了下也没得出啥结论,不过在 http://www.linuxquestions.org/questions/linux-server-73/openvpn-point-to-point-address-question-605810/ 里面找到了这样一段话

    From the client side, .5 is the server and from the server side .2 is the client. All the other numbers are just routed at either end, so the server knows to contact .2 when it needs to talk to anything past .5 and the client knows that it’s both .5 and .6

    It comes about because OpenVPN is routing networks not just individual IP addresses. The “gateway” for each network is the PtP address that you get, even if there’s only one client on that particular virtual network.

    所以越来越晕了……@_@

    关于.2,@chenshaoju给出的解释入下:

    10.8.0.1~2是提供给服务器进行NAT转换使用的(也就是iptables的转发)。
    对于VPN拨号,子网掩码始终是255.255.255.255(包括PPPoE等)。

    追加评论:

    然后对于P-t-P链路来说,“网关”是无意义的,任何非本地的地址都会被送到链路的另一头,然后对面会做适当的处理。

还有一些问题忘记了,想起来的时候会补上的。反正这次面试很orz……于我个人来说感觉挺失败的,充分暴露出了我走马观花的本质,很多东西深入研究。(于是果断被@fisherduan 殴打)大家都说书籍是最好的老师,可惜对于我这个有阅读障碍的懒人来说还是喜欢直接求助于【人間】。当然也有主动去翻wiki的man page,可是收效不大……总之和折腾gentoo的某鸟 @radaiming 比起来自学能力真心弱爆了……=_,=
Continue reading

【系列】VPS搬家记 二日目

中期工作

  1. 转移数据库
  2. 部署新的wordpress(或者直接copy老的也行)
  3. 向nginx的vhost配置中添加rewrite规则

    以后再安装一键lnmp安装包,我就剁手!

啊,请原谅我的失态。本文并不是为了黑lnmp一键安装包什么的,毕竟人家免费做东西给你用也是有所付出嘛……

可是尼玛这个一键安装包真的坑了我很久有木有,有木有啊!!!

事情是这个样子的。
Continue reading