Swap inside vps under OpenVZ

OpenVZ does not support Swap. If you have a program that requires swap, then you can create and use a fake swap.

Instructions:

1) Log into your vps as root.

2) Create the next fake-swap.sh shell-script.

#!/bin/bash

SWAP=”${1:-512}”

NEW=”$[SWAP*1024]“; TEMP=”${NEW//?/ }”; OLD=”${TEMP:1}0″

umount /proc/meminfo 2> /dev/null
sed “/^Swap\(Total\|Free\):/s,$OLD,$NEW,” /proc/meminfo > /etc/fake_meminfo
mount –bind /etc/fake_meminfo /proc/meminfo

free -m
3) Make script executeable

chmod u+x fake-swap.sh
4) Run script to create fake swap …

… with 512MB (default)

./fake-swap.sh
… with 1024MB

./fake-swap.sh 1024

发表在 其他 | 标签为 | 留下评论

回顾我的2011

2010年末由于自己经营不善,坚持了近30个月的事业部解散了,于是失业了;

2011年1月到2月,在中山公园附近的公司进行动漫的创业;

3月到5月,每天奔波于浦东浦西间;

5月回归做社区;开始了半年的被折腾;

6月完成团队组建;

7月完成第一版;

8月完成第二版;

9月完成新的折腾版

11月完成新一个折腾版

12月至今为1月1日版本继续小规模折腾;

亏欠了一群人;
也搬起过石头砸过自己的脚;
更得罪了一票的人;

一些不符合原则的事情没有坚持反对;
一些不合适的人却意外的帮了他一忙;
忍泪看到一个个有激情的人消沉下去;

总结:
不管这件事情跟你有没有关系;你惹上了,就摆脱不了了;
当别人依赖上你,你就开始悲剧了。

最后感谢2011,感谢所有人。

发表在 人生感悟 | 留下评论

产品设计之需求分析

引用自:http://www.20ju.com/content/V190757.htm
需求分析的首要任务就是明确哪些需求是用户的核心需求,在我们的日常工作中,需求搜集是一项很重要的工作,然而面对多方的需求来源(竞品分析、用户反馈、用户研究),究竟该如何抓住用户的核心需求?又有哪些原则可以遵循呢?

反问思考法
面对列出的众多没有章法的需求,我们往往是先一条一条的过,但是往往我们自己心里都没有底, 你说这个需求重要,她说这个需求是必须的,当遇到类似的情况时,可以运用“反问思考法”,所谓反问思考法,就是在面对一条功能描述时,首先要反问,增加这 个功能对产品来说有意义吗?我不加他对产品有什么损失吗?假如你半天想不出来,那么就可以考虑将他pass掉.

80/20法则

在现有的移动设备领域,关于如何抓住用户的核心需求,两个著名的设计哲学代表HIG和zen of  palm也没给出一个明确的答案,zen of palm只是给出了一个法则:80/20法则,就是用户花80%的时间去解决的问题,构成产品的核心需求;剩下的20%则直接放弃。

少就是多
这个思想来源于包豪斯学派,最初使用在建筑领域,后来被用到工业设计领域,而乔布斯本人也非常 推崇,特别是在手机的使用环境中,受天然的屏幕限制,功能越多,产品就显得越繁杂,面对浩瀚的功能,这时用户往往会选择放弃使用。而面对激烈化的手机桌面 争夺战,就那么一点空间,保持产品的简洁是不能不考虑的.
遵循少就是多的原则,只关注用户的核心需求,把它做到完美、极致,是留住用户的基本原则.在这方面Apple是个典范 。关于这一点《zen of palm》 里有两个谜语,非常形象.
1.大猩猩如何学会飞?

Image 

大猩猩怎么会飞呢?一只会飞的大猩猩还是大猩猩吗?当然不是,所以猩猩就应该做猩猩该做的事情,其他的就交给鹰好了

2.一座山如何放到一个碗里?

Image0. 

一座山怎么可能放到一个碗里?我们真的需要那么多泥土吗?当然不需要,所以只要把钻石找出来放到碗里,把石头扔了!要那么多泥土干嘛!

合理的组织
当按照大猩猩原则,我们列出了一个长长的功能列表时,往往会陷入下一个纠结的境地—该如何组织这些功能?这些核心功能里的核心需求又是哪些?在这之前,先看看《zen of palm》提到的一张图:

Image9.

这张图指出了PC和移动设备上功能和用户体验的利害关系,在产品初期,功能的加入可以提升用户体验,而当功能越加越多,产品就会显得冗余繁杂,这时 就单个功能来说它可能很好很有特色,但是对总体的用户体验却是种伤害,既要加这个核心需求又不能对整体的用户体验造成伤害,这真的不简单,有解决办法么? 在《简单法则》我找到了答案:合理的组织可以让复杂的产品化繁为简,不仅如此,经过一定的组织更容易让用户关注核心功能。

传统的cd播放机按钮实在太多,一个可能的解决办法就是拿掉快进、快退、上一首、下一首之类的按钮,只剩下:播放/暂停,但是假如这首不是我想要 的,需要听下一首怎么办?所以不能将上一首、下一首去掉,但是他们的地位没有播放、暂停高,这时候经过合理的组织,产品的感觉完全就不一样了,例如 ipod shuffle 5,将上一首、下一首隐藏在了音量“+”“-”里面,连按两下是下一首,连按三下是上一首,这样不仅合理利用了空间,让产品显得更小、更轻,而每每这些隐 藏的功能被发现时,都是惊喜.

所以经过合理的组织,我们还可以总结出一条需求分析原则:即只关注核心功能,去掉不需要的功能,必要的功能将其缩小隐藏.就像多功能刀,当你将所有功能都展开的时候,它什么也做不了,而当你每次只展开一个功能,将其他的隐藏,他才成为一把多功能刀,当然按照大猩猩的哲学,最好就是一把简单的刀,没有其他任何功能,但这对于大多数拥有一定数量级用户的产品来说显然是不现实的.

201082315435825536830副本 

要学会平衡

上面提到过功能和用户体验的利害关系,在《zen of palm》里把功能和用户体验的完美平衡点叫做“甜蜜点”,这个甜蜜点是个最佳状态,多加就多了,少加就不够。但是一个问题出来了,当到达这个“甜蜜点” 时,是不是所有人的任务都完成不需要在改进了?答案当然是否定的,要知道在IT行业,瞬息万变,竞争是以天数来记的,而这个“甜蜜点”要跟着行业趋势的变 化而变化,在不同的阶段“甜蜜点”是不同的,也就是不同的阶段重点不同。

这个变量“甜蜜点”究竟该如何把握?这是最难的一点,它需要大量的实践和明确产品所处的阶段,在配以准确的行业分析才可以.

发表在 管理技巧 | 标签为 , | 留下评论

切分、水平切分、垂直切分以及读写分离

切分(Sharding)并不是特定数据库产品所附属的功能,而是在具体技术细节之上的抽象处理。是水平扩展(Scale Out)的解决方案,主要目的是解决单节点数据库服务器的能力限制,以及整个应用其架构的可扩展性(Scalability)。

切分主要有两种方式:水平切分(Horizental Sharding)和垂直切分(Vertical Sharding)。水平切分所指的是通过一系列的切分规则将数据水平分布到不同的DB或table中,在通过相应的DB路由 或者table路由规则找到需要查询的具体的DB或者table以进行Query操作,比如根据用户ID将用户表切分到多台数据库上。垂直切分指的是按业务、产品切分,将不同类型的数据且分到不同的服务器上,通过数据库代理疏通程序与多个数据库的通讯、降低应用的复杂度。

读写分离简单的说是把对数据库读和写的操作分开对应不同的数据库服务器,这样能有效地减轻数据库压力,也能减轻io压力。主数据库提供写操作,从数据库提供读操作,这样既避免了主数据库服务器(Master)的过载,也有效地利用了从数据库服务器(Slave)的资源。

发表在 数据库原理 | 标签为 | 留下评论

数据库事务正确执行的四个基本要素的缩写

ACID,指数据库事务正确执行的四个基本要素的缩写。包含:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。一个支持事务(Transaction)的数据库系统,必需要具有这四种特性,否则在事务过程(Transaction processing)当中无法保证数据的正确性,交易过程极可能达不到交易方的要求。

  原子性   整个事务中的所有操作,要么全部完成,要么全部不完成,不可能停滞在中间某个环节。事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样。
一致性   在事务开始之前和事务结束以后,数据库的完整性约束没有被破坏。   
隔离性   两个事务的执行是互不干扰的,一个事务不可能看到其他事务运行时,中间某一时刻的数据。  
持久性   在事务完成以后,该事务所对数据库所作的更改便持久的保存在数据库之中,并不会被回滚。   由于一项操作通常会包含许多子操作,而这些子操作可能会因为硬件的损坏或其他因素产生问题,要正确实现ACID并不容易。ACID建议数据库将所有需要更新 以及修改的资料一次操作完毕,但实际上并不可行。   
目前主要有两种方式实现ACID:第一种是Write ahead logging,也就是日志式的方式。第二种是Shadow paging。
发表在 tips, 数据库原理 | 标签为 , , , , , | 留下评论

Is Our Future SoLoMo?

It’s been said that the problem with predicting the future is that in the short term we underestimate and in the long term we overestimate. So last summer when I saw this slide estimating that smartphone sales would outstrip PC’s by 2012 I was shocked.

What’s even more shocking was the fact that it just came true, and in the fourth quarter of 2010!!

What’s behind this unanticipated growth is not just generous subsidies from carriers. It’s also the growing availability of useful, engaging and relevant tools on mobile devices which have made them a more compelling and desired purchase. These tools are opening up a world of new communication, activity and behavior. Sixty percent of the time now spent on smart phones is spent on new activities such as maps, gaming and social networking. Apple’s App store is growing at an astronomical rate when compared to the growth of the iTunes music store. iPad growth is eclipsing the sales rate of the iPod and iPhone and topping it off President Obama sounded like a Verizon ad yesterday when he announced a goal of bringing wireless access to 98% of all Americans.

All of these changes herald a rapid shift in communications and culture which John Doerr, of the high tech venture capital firm Kleiner Perkins, calls SoLoMo. SOcial for its role in maintaining always-on connections with friends, events and activities, LOcal for its ability to gain relevance from location and real time activity and MObile for its ubiquitous, available and anywhere presence. For marketers the rapid rise of SoLoMo culture will require a swift change in our perspective and approach to messaging and communications. Opportunities will grow for those who will be able to connect to consumers with relevant, useful and engaging applications, solutions and messages. As migration grows from desktop web to mobile web, mobile sites will need to become increasingly sophisticated and take into account the combination of relevancy, location and timing. The deployment of NFC chips in mobile devices will create an opportunity to interact with consumers at the point and the time of purchase. Reward driven marketing and social gaming will begin to take a larger role as engagement becomes a critical factor in maintaining relationships between brands and mobile consumers.

While this is happening very quickly it’s important to remember that, as Google named their mobile marketing conference, “It’s Not Too Late to be Early”. The unprecedented growth of mobile is coming as a surprise to most and the best thing we can do is to start learning, testing and adopting mobile based practices. If we can’t predict we can at least prepare because if the good news is that we’ll have 50% smartphone penetration in the US within months, the bad news is that we’ll probably never get jetpacks.

What’s your prediction?

发表在 LBS | 标签为 | 留下评论

SOLOMO代表互联网发展趋势

3月28日,2011中国(深圳)IT领袖峰会上,新浪CEO曹国伟表示,互联网很多竞争就是用户的竞争、入口的竞争,新浪微博未来发展方向,就是逐步打造成一个新的互联网入口。今后,新浪微博将考虑如何将社交平台与搜索、电子商务相结合,建立用户关系,满足各个市场的需求。

曹国伟再次强调,SOLOMO(社交加本地化加移动)代表着未来互联网趋势,而新浪微博符合互联网SOLOMO发展趋势。除了具备社交成分以及很强的本地化应用成分,新浪微博跟移动互联网也有很好的结合,从而使得每一个用户都能利用零散时间。新浪微博的下一步工作,就是把微博做大变成一个平台,从而围绕这个平台打造移动互联网时代生态体系。

随着手机终端的不断丰富普及与云计算的大面积应用,特别是以社交网络为特色的社会化媒介平台成为社会各界热议的话题,引发了国内的互联网公司转型之风。曹国伟认为,现在互联网转型机会中,能决定竞争实力的是在用户时间与用户接入口上的竞争。而移动互联网与社交网络的结合,成为未来移动互联网时代重要趋势之一。

移动互联网与社交网络的结合,从根本上改变了以前的上网方式、交流方式、沟通方式,也改变了企业与消费者的交流沟通方式。随着这个移动互联网的发展,PC互联网时代浏览加搜索的使用方式,逐渐会更多被应用加平台或者应用加云计算所替代。未来很长一段时间内,这两种方式将并存,但是移动互联网使用方式会发展更快,普及率会慢慢高起来。

移动社会化媒体时代,以用户自主创造内容成为了传播内容的主体。曹国伟谈到,新浪微博将聚集各种专业与精英媒体,通过社交平台与新浪网进行广泛有效的跨平台传播。在他看来,新浪微博未来的发展方向,将取决于用户需求,其发展是一个不断完善的过程。在中国市场,社交媒体的发展路径将不同于facebook和twitter,而新浪微博的交互性、黏性会更强。

在社会化平台的功能方面,曹国伟提到,搜索、电子商务与社会化网络平台实现更好结合,如何在规模化平台上建立用户关系、向各个应用去延伸,向各类市场需求去延伸,去满足用户的需求是目前考虑的重点。

实际上,新浪微博从推出服务以来,一直以平台化为发展目标,希望基于开放与分享,与开发者、媒体、企业、广告、电子商务等更多的合作伙伴,共同围绕新浪微博打造一个平台和生态链。曹国伟表示,在开放和分享方面有很多困难需要去克服,公司会比较谨慎,将按照中国现有环境特点逐步开放、分享,这是一个漫长的过程。

发表在 LBS | 标签为 , , , | 留下评论

加盟分众两周的一些感触

在总监20分钟的演说下,我决定回到了离开了近3年的分众传媒(严格说我并不是分众的人,只是几年前在老东家一并卖到了分众,成为分众旗下的一员)。其实以前也有想过有一天能加入分众集团。不过一直以为会是以市场或者销售的身份加入,没想到这次还是以技术的身份加入的。

以前并不知道,分众有自己的研发团队,而且还是一支比较强大的团队,足以见得他们的低调。他们默默的在开发着ERP,人事,财务等系统,涉及到整个公司的业务和管理环节。很少碰到他们抛头露面,但是这里有很多做了近10年的软件工程师,足以让我汗颜。我一直在努力的寻求另一条路子,所以从好耶到晨路,到有趣岛,再回分众。

回分众,上级并没有要求我怎么做,所以我拥有了比较自由的发挥空间,从技术团队组建,到项目架构,我都可以自己决定。我很清晰我们的大目标,分解到我身上的那部分。然后我自己怎么做好它。

在去年,我的上司和我分别占据公司一个非常重要的位置,网站事业部的经理和副经理,但实际上,我并没有充分的了解自己的职责和肩负的项目导向责任,导致最终公司失去了信心,我们也被迫解散了团队。如果单纯只是个技术主官,也许做好产品实现和技术管理就已经是成功的了。但是作为一个部门的领导,如果做好项目的规划,决策,把控,是很可怕的。所以说实话我有些心虚,因为我并没有深层次的考虑过我的项目,项目的未来,以及最核心的项目盈利点。

在这边,有人告诉我内容你不用担心,销售你也不用担心,运营也不需要担心,产品规划,设计都有独立的部门负责。非常扁平化,所以每个人可以专注于自己的那块业务,并把它做好,同时再给彼此一些建议。

更重要的,是高层在资本层面的自信,极大的鼓舞了士气,会觉得每一天都很充实。所以我在招聘我的团队成员时,我突然发现做技术的人,也可以变得语言流畅起来,我可以一口气把整个项目描绘一遍。而不用仅靠技术的优势来吸引人,项目的本生就激起了应聘者的兴趣,所以进展也蛮顺利,发出了7-8份offer了,差不多完成了我的预订目标了。

所以,当你碰到一个能让自己想明白的一个平台,请抓住这个机会吧。你会发现另外一个自己。。。

发表在 人生感悟, 管理技巧 | 标签为 , , , , | 留下评论

回归广告行业。。。

三年前,我离开了广告行业,加入了游戏公司做游戏社区平台研发,后于去年底离职加入动漫行业创业,不过反思目前的情况,对于动漫行业了解不多,很难有新的突破,正值老东家需要人做互联网方面的尝试,所以回归广告行业,希望用所学完成东家的帝国梦。

发表在 其他 | 标签为 , | 留下评论

ufw ubuntu防火墙简单设置

1.安装
sudo apt-get install ufw

2.启用
sudo ufw enable
sudo ufw default deny

运行以上两条命令后,开启了防火墙,并在系统启动时自动开启。关闭所有外部对本机的访问,但本机访问外部正常。

3.开启/禁用
sudo ufw allow|deny [service]

打开或关闭某个端口,例如:
sudo ufw allow smtp 允许所有的外部IP访问本机的25/tcp (smtp)端口
sudo ufw allow 22/tcp 允许所有的外部IP访问本机的22/tcp (ssh)端口
sudo ufw allow 53 允许外部访问53端口(tcp/udp)
sudo ufw allow from 192.168.1.100 允许此IP访问所有的本机端口
sudo ufw allow proto udp 192.168.0.1 port 53 to 192.168.0.2 port 53
sudo ufw deny smtp 禁止外部访问smtp服务
sudo ufw delete allow smtp 删除上面建立的某条规则

4.查看防火墙状态
sudo ufw status

一般用户,只需如下设置:
sudo apt-get install ufw
sudo ufw enable
sudo ufw default deny

以上三条命令已经足够安全了,如果你需要开放某些服务,再使用sudo ufw allow开启。

补充:

开启/关闭防火墙 (默认设置是’disable’)
sudo ufw enable|disable

转换日志状态
sudo ufw logging on|off

设置默认策略 (比如 “mostly open” vs “mostly closed”)
sudo ufw default allow|deny

许 可或者屏蔽某些入埠的包 (可以在“status”中查看到服务列表[见后文])。可以用“协议:端口”的方式指定一个存在于/etc/services中的服务名称,也可以通过包的meta-data。‘allow’ 参数将把条目加入 /etc/ufw/maps ,而 ‘deny’ 则相反。基本语法如下:
sudo ufw allow|deny [service]

显示防火墙和端口的侦听状态,参见 /var/lib/ufw/maps。括号中的数字将不会被显示出来。
sudo ufw status

UFW 使用范例:

允许 53 端口

sudo ufw allow 53

禁用 53 端口

sudo ufw delete allow 53

允许 80 端口

sudo ufw allow 80/tcp

禁用 80 端口

sudo ufw delete allow 80/tcp

允许 smtp 端口

sudo ufw allow smtp

删除 smtp 端口的许可

sudo ufw delete allow smtp

允许某特定 IP

sudo ufw allow from 192.168.254.254

删除上面的规则

sudo ufw delete allow from 192.168.254.254

发表在 ubuntu | 标签为 , | 留下评论