jiacheo.org
感悟 | jiacheo杂谈
http://www.jiacheo.org/cat/tech/feels
大公司的表现是,当产品换了一个新的老大,往往一个新的老大会想表现自己的‘杰出才能’,调整产品的战略,导致之做的很多工作要重新调整,最终反馈到用户的是 哇塞,你们又升级啦 尼玛 这个按钮怎么没了 卧槽,排序算法又变了 等等. 不过还是有少许bug, session expired后有些时候没有自动重连 如果你要用到zookeeper,可以试试他们的框架。 1 主题换成了响应式 responsive 的主题. 随着移动互联网的崛起,越来越多的网站把他们的站点迁移到移动端,小公司 业务比较单一 的做法是直接做一个APP把web端的内容用app重新实现一把,而大公司一般 由于业务太多 是做一个移动平台的APP的皮,内嵌一个webview控件,里面跑的是H5的代码,可以保证各大智能手机平台 IOS, android 上访问到的内容是一模一样的,同时保证了开发的迭代速度。 后来越来越多的地方有人提到了响应式交互,我的理解是,实际上就是自适应式的交互,页面的内容能够根据你浏览器当前的window size来调整内容 要么隐藏,要么换行 的显示,以期望你的网站在各种分辨率下都能正常访问。
jiacheo.org
分布式 | jiacheo杂谈
http://www.jiacheo.org/cat/tech/distr
1 首先, 我们能确定我们有一份输入, 而且他的数据量会很大. 2 通过split之后, 他变成了若干的分片, 每个分片交给一个Map处理. 3 map处理完后, tasktracker会把数据进行复制和排序, 然后通过输出的key 和value进行 partition的划分, 并把partition相同的map输出, 合并为相同的reduce的输入. 4 ruducer通过处理, 把数据输出, 每个相同的key, 一定在一个reduce中处理完, 每一个reduce至少对应一份输出(可以通过扩展MultipleOutputFormat来得到多分输出). 5 来看一个例子, 如下图:(来自 hadoop权威指南 一书). 52 mapper会解析每行数据, 然后提取有效的数据, 作为输出. 这里的例子是 从日志文件中提取每一年每天的气温, 最后会计算每年的最高气温. 54 通过shuffle之后, 变成reduce的输入, 这是相同的key对应的value被组合成了一个迭代器. 55 reduce的任务是提取每一年的最高气温, 然后输出. 5 覆盖configure方法, 作用跟map的相同.
jiacheo.org
生活体验 | jiacheo杂谈
http://www.jiacheo.org/cat/life/生活体验
Middot; Powered by WordPress. Middot; Theme by 小影.
jiacheo.org
android开发 | jiacheo杂谈
http://www.jiacheo.org/cat/tech/android开发
Android – AsyncTask与Handler 的关系. 这里的mActive变量设计的很巧妙,当mTasks.poll()得到的下一个任务为空的时候, 就不会再往下执行了, 所以可以保证所有任务都能被执行到,而且任务都是串行执行的。 这里用的是默认的Executor, 而这个默认的Executor就是SerialExecutor, 而且是单例的. 看到sDefaultExecutor前面有个volatile关键字就说明了这个Executor是可以被更改的,果不其然, AsyncTask提供了这么一个方法:. 所以我们调用AsyncTask.executeOnExecutor的时候,可以把AsyncTask.THREAD POOL EXECUTOR作为第一个参数传过去即可,也省去了我们自己定义(如果实在需要还是真的要自己定义)的代码了。 Android – AsyncTask 源码分析. 定义一个异步任务需要三个泛型类型 Params,Progress和Result 以及4个步骤 onPreExecute,doInBackground,onProgressUpdate和onPostExecute。
vckai.com
pptpd密码中带有#无法识别_Linux - Vckai的个人技术博客. - Vckai.com
http://www.vckai.com/p/28
参考文档 http:/ www.dd-wrt.com/wiki/index.php/PPTP Server Configuration. 转]在Ubuntu 14.04中使SublimeText 3支. Comments powered by Disqus. 版权所有 @ 2013 Vckai博客. 提供, 通过 XHTML 1.1.
vckai.com
[转]分布式Redis架构设计和踩过的那些坑们_Nosql - Vckai的个人技术博客. - Vckai.com
http://www.vckai.com/p/36
此文根据 QCON高可用架构群 分享内容,由群内 编辑组 志愿整理,转发请注明出处。 和Redis cluster不同的是,Codis采用一层无状态的proxy层,将分布式逻辑写在proxy上,底层的存储引擎还是Redis本身 尽管基于Redis2.8.13上做了一些小patch ,数据的分布状态存储于zookeeper(etcd)中,底层的数据存储变成了可插拔的部件。 Btw,RebornDB和它的持久化引擎都是完全开源的,见https:/ github.com/reborndb/reborn和https:/ github.com/reborndb/qdb。 当然这样的设计的坏处是,经过了proxy,多了一次网络交互,看上去性能下降了一些,但是记住,我们的proxy是可以动态扩展的,整个服务的QPS并不由单个proxy的性能决定 所以生产环境中我建议使用LVS/HA Proxy或者Jodis ,每个proxy其实都是一样的。 这样的好处是我们可以最大程度上的减小Proxy转发的损耗 比如proxy会在本地启动Redis instance 和人工误操作,提升了整个系统的自动化程度。 Q9 对于Redis...
vckai.com
centos6 下安装nginx1.7.9+php5.6.4+mysql5.6.2_Linux - Vckai的个人技术博客. - Vckai.com
http://www.vckai.com/p/31
Centos6 下安装nginx1.7.9+php5.6.4+mysql. Centos6 下安装nginx1.7.9+php5.6.4+mysql5.6.2. 该文章是由于我在docker安装LNMP环境时出现的,原型是张宴大哥这篇文章 http:/ zyan.cc/nginx php v7/. Usr/sbin/groupadd mysql # /usr/sbin/useradd -g mysql mysql # wget http:/ dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.25-linux-glibc2.5-x86 64.tar.gz # tar zxvf mysql-5.6.22-linux-glibc2.5-x86 64.tar.gz # mv mysql-5.6.22-linux-glibc2.5-x86 64 /data/apps/mysql. Data/apps/mysql/bin/mysql -uroot -p -S /tmp/mysql.sock. GRANT ALL PRIVILEGES ON *.* TO admi...
vckai.com
Docker介绍及安装_Linux - Vckai的个人技术博客. - Vckai.com
http://www.vckai.com/p/26
容器是完全使用沙箱机制,相互之间不会有任何接口 类似 iPhone 的 app。 首先,你需要安装EPEL仓库,请看这里 EPEL installation instructions. Sudo yum -y install docker-io. Sudo yum -y update docker-io. Sudo service docker start. Sudo chkconfig docker on. Sudo docker run -i -t fedora /bin/bash. 转]在Ubuntu 14.04中使SublimeText 3支. Comments powered by Disqus. 版权所有 @ 2013 Vckai博客. 提供, 通过 XHTML 1.1.
vckai.com
[转]在Ubuntu 14.04中使SublimeText 3支持中文输入法_Linux - Vckai的个人技术博客. - Vckai.com
http://www.vckai.com/p/27
转]在Ubuntu 14.04中使SublimeText 3支持中文输. 转]在Ubuntu 14.04中使SublimeText 3支持中文输入法. 在Ubuntu 14.04中安装了SublimeText 3之后发现既然不支持输入中文,于是在网上搜罗一下,发现很多人遇到了同样的问题,但是解决办法大该就只有一个。 安装方式有多种,本文所描述的是从官方网站上下载64位的.deb文件 ,具体为http:/ c758482.r82.cf2.rackcdn.com/sublime-text build-3059 amd64.deb文件,下载后双击即会自动使用默认的安装软件安装。 Sudo apt-get install build-essential libgtk2.0-dev. Use LD PRELOAD to interpose some function to fix sublime input method support for linux. By Cjacker Huang jianzhong.huang at i-soft.com.cn *. Gdk region get clipbox (.