动荡

动荡是无处安放的躁动青春。
只求青春无悔。
不想虚度每一分时光。

闲言碎语

专注地做一件事,好难。
在内网看到篇技术文章,最后一页说参考了屈光宇的博客,想了半天,都觉得熟悉,突然想起是360的人。
专注地记录技术博客,一下子那么多年,会被人参考援引,好厉害。
而我的荒废的博客,却多变成了随笔而闲言碎语。

马上就要离开上海了,强迫症一样的把饭卡变成余额0,餐券数0,退了地铁卡。
就好像白夜追凶,关队吃了老虎一样。决绝地准备离开,不留一点退路。
做了一年多的C++ server,也许是业务偏多,说不上喜欢与否,却是这么多年一直想做的事情。
要做spark了,然后走数据的路线吧。随时事而动,亦没有办法,然大家都是想做机器学习算法相关的。
杨柳依依,雨雪纷纷。皆为利来,皆为利往。

server 能承受30000的qps,虽然因为业务不复杂。C++ 接触了libco框架,Taf框架; 熟悉了http,tcp协议,看看tcpdump,发包拆包,长链接;学习了log滚动,写入的锁;熟悉了protobuf,熟悉了redis;也core过很多次,后来知道怎么用gdb看core,自己测多少遍,都不如线上的数据考虑的周道,虽然学的很浅,但接触到的很多,看了这么多年的书,也算真真正正感受到线上的数据,每秒数万的请求呢。灌灌redis数据,看看redis内部结构。一如既往喜欢shell,喜欢awk.

大约就是这些吧。

九月下

2017年九月下,又是悲春伤秋的一年。
五年前的现在,2012年九月下,为保研而辗转反侧,求而不得。
四年前的现在,2013年九月,在怀柔,戏谑地称为怀北庄大学。
两年前的现在,2015年九月,为找工作而徘徊不定。
艾丽华酒店,我坐在角落的地上,怕熟悉的人看到。看着厚厚的简历,寥寥而来的面试官,不会被翻到。

路线

我不知道我要什么,只知道我不要什么。
我喜欢一个人在角落,沉默,静看大家的喜乐。越来越不爱说话了,也许是十年前话太多。
做一个有情怀的纯C++后台开发真心好难。
就像三四年前,我怀揣Java Web自以为牛逼的绝技,然后四处碰壁,以为世界都是C++的。
然后不选择之后转而鄙视Java入门简单,然后三年后发现竟是Java的市场。原来高端Java也可以这么牛逼。
就好像我们都鄙视机器学习数据挖掘算法,是因为这些词汇炒的太火热。
不愿意当风口上的猪,只愿意安安静静的做好自己的计算机基本功。
然而鄙视链是数学好的鄙视数学差的。狭隘的我们不愿意做一个会背公式只会推公式的人。
然而生活就是狭隘的。然而我并不是一个人。
我们是有情怀的后台开发。
然而有的仅仅是情怀吧。
不得不面对的是算法道路的前途,钱途。随波逐流做风口浪尖上的水猪。
一个不怎么爱玩游戏的C++后台开发是有多孤独。

一脸正经地胡说八道

提心吊胆地删数据,一脸正经地胡说八道。

上亿个32位的16进制长整数,存在redis里面,用hash存。
前五位做key值, HSET key field value, 后27位做为field。
“将哈希表key中的域field的值设为value。如果key不存在,一个新的哈希表被创建并进行hset操作。如果域field已经存在于哈希表中,旧值将被覆盖。”
形成一个扁平的树形结构。
第一组数据的value为11,插value为10的第二组数据的时候。。毫无防备,猝不及防的覆盖了第一组数据的70%,居然数据是一致的。应该通过间隔符保留两个值。
第一次插数据的时候,干脆利落,十个线程,一个多小时完事。
再插入重复的数据,只改变值的时候,都会变得非常慢,估算一天都玩不了事。
只能蓄谋删数据再插入,而不是更改来换时间了。
删除的时候也是,hdel总让人着急,直接上delete了,删数据,总让人这样害怕。

阿里云centos更新gcc到4.8版本

阿里云默认的gcc是4.4.7版本,不支持C++11,需要手动升级。
1. wget http://gcc.skazkaforyou.com/releases/gcc-4.8.2/gcc-4.8.2.tar.gz
2. tar zxvf gcc-4.8.2.tar.gz
3. ./contrib/download_prerequisites
4. mkdir build
5. cd build
6. ../configure –prefix=/usr
7. make && make install
此时会报错
build/genattrtab ../.././gcc/config/i386/i386.md insn-conditions.md \
-Atmp-attrtab.c -Dtmp-dfatab.c -Ltmp-latencytab.c
make[3]: *** [s-attrtab] Killed
make[3]: Leaving directory `/usr/src/gcc-4.9.2/host-x86_64-unknown-linux-gnu/gcc’
make[2]: *** [all-stage1-gcc] Error 2
make[2]: Leaving directory `/usr/src/gcc-4.9.2′
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/usr/src/gcc-4.9.2′
make: *** [all] Error 2

发现这是阿里云独有的共性错。。因为没有swap分区。。
首先调整swap分区为1G
1. dd if=/dev/zero of=/tmp/myswap bs=32k count=32768
2. mkswap /tmp/myswap
3. swapon /tmp/myswap
此时free -m可以看到swap为1g
4. sudo sysctl vm.swappiness=10

64位系统又会报错
/usr/include/gnu/stubs.h:7:27: fatal error: gnu/stubs-32.h: No such file or directory
需要yum -y install glibc-devel.i686 glibc-devel

参考:

http://my.oschina.net/u/1465953/blog/209029?fromerr=kbNcnjMH

http://bbs.csdn.net/topics/390817656

http://blog.csdn.net/tangyi2008/article/details/42099427

http://www.educity.cn/wenda/566626.html

如果17岁能看到

好好学习,好好学习,好好学习
考上个好大学很重要
从小就保持身材!坚持体育锻炼!胖了再瘦费劲!!!
好好学英语,尤其是口语和听力
不要乱挤痘痘,别手欠,一个痘印够折腾好久的
身体不舒服及时看医生,及时!
保护好皮肤,坚持防晒,无论男女。而且明白之后要提醒父母
学术护肤,别盲目
培养自己的兴趣爱好,专一两门,要专!
跟舍友处好关系没有那么重要。最重要的是第一条
朋友没必要这么多的,一堆所谓的朋友不如几个挚友
以上都是血泪教训。

作者:晴天
链接:https://www.zhihu.com/question/23819007/answer/51699462
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

一些点

其实做点自己喜欢的事情总是好的,可惜太浮躁,并不能深入。
比如当时做H264视频解码,如果好好读读VLC源码也是挺好的。
还有回调函数,可以不可以用消息机制。或是什么地方应该加锁用synchronized。
写完最简单的J2EE,看到多线程还是很震惊觉得很精巧。
异步回调也是挺好玩的,可惜荒废了大好时间,做项目的时候草草了事。
看书看得深入,可以思考又懒得动手罢了。
绝大多数的ACM多数据结构,又少上述的工程。
所学方向是并行计算,然而并不真的懂并行。
至少没有互斥没有加锁。看看七周七并发,有感触。
如果能够好好研究一下某些锁,对比一下时间,也挺好玩的。