坚信科学,分享技术

2018全新版本,未来在blog.54chen.com更新博客!

>>>尝试更加利于阅读的2014版科学院,以后都在新版上写。

Category Archives: linux

linux qq的问题,ubuntu的问题,linux常用命令的问题,都在这个分类里能找到解答.

nginx.conf控制指定的代理ip和ip访问的设置手记

工作中有一次用到利用nginx的配置来让只有公司ip的访问才能打开指定的后台url,于是有了下面的记录。 在nginx中if很弱,http://www.nginxcn.com/doc/standard/httprewrite.html,基本上不能写太复杂的条件或者是嵌套。 因为公司我(54chen)网络的设置,过去打到服务器的ip有可能是几个ip,同时也有可能是代理的ip,所以在if判断的时候,可能有多个条件。 location /administrator { #log_format www_54chen_com '$remote_addr - $remote_user [$time_local] $request ' # '"$status" $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; # access_log /data/www.log www_54chen_com; set $fuck 0; if ($remote_addr = '1.1.1.1'){ set $fuck 1; } if ($remote_addr = …

Continue reading

Posted in linux | Tagged , | 2 Comments

用sphinx轻松搞定方便管理的多节点过亿级数据搜索

概述 来自俄罗斯的开源全文搜索引擎软件Sphinx,单一索引最大可包含1亿条记录,在1千万条记录情况下的查询速度为0.x秒(毫秒级),实测千万级数据在0.0X秒和0.00X秒占大多数。 Sphinx创建索引的速度为:创建100万条记录的索引只需3~4分钟,实测30W线上复杂的blog数据需要5分钟,创建1000万条记录的索引可以在50分钟内完成,实测时间比这个更长得多,而只包含最新10万条记录的增量索引,重建一次只需几十秒,实测十万条在一分钟不到的时间。 Sphinx 是一个基于 GPL 2 协议颁发的免费开源的全文搜索引擎.它是专门为更好的整合脚本语言和SQL数据库而设计的.当前内置的数据源支持直接从连接到的 MySQL 或 PostgreSQL 获取数据, 或者你可以使用 XML 通道结构(XML pipe mechanism , 一种基于 Sphinx 可识别的特殊xml格式的索引通道) 。 sphinx安装 安装见 用Sphinx快速搭建站内搜索功能 配置多节点协同工作 第一点,原理 在sphinx.conf中可以配置index段落里的local和agent两个参数,local = blog_1表示使用本地索引名为blog_1的索引,agent = 10.1.1.1:3312:blog_2表示使用10.1.1.1这个机器的3312端口上服务的blog_2索引。这两个参数均可在此段落中重复出现。 利用这两个参数,可进行节点与节点间的配置。如图1所示,一个searchd服务在接到请求时两种使用索引的示意图。 图1 一个searchd服务在接到请求时两种使用索引的示意图

Continue reading

Posted in linux, 架构研究 | Tagged , | 11 Comments

近期分布式相关文章汇总

号外:http://url.cn/0ThU83 infoQ的线下技术活动Qclub本周六在知春路京仪大酒店举行,我给沙龙参会者分享来自人人网nuclear的开发经验以及如何运用在RIA上. 1.54chen解读NoSQL代表Dynamo 这篇文章颇费了心思从构思到成文,把dynamo原理描述得还算是清楚。 2.4月24日QCon现场直播流水帖 这篇是在QCon大会上现场记录的一些不算是太完整的笔记 4.java线程控制器代码分享-根据cpu情况决定线程运行数量和情况 一个根据cpu来执行的线程控制器实现,评论中有高人改进方案。 5.jdbc socketRead0 locked 记一个Mysql的不明bug 在开发nuclear过程中遇到的一个jdbc的bug 6.LinkIn基于Dynamo设计的系统:伏地魔(voldemort)设计中文文档[我是陈科学院译]-完稿 54chen翻译的一个来自国外SNS网站的分布式存储系统文档

Continue reading

Posted in linux, 架构研究 | Tagged , , | Leave a comment

用Sphinx快速搭建站内搜索功能

Sphinx[英] [sfɪŋks] [美] [sfɪŋks] 出自俄罗斯的开源全文搜索引擎软件Sphinx,单一索引最大可包含1亿条记录,在1千万条记录情况下的查询速度为0.x秒(毫秒级)。Sphinx创建索引的速度为:创建100万条记录的索引只需3~4分钟,创建1000万条记录的索引可以在50分钟内完成,而只包含最新10万条记录的增量索引,重建一次只需几十秒。 Sphinx 是一个基于 GPL 2 协议颁发的免费开源的全文搜索引擎.它是专门为更好的整合脚本语言和SQL数据库而设计的.当前内置的数据源支持直接从连接到的 MySQL 或 PostgreSQL 获取数据, 或者你可以使用 XML 通道结构(XML pipe mechanism , 一种基于 Sphinx 可识别的特殊xml格式的索引通道) 下面发出操作记录: 10106 wget http://www.coreseek.cn/uploads/csft/3.2/csft-3.2.12.tar.gz 10107 wget http://www.coreseek.cn/uploads/csft/3.2/mmseg-3.2.12.tar.gz 10109 tar -zxvf mmseg-3.2.12.tar.gz 10110 tar -zxvf csft-3.2.12.tar.gz 10111 cd …

Continue reading

Posted in linux, 架构研究 | Tagged | 5 Comments

54chen解读NoSQL代表Dynamo

本文已经首发于InfoQ中文站,版权所有,原文为《解读NoSQL技术代表之作Dynamo》,如需转载,请务必附带本声明,谢谢。 InfoQ中文站是一个面向中高端技术人员的在线独立社区,为Java、.NET、Ruby、SOA、敏捷、架构等领域提供及时而有深度的资讯、高端技术大会如QCon、免费迷你书下载如《架构师》等。 NoSQL在过去的一年里,逐渐已经成为了家喻户晓的东西,我(54chen)自从去年开始人人网的NoSQL系统Nuclear的研发以来,一直看着NoSQL越来越热,越来越引来大家的围观。受infoQ霍师傅之托,特作此文,一来作过去一年的总结,二来希望以平白的话语对NoSQL系统在国内的发展献绵薄之力。 1.我眼中的两种模式 NoSQL其实并不是什么妖魔鬼怪,相反的,NoSQL的真谛其实应该是Not Only SQL,其产生是在数据量和访问量的增大下,人为地去添加机器、切分数据到不同的机器,变得越来越困难,人力成本越来越高,于是便开始有了这样的项目,本意是提高数据存储的自动化程度,减少人为干预的时间,让负载更加均匀。在国际上,真正的代表之作有来自Google的 BigTable 和Amazon 的Dynamo,他们分别使用了不同的基本原理。 1.1 MapReduce 这是历史最久的一种模型,典型的代表是BigTable。Map表示映射,Reduce表示化简。MapReduce通过把对数据集的大规模操作分发给网络上的每个节点实现可靠性(Map);每个节点会周期性的把完成的工作和状态的更新报告回来(Reduce)。大多数分布式运算可以抽象为MapReduce操作。Ma

Continue reading

Posted in linux, 架构研究 | Tagged , | 8 Comments

跨系统共享键盘鼠标利器分享:synergy

是这样的张总, ?在家里的电脑上按了CTRL+C,然后在公司的电脑上再按CTRL+V是。。。肯定不行的。即使同一篇文章也不行。不不,多贵的电脑都不行。 --题记 端午归来,特此总结,实现上述难题,靠一利器:synergy 此利器可打通mac\linux\windows任意两者的联系,使两个系统共享鼠标和键盘。下面以ubuntu 10.04与盗版windows XP为例。 首先,在ubuntu下面,建立服务端。 #sudo apt-get install synergy quicksynergy #quicksynergy 启动后如图所示: 只需要填写上下左右中的某一个位置修改成另一台机器的机器名,点击执行,常驻运行即可。 然后,在windows下面,安装客户端。 Synergy 1.3 Client 安装运行后如图: 输入Ubuntu机器的ip地址,点Start即可连上两机。 连上之后,可以撤掉在你办公桌面上的一个键盘,鼠标移动到哪个桌面上,键盘针对哪个系统输入,非常好用,还支持复制粘贴,对上班时候用两台电脑的同学非常适用。

Continue reading

Posted in linux | Tagged , | 3 Comments

ubuntu 10.04 LTS版本下的Empathy MSN群聊显示昵称方法

1.关系普及 Empathy是个托,python-papyon是个python实现的msn库,telepathy-butterfly是个完成msn功能的python客户端。 2.修改办法 sudo vim /usr/share/pyshared/papyon/conversation.py 查找 if message_type == 这个字符串 找到内容为: if message_type == 'text/plain': msg = ConversationMessage(unicode(message.body, message_encoding), TextFormat.parse(message_formatting), self.__last_received_msn_objects) try: display_name = message.get_header('P4-Context') 将if判断后try之前中间定义msg这一堆内容修改为如下: try: msg = ConversationMessage(unicode("["+message.get_header('P4-Context')+"]"+message.body, message_encoding), TextFormat.parse(message_formatt

Continue reading

Posted in linux | Tagged , | 6 Comments

参加mongodb workshop

29号,星期六,参加了在ThoughtWorks办公室举行的mongodb workshop。 主讲者Peter Membrey,是个年轻有为的牛人,17岁就获得了RHCE。 这是一个很小团体的技术会议,人数没有超过20人,来参加的都是有名气的牛人们。会上认识了腾讯超群大侠(还不忘记为他们招聘挖人吼一声),以及甲骨文的黄秋大侠(给人很文雅的感觉:)),以及来自鲜果和新浪的两位大侠(sorry,两位都没带名片,叫不上名字来~hoho~) Peter的讲话是全英文的,只能听懂一半,另一半完全靠ppt上的内容。。。不过并不妨碍我们交流~~ ThoughtWorks的办公室是非常nice的。。。有图有真相。。。(图从网上找的,忘记现场拍照了) 这是厨房 有点吧台的样子 这是书架,沿着边上全是 这是办公的地方,没有格子 另外,创建了一个group,欢迎对no-sql架构有兴趣一起进行深入探讨的同志加入 http://groups.google.co.nz/group/dynamo_china 目前已经看到豆瓣的洪强宁大侠加进来了,更多的大侠正在加入中。。。

Continue reading

Posted in linux | Tagged | 6 Comments

分享一个批量扫描ip地址的shell内涵脚本

内涵前言 假如您在维护上千台服务器,然后通过www.xxx.com发现打不开,然后有部分用户又说是可以打开的,现在要做的事情是找出来哪个机器可以用。 内涵第一章 检查原理 有许多DNS反查的网站,可以反查你的域名的相关ip地址,然后把这些ip地址循环ping,有返回结果的说明那个服务器可用。比如说just-dnslookup等等网站。具体可以在网上找找。 内涵第二章 检查操作 在准备好数据后,将结果复制到脚本文件中的temp文件中,然后修改54chenPing.sh中的第二行,将awk中的$3修改为你的数据对应的列数。比如说你复制的内容的第三列的话就写$3,第四列就写$4。 内涵第三章 执行 #sh 54chenPing.sh 然后会有结果输出,持续输出返回结果的一个或者多个ip即是可用的服务器。 内涵第四章 代码 #!/bin/sh cat temp | awk '{print $3}' > ip.txt FLIST="`cat ip.txt|grep -v "#"`" for FILE in `echo "${FLIST}"` do ping ${FILE}> tmp/${FILE}.txt& done tail -f …

Continue reading

Posted in linux | Tagged , | Leave a comment

[更新]ubuntu 10.04 硬盘安装手记

在过去的两年里,ubuntu发展迅速,快速成为了技术人员居家工作旅行必备系统。54chen从8.04开始从fc系列(RH的后续个人系统)换到ubuntu来使用,期间连续发布了多篇使用ubuntu各个版本的安装和使用手记。54chen作为互联网最早的ubuntu"义务推广员",一路看到了ubuntu队伍的发展和壮大。 安装的记录: ubuntu 8.10 desktop版本 硬盘安装手记 [十一归来]ubuntu 9.10 硬盘安装手记 还有许多配置相关的手记。 10.04的发布:2010年4月29日(看上去是这样的,四月份发布的都是长期支持的版本,后缀里有一个LTS的标识,同时4月份出的版本往往也是没有啥巨大动作的。) 根据官方总结,Ubuntu 10.04中将会具有以下全新特性: 快速启动:在几乎所有机型上的启动速度都明显更快,在使用固态硬盘(SSD)的笔记本电脑或者上网本等机型上的速度超快。这意味着用户可以开机后立即进入浏览器,快速访问网站。    起点社交:Ubuntu 10.04LTS桌面版新的“Me Menu”(我的菜单)整合了社交网站如Facebook、Digg、Twitter和Identica,使得各个网站的登录和个人信息更新一次完成。 Me Menu的聊天软件,支持同时登录QQ、MSN、Google Talk等多个应用程序,和朋友或者同事聊天。(没有出现本土化的SNS和微博,墙干净了,没啥用)   Ubuntu One:增强的在线服务桌面整合功能意味着用户可以更容易地使用云端服务存储、分享和同步文件及文件夹、浏览器书签和通讯录,使得从个人计算机

Continue reading

Posted in linux | Tagged , | 5 Comments
Page 3 of 101234510...Last »