Blog

  • 围城-书摘

    经典名作就是好看,道理写得直白,情节到位。以下是用kindle touch做的书摘。

     

    结婚仿佛金漆的鸟笼,笼子外面的鸟想住进去,笼内的鸟想飞出来。

    说是被围困的城堡fortresseassiegee,城外的人想冲进去,城里的人想逃出来。

    战败者常常得到旁人更大的同情。

    为什么爱情会减少一个人心灵的抵抗力,使人变得软弱,被摆布呢?假如上帝真是爱人类的,他决无力量做得起主宰。

    做旧诗的人敢说不看新诗,做新诗的人从不肯说不懂旧诗的。

    天上月圆,人间月半。

    我爱的人,我要能够占领他整个生命,他在碰见我以前,没有过去,留着空白等待我。

    敌人喘息未定,即予以迎头痛击。

    有群众生活的地方全有政治。

    撒谎往往是高兴快乐的流露,也算是一种创造,好比小孩子游戏里的自骗自(Pseudoluege)。

    不知怎么,外国一切好东西到中国没有不走样的,”辛楣叹口气,不知道这正是中国的利害,天下没敌手,外国东西来一件,毁一件。

    日本人烧了许多空中楼阁的房子,占领了许多乌托邦的产业,破坏了许多单相思的姻缘。

    要人知道自己有个秘密,而不让人知道是个什么秘密,等他们问,要他们猜,这是人性的虚荣。

    这一问减轻了她心理上的年龄负担六七岁,她高兴得走路像脚心装置了弹簧。

    她不知道美国人的名言—— Man never make passes at girls wearing glasses— —〔原注:男人不向戴眼睛的女人调情〕可是她不戴眼镜。

    不痴不聋,不作阿家翁。

    借书是男女恋爱的初步。

    切忌对一个女人说另外一个女人好。

    那位山羊胡子的哲学家讲的话:“天下只有两种人。譬如一串葡萄到手,一种人挑最好的先吃,另一种人把最好的留在最后吃。照例第一种人应该乐观,因为他每吃一颗都是吃剩的葡萄里最好的;第二种应该悲观,因为他每吃一颗都是>吃剩的葡萄里最坏的。不过事实上适得其反,缘故是第二种人还有希望,第一种人只有回忆。”从恋爱到白头偕老,好比一串葡萄,总有最好的一颗,最好的只有一颗,留著做希望,多么好。

    请吃饭好比播种子:来的客人里有几个是吃了不还请的,例如最高上司和低级小职员;有几个一定还席的,例如地位和收入相等的同僚,这样,种一顿饭可以收获几顿饭。

    看朋友情人的照相,客气就够了,用不到热心。

    睡眠这东西脾气怪得很,不要它,它偏会来,请它,哄它,千方百计勾引它,它拿身分躲得影子都不见。

    拥挤里的孤寂,热闹里的凄凉,使他像许多住在这孤岛上的人,心灵也仿佛一个无凑畔的孤岛。

    廉耻并不廉,许多人维持它不起。

    上海仿佛希望每个新来的人都像只戴壳的蜗牛,随身带著宿舍。

    不过大吵架后讲了和,往往还要追算,把吵架时的话重温一遍:男人说:“我否则不会生气的,因为你说了某句话;”女人说:“那么你为什么先说那句话呢?”追算不清,可能赔上小吵一次。

    老实说,不管你跟谁结婚,结婚以后,你总发现你娶的不是原来的人,换了另一个。早知道这样,结婚以前那种追求,恋爱等等,全可以省掉。相识相爱的时候,双方本相全收敛起来,到结婚还没有彼此认清,倒是老式婚姻干脆,索性
    结婚以前,谁也不认得谁。

  • 同时向多个目标主机高效传输文件

    转自

    http://engineering.tumblr.com/post/7658008285/efficiently-copying-files-to-multiple-destinations

    需求:从一个源主机local-server拷贝out-1.ogv到两个目的地(或多个),remote-1.jpuyy.com和remote-2.jpuyy.com。不需要安全加密传输。

    平常的操作是从local-server先拷到remote-1,再拷到remote-2,需要两倍时间。如果同时拷,因为local-server的上传带宽要分给两个上传用,所以还是需要两倍的时间。如果你的文件是好几百GB,几TB,那么将等的非常痛苦。

    现在的方法是将local-server与remote-1和remote-2串接起来,形成一个链,由local-server发送最大带宽到remote-1,remote-1接到后不仅自己存,也同时最大带宽传给remote-2,如果还有更多的主机可继续接上。

    首先在最后一台主机(这里是remote-2)上运行

    nc -l 1234 | pigz -d | tar xvf -

    然后在链上的点(这里是remote-1)上执行

    mkfifo myfifo
    nc remote-2.jpuyy.com 1234 <myfifo &
    nc -l 1234 | tee myfifo | pigz -d | tar xvf -

    现在链接打通了,只需要在local-server上向第一台机传送

    tar cv out-1.ogv | pigz | nc remote-1.jpuyy.com 1234

    这样这条链上的所有主机几乎同时接收,就达到了我们的目的,节省了时间。

  • 从业的是一个圈子

    对于从业IT是一个圈子的想法,最近感觉越来越强烈。

    第一次是参加华东架构师大会(第二届),有五个讲师,主要讲的是架构设计方面的。其中竟有三个是和支付宝相关的,一个还任职于支付宝,两个离开了,他们曾经的座位就紧挨着。他们在这样的会议上相遇并不是偶然,而是必然。人从事一个行业之后,在一个方向的发展,并定要和同行合作交流,那么有共同兴趣点的人随着深入度的提升会越来越少,而他们相聚的可能性则越来越大。

    “圈子”的感受的加强是在今天参加中华架构师大会,又有新发现
    第一点发现,有一位讲师是上一次华东架构师大会的讲师,讲的东西也是上一次的东西;
    第二点发现,里面有个讲师还是支付宝的;
    第三是竟然碰到了之前的学校论坛的站长,从业比我长几年;也碰到了之前从公司跳走的同事;还有现在的同事也碰到了他以前的同事。

    大家从事的都是互联网行业,我相信以后还会在同一类会议中有更多的见面的机会。

    在回想起之前看到的博士是什么的几张图片,see http://loosky.net/2601.html and http://matt.might.net/articles/phd-school-in-pictures/,我看到的是跑在前面的人是很少很少的,这也决定了这个方向的人的圈子是如此的小。

    其实这个感受各行各业都会感觉到,那接下来要做的就是选择好一个方向,看看目标圈子里的人都在做啥,就做啥,努力到位最终就会入圈。更细化要做的就是方法,步骤。

    除了“圈子”这方面的感受,深刻感觉到IT圈子里这种隐隐的年龄或从业年限与成就的攀比,比方说谁谁谁才2X岁,就这么牛B了。比来比去就是因为IT职业的寿命有限,更新太快,面太宽广,一个人不学习,或太局限之后,很快就不知道别人说的是什么了。

  • bash while循环

    每0.01秒curl一下某网址

    while true ; do curl http://192.168.1.26/status; sleep 0.01;done

    逐行输出某日志文件

    cat 20131106_access.log1 | while read LINE; do echo $LINE; sleep 0.01 ; done

    checkCaps.sh检测CapsLock是否变化

    #!/bin/bash
    while true
    do
        stat="`/usr/bin/xset -q | grep Caps | awk '{print $4}'`"
        if [ "$stat" == "$statswap" ];then
            echo 
        else
            /usr/bin/notify-send  "Capslock changed"
        fi
        statswap=$stat
    done
  • 80 20原则读书笔记

    没有耐心的人不可能成为出色的谈判代表
    80%无价值的事物妨碍去发现20%有价值的事物
    作为80/20思维者,我们不急于采取行动,而是先静心思考,领悟出一些东西后再采取针对性的行动。
    一个人一生中最重要的决定之一就是选择盟友
    可以说单打独斗将一事无成
    减少行动,多思考
    付出不一定有回报
    如果你放弃一些低价值的活动,你就一定能把时间花在高价值的活动上

  • 命令行访问memcached

    有很多的web端和GUI可以访问到Memcached服务,比如phpMemCacheAdmin,但是有些时候需要在命令行进行Memcached的访问。 在本教程中使用Telnet来攻取Memcached信息,以及如何读取与删除数据。 连接

    telnet localhost 11211

    获取服务信息,如pid, uptime, version, 条目数, 连接数

    stats

    获取slab信息,那么什么是slab Memory is allocated in chunks internally and constantly reused. Since memory is broken into different size slabs, you do waste memory if your items do not fit perfectly into the slab the server chooses to put it in. Memcached会根据你数据的大小来存放不同的slab,可以理解为片或分区,这样不会浪费内存。

    stats slabs

    获取条目信息

    stats items

    访问和删除数据

    知道slab的概念和信息之后,可以使用如下命令访问slab

    stats cachedump [slab ID] [number of items, 0 for all items]

    如在ID=36的slab中有3个条目

    stats cachedump 36 0
    ITEM model1 [223301 b; 1383751902 s]
    ITEM modelNodeid1 [223301 b; 1383751902 s]
    ITEM id1 [223300 b; 1383751902 s]
    END

    获取id1

    get id1

    删除id1

    delete id1

    退出

    quit 或 ctrl + ]

    Command Description Example

    get Reads a value get mykey
    set Set a key unconditionally set mykey 0 60 5
    add Add a new key add newkey 0 60 5
    replace Overwrite existing key replace key 0 60 5
    append Append data to existing key append key 0 60 15
    prepend Prepend data to existing key prepend key 0 60 15
    incr Increments numerical key value by given number incr mykey 2
    decr Decrements numerical key value by given number decr mykey 5
    delete Deletes an existing key delete mykey
    flush_all Invalidate specific items immediately flush_all
    Invalidate all items in n seconds flush_all 900
    stats Prints general statistics stats
    Prints memory statistics stats slabs
    Prints memory statistics stats malloc
    Print higher level allocation statistics stats items
    stats detail
    stats sizes
    Resets statistics stats reset
    version Prints server version. version
    verbosity Increases log level verbosity
    quit Terminate telnet session quit

    参考: http://www.alphadevx.com/a/90-Accessing-Memcached-from-the-command-line