通知公告: 请使用IE9及其以上的浏览器浏览本页面。

tiyee's微言微语

无边天道,绝顶为峰…记录我自己,关注互联网!

  • 本人之前搭了一个elasticsearch集群来提供微博头条的后台cms搜索功能,因为集群服务器本身不多,所以每个节点都是双master,为了实现负载均衡和断点切换,我又通过nginx和lua搞了个简单的负载均衡。这时lua的http直接请求的每个节点的ip地址,后台和运维联系了下,运维给分配了domin,于是要切换成domin,但是此时直接报错了bad uri no resolver defined to resolve XXX.XXXX.COM 我开始以为是服务器域名解析的问题,直接curl请求了一下,发现是正常的,后来查了下资料,发现是nginx dns问题,需要手动增加dns的服务器地址打开 vim /etc/resolv.conf可以看到一条或多条记录nameserver xx.…

  • 如果你用git来管理web文件,那么如果你在本地修改文件后,需要gitadd/commit/push将代码提交到版本仓库,然后到服务器上执行git pull来更新文件。如果你是自建的仓库,那么你可以通过post-receive的hooks来触发脚本自动pull。但是事实上,我们通常是通过第三方的git仓库来管理项目的,如利用gitlab自建的仓库或第三方的github等。这样就无法利用post-receive钩子了。以本人为例,我用的是coding.net的第三方仓库,每次修改提交后,还得去服务端pull,非常麻烦。一般第三方的仓库也提供了hooks,就是让你填一个url,当你执行了指定的操作后,它会自动向你填写的url发送请求,你只要在接收到这个请求后,执行相应的操作即可。本人之前是用php接收这个请求,然后通过php system函数来…

  • 分词技术也算得上半个人工智能,学术界一直以来都在不断进行相关研究。相对而言,英文分词的性能和准确度还是比中文要高得多。一直以来也没真正关心过这个问题,但是昨晚在微信群里有个人问了下关键词屏蔽的问题。于是大家就讨论开来了。网上关于中文分词的文章很多,但是无外乎分为两类:学院派,各种概念,各种文献,一看就知道文章很牛逼,但是读完了,你还是稀里糊涂,什么都没懂。意识流。寥寥数语,轻描淡写,一般只给出一个概念,如分词的话,抛出一个trietree,然后让你自己去想。一般这类人,要么是大牛,不屑于细说,要么是菜鸟,自己也说不清楚。下面本人就以自己的理解,来说说中文分词。在我的理解…

  • 一直喜欢用sublime或vim来写代码,因为它们本身只是个编辑器,速度快,可以通过插件增加代码提示。但是上个项目是一个持续5年的项目,经手的人无数,代码十分混乱,文件都有2000多个,用编辑器来开发,实在是一个痛苦的过程。无奈之下只能找一款IDE来做开发。我一共找了很多IDE,但是稍微顺眼的就只有phpstorm和netbeans.但是phpstorm是收费的,虽然有很多“变通”之法,但是终究不是什么光彩的事情,况且betbeans也不错。于是就选它了。安装netbeans很简单,不过注意的是它需要依赖java环境,需要先安装。网上教程大把的,这里就不细说了。安装完了才发现,中文乱码了,网上搜索了下,方法无外乎就2种:把系统的中文字体链接到JRE的字体目录下…

  • 平时做表单都是跳转提交的,但是今天要做一个ajax图片异步上传,网上搜索了下,方法都比较老了,居然还有用flash的,普通的表单上传通过jquery的serialize()转换成querystring后就可以直接ajax post 上传,但是碰到文件上传就不奏效了,型号html5有个方法FormData()可以实现上传,我写的代码如下:function upThumbSubmit() { if(!window.FormData) {  alert('your brower is too old'); return false; } var formData = new FormData($( "#upForm" )[0]); $.ajax({ url:'?c=api&a=upload', type:'post', data:formData, dataType:'json', success:function(data){ alert(data); return false; } }); } 但是报错了,错误如下…

  • 阿里云推出了kvstore,也就是一款redis存储空间,但是没有一款redis管理工具,因为kvs只支持阿里云的服务器连接,所以客户端工具都不能用了,而且它还屏蔽了keys,导致一款比较有名的管理工具:phpredisadmin不能用,当然,phpredisadmin本身功能也比较少,本来就不是很让人满意。最近有些时间,本人自己决定开发一款,前台因为采用了angular,故可能不支持一些比较老的浏览器,后台本来是准备用node.js的,但是本人对node.js还不是很顺手,怕开发周期比较长,故先采用了php做的后台。目前bug还比较多,很多功能,比如导入导出,添加key等功能没有放进去,如果后续有时间,本人会逐渐完善,而且可能还会开发node.js版本。地址:…

  • 年前阿里云一直说会发布redis存储,年后刚上班,就发现公测了。好奇心驱使下,本人又决定当一回小白鼠。KVStore申请地址:https://buy.aliyun.com/kvstore因为本人之前采用的是服务器上自建的redis,所以申请成功后,稍微改下配置就可以直接使用了,官方的文档在这:http://docs.aliyun.com/#/kvstore在数据迁移的时候,因为我没有开启aof,所以只能通过sava命令导出rdb格式的文件,然后用官方的redis-rdb-tools工具转换成proto格式的文件,然后导进KVStore,官方文档在此:…

  • 人言,权力越大,责任越大。本人身为一个800人qq群的管理,权利倒是没体会到,责任倒是一大堆,不断有人来问各种问题,大部分情况下其他人就回答了,不过也有人指明希望我回答,对此本人表示相当的无奈,好在年底并无什么急事,所以有时间还是会回答的。昨天,有人就提出了这个问题,某海量用户网站,用户拥有积分,积分可能会在使用过程中随时更新。现在要为该网站设计一种算法,在每次用户登录时显示其当前积分排名。用户最大规模为2亿;积分为非负整数,且小于100万.本人之前也做过类似的东西,只是用户数远远达不到这个量级。自然解决思路也大不相同,在用户少的时候,我们通过一个redis sort set可以胜任。但是…

  • 前几天阿里云送了张50元的代金券,眼看就要到期了,就随手买一个月的低配阿里云,今天闲来无事,准备装个php 7试试,首先下载源文件,但是github实在是太慢了,只能去php的git下,估计阿里云做了镜像,下周速度飞快,几秒钟就下完了。下周地址为git@git.php.net:/php-src.githttps://git.php.net/repository/php-src.git完了进入文件夹,然后执行 ./buildconf 有很多库需要安装,一个个装实在太麻烦,从网上找了个依赖库yum install -y gcc gcc-c++ make zlib zlib-devel pcre pcre-devel libjpeg libjpeg-d…

  • 2015年新年伊始,便在年会中了奖,这是我二十多年来唯一一次抽奖中奖,本以为接下来的15年会人品爆表,结果不幸的事情还是发生了,上周五在乐天超市门口买完披萨,钱包就丢了,也不知道是丢失还是被盗,钱包里有本人的身份证,所有的银行卡,工牌,北航学生证,公交卡,还有一堆发票,和500多块钱的现金。目前就剩下一串钥匙,一个手机了。打电话给派出所,得知须得补办身份证,可是补办身份证需要回户籍地,回户籍地乘车需要身份证...貌似是个死循环,更为严重的是,当时手无分文,连坐地铁的钱都没有了,因为没有银行卡了,别人还不能给我打钱,幸好,一个附近的朋友临时给我500块钱应急。当我在网上把情况发了后,很多人都表示可以借钱…