<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Woshimaijia Blog</title>
	<atom:link href="http://blog.woshimaijia.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.woshimaijia.com</link>
	<description>Woshimaijia.com official blog,for share technology and share open source thinking!</description>
	<lastBuildDate>Sat, 19 May 2012 04:21:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>IT战车的驱动力-码农到工程师</title>
		<link>http://blog.woshimaijia.com/2012/05/18/it%e6%88%98%e8%bd%a6%e7%9a%84%e9%a9%b1%e5%8a%a8%e5%8a%9b-%e7%a0%81%e5%86%9c%e5%88%b0%e5%b7%a5%e7%a8%8b%e5%b8%88/</link>
		<comments>http://blog.woshimaijia.com/2012/05/18/it%e6%88%98%e8%bd%a6%e7%9a%84%e9%a9%b1%e5%8a%a8%e5%8a%9b-%e7%a0%81%e5%86%9c%e5%88%b0%e5%b7%a5%e7%a8%8b%e5%b8%88/#comments</comments>
		<pubDate>Fri, 18 May 2012 07:35:44 +0000</pubDate>
		<dc:creator>xinqiyang</dc:creator>
				<category><![CDATA[Memo]]></category>
		<category><![CDATA[如何学习]]></category>
		<category><![CDATA[学习能力]]></category>
		<category><![CDATA[工程师]]></category>
		<category><![CDATA[方向]]></category>
		<category><![CDATA[码农]]></category>

		<guid isPermaLink="false">http://blog.woshimaijia.com/?p=101</guid>
		<description><![CDATA[引子 码农，这个多么熟悉的词，不管是持证的还是未持证的，每天都背负着压力在不停的工作，有的happy,有的郁闷，有的伤感，当然我也是其中的一员，作为一个资深码农，吐槽是一个基本功，本月称今天有大消息发布就吐下槽。回味下最近的大环境的变化以及码农们的生活。 大环境 大环境，在这个IT江湖里面，最近各大地主都在纷纷调整，好多哥们看了自己的ERP后在感叹，才来没多久，咋个就换了这么多的部门。调整，有的是正向的，当然有的是负面的。无可厚非，今天腾讯发布了调整信息，并公布了接下来的大战略方向，详细是分成了6个大的方向，大方向上可谓覆盖了当前IT界主要的发展方向。 2012笔者认为是一个衔接的阶段，Web2.0发展的这几年中一波的公司该上市的都上市了，错过的就得等第二波的上市热潮。随着市场的发展，整体而言，现在中国的市场还是属于一种封闭的状态，虽然偶尔也是有翻墙者，但是往往翻墙者的人数太少，还有就是翻墙者也是国内公司产品的深度的用户。所以不会有什么大的影响，只是在线时间被稀释了而已。 产品方面按照分成的6大方面，覆盖了当前的所有的领域了，之前写过的 腾讯帝国 中提到，经过这2年的多的发展，帝国更加壮大了。 从全局的版图上来看，腾讯无可厚非的是一个大帝国，其他的各个小地主都守护着自己的一分三亩地，来应对这个大地主的调整。总体来说才发布的财报上来看，腾讯的趋势还是属于整体想向的，还是盈利状态，虽然发展速度还是有所减缓，不过这个也是可以理解的，任何一个油田都有枯竭的一天，打造一口井的时代已经过去的，现在需要做的就是得打造一个地主的森林，然后形成生态圈，这样才使得自己的平台不至于处于到处的漏油状态而岌岌可危。 大环境总结，打造生态圈，是当前各大地主的主要的任务，至于小部分想成为地主的人，还在积极的为了争取用户而奋斗着，移动互联网方面的创业更是如此。 只有产品符合了用户的需求，才能够真正的活下来，而这些创业者面对这些地主，该如何应对？接下来来探讨！ &#160; 码农 ！== 工程师 人是基本的生产力，也是最主要的，在各大地主家，都有很多的码农在工作者，输入有些码农的level已经很高的了，达到了码圣的境界了，有的人选择了留下，有的人选择了离开。看这些人在今年的选择，可以看出一些趋势来，那怎么来看这些人呢？从微博和博客，这里仅仅限于笔者自己所接触到的。 很多人在很多的技术领域把这些做到了极致，做为工程师的我们该如何正视自己的选择呢？ 现在的工程师的代表人物，笔者所熟知的。 agentzh, 章亦春老师，目前在积极的推进openresty,一个开源的nginxful的nginx, openresty很给力，官方网站 openresty.org 可以去看看深入了解下 laruence  惠新宸，目前从百度出来就职于新浪微博，PHP小组成员，YAF的作者 sunli   孙立，目前在去哪儿网，之前在凤凰网 fenng  冯大辉，目前在丁香园 这4者是笔者所熟知的，列举这4者来距离，经过时间的洗礼，从一个普通的码农，走到现在在某个领域有很大的影响力。他们是如何达到这样的境界的？ 以下是笔者的一些归纳总结，大家有什么意见欢迎拍砖。 一，语言方面的造诣 码农和工程师的区别就是，工程师，多门语言都学过而且能运用起来，一到多门语言运用的熟练，基本的特点就是手写代码或者是VIM下写代码，已经不单单的依靠工具的了，这个不单单的是熟练，可以说这些是达到一定积累之后的自然结果。 码农呢，只是用自己的一门或者多门的语言，还在写着代码可是相对是在完成任务似的劳动，不想在技术上更加深入，只是作为一个谋生的手段。 这个相当于武林高手的内力修为，当内力修为到一定阶段之后，学习很多的秘籍就很流畅了。 这里主要提下，高手一般都用perl,c,c++等之类的底层高效语言，码农基本上就用java,php,.net等尽管这些语言也有做的很出色的，但是这里说的是大多数，不指那些达到顶端的人。 其实说来，这些底层的知识，大学技术课上都学到，数据结构和算法，还有语言课程，可是有多少的同学能够真正的掌握，更能够熟练的应用？所以这里告诫现在在校的学生们，其实教授教的那些课程是很有用的，如果想在这一行，基础必须要打好。笔者自己就深有感触，以上列举的这些人，都是有理论基础，会学习的人。 &#160; 二，方向方面 后端开发，虽然历史悠久，可是现在依然很热，以上的4位都是之前关注在后端领域，强大的后端才能够支撑强大的业务。现在笔者主要使用的有 openresty,yaf 都是后端的应用软件 后端又可以分很多的方面 底层，系统级别的，还有各种底层的类库，协议，比如HTTP/TCP/SOCKET等这些常用的协议的深入了解。 交互，mysql,redis和 php ,java,c之间的交互方式，怎么样用更少的资源就能实现功能。 逻辑层，写能跑的代码，写资源占用更少的代码，积极的和前端沟通。 这里的逻辑层包括了我们所说的通用的后端层，包括android,ios,还有php等其他语言写的逻辑。 前端，现在不单单是WEB和WAP网站了，还包括手机（android和ios) 的界面开发还是不一样的啊。 往往现在的很多学生或者工作了一段时间的人，都还在这些领域里面选择，自己到底是做什么？码农还在徘徊，而工程师已经在自己的领域里面有所建树了。以上提出的前3位都开发过开源产品并发布了，而且一直有用户在使用他们的产品用于生产环境。 而码农，现在还在使用这些人的产品，在为地主开发东西，而这些东西基本上仅仅限于地主家内部使用，当然也有一些开明的地主会开放一些。 所以笔者认为，码农想成为码圣级别的有影响力的工程师，必须要有自己的作品，而且有人用自己的作品，更则是有大量的人用自己的作品。 [...]]]></description>
		<wfw:commentRss>http://blog.woshimaijia.com/2012/05/18/it%e6%88%98%e8%bd%a6%e7%9a%84%e9%a9%b1%e5%8a%a8%e5%8a%9b-%e7%a0%81%e5%86%9c%e5%88%b0%e5%b7%a5%e7%a8%8b%e5%b8%88/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Buddy简单高效智能的后端架构[一]</title>
		<link>http://blog.woshimaijia.com/2012/05/17/buddy%e7%ae%80%e5%8d%95%e9%ab%98%e6%95%88%e6%99%ba%e8%83%bd%e7%9a%84%e5%90%8e%e7%ab%af%e6%9e%b6%e6%9e%84%e4%b8%80/</link>
		<comments>http://blog.woshimaijia.com/2012/05/17/buddy%e7%ae%80%e5%8d%95%e9%ab%98%e6%95%88%e6%99%ba%e8%83%bd%e7%9a%84%e5%90%8e%e7%ab%af%e6%9e%b6%e6%9e%84%e4%b8%80/#comments</comments>
		<pubDate>Thu, 17 May 2012 05:04:08 +0000</pubDate>
		<dc:creator>xinqiyang</dc:creator>
				<category><![CDATA[Desktop]]></category>
		<category><![CDATA[Project Tech Share]]></category>

		<guid isPermaLink="false">http://blog.woshimaijia.com/?p=97</guid>
		<description><![CDATA[作者：杨鑫奇 引子 最近换了工作，时间也充裕了一些，利用休假时间和自己的空余时间对所思所学，进行归纳总结。对于自己3年来一直努力的Buddy，进行了深入的思考，其实一直以来，具体来说从04年开始就一直习惯的用PHP，到现在，这么多年的时间，很多时候自己把自己限制在了PHP所能实现的范围内，不过这个也是由时代决定的，04到现在从Web1.0到2.0，从做站开始，就一直围绕“站”这个概念来做东西，所以PHP还是足够用了，之后到了百度，还是做了PHP，作为一个开发工程师，一直在完成各个逻辑功能，功能做多了，就想自己能不能做一个框架，来让自己做事情做的更快一些呢？为此，将积累的代码进行整理，命名为buddy,它的完善随着 woshimaijia 的开源项目一并完善，一直到2011年都在做堆逻辑的事情，就想有所改变，是否应该在深入底层？后来换了部门之后发现，其实牛人真的很多，看了做PHP做到极致的 鸟哥（惠新宸，PHP开发组）及组内的其他的RD,QA同学们的能力之后，意识到自己的水平，真的是&#8230;&#8230;小吐槽下，其实意识到自己的差距，那么应该做些什么来提高自己？看着各个技术达人基本都是在一些方面做到极致之后，其他的方面也跟上了，达到了高手的境界，在此特别提下2个人，@agentzh,@laruence，因为现在使用的技术都是他们开发的，一个是@agentzh的openresty项目，一个是@laruence的yaf框架。之所以是牛人，因为他们在往牛人的路上，都留下了产出，这些东西，造福了其他的人或者说其他的人可以从这里学到很多。不管是项目上的应用，还是看到他们源码之后自己的提升。说了这么多总结一句，就是有一些人有不同于他人的想法而又把这些想法实现了，这些才是值得大家记住和尊重的。 &#160; 简单高效智能的架构是什么样的？ 先上张图，通过图中来来详细的解说为什么它简单、高效、智能 &#160; 技术选型 Nginx(OpenResty) + PHP + Mysql + Redis + Memcachd + Sphinx   + 外部的API 图中的部分，从上到下来看 第一层，Presentaion 表现层，和用户交互的部分，也可以说是请求的来源，系统的入口 第二层，API 接口层，提供对表现层的数据交互的支持，包含了主要的3部分，业务部分，公共部分和监控报警部分，右边的主要是用户的私有数据 和 公共的数据 以及一些静态的资源 第三层，LOGIC 逻辑实现层 + Sharding，可以支持海量的数据存储，逻辑层涉及到各种的模块，外部的API接口等等，以及后端的异步模块等，模块方面主要有MatchMaker(分类器，建立对象和对象之间的关系），Searchd搜索模块（提供搜索支持），Recommender推荐器（对外提供推荐服务）还有一些统计模块和用户找回模块等&#8230; 第四层，Store 存储层，主存储使用了 Mysql,Redis &#160; 如何简单？ 简单，我理解的简单，从技术选型来讲，就是用自己熟悉的，经过生产环境检验的可靠的技术产品. 比如： Redis,从最近的Twitter的Timeline以及Instagram中介绍，还有之前微博也使用,充分的让大家认识到Redis的强大。 Nginx,牛逼了很多年了，但是通过OpenResty项目，让人深刻的感受到，Nginx，它真的不只是Web服务器软件。 从开源的角度来讲，主要是开源产品的技术认可度以及作者(个人/团队）是否在积极的维护。从当前用的OpenResty和Yaf来看，作者都是很积极的，更不用说Nginx和Redis的作者的了。 Yaf：最近每个一周基本有一个版本，鸟哥很给力，我昨晚报告了一个Bug，今天就修复了，发布了2.1.14版本了 OpenResty:4.29号刚刚发布的新版本，章亦春老师也很给力。 Nginx:刚刚不久前发布了1.2.0版本 Redis:看作者的Blog最近2.6RC在一直进行中，估计也不久的了 Mysql:5.5系列的版本也在不断的开发中 由于这些作者的活跃和开发，只要项目中遇到问题或者是发现Bug都可以及时的联系到他们并能得到作者的反馈，这个是亲自体验过，备受感动. 大部分底层的事情，都让牛人做了，那我们能做什么呢？关注与自己的业务逻辑，是否就是简单了？也许，这个时候，你会说，这个怎么简单了？还是需要写很多的代码，还是要考虑Sharding的问题，还是要考虑到各个模块之间的数据互通，还是需要考虑到数据结构的设计等等，这个时候Buddy就可以登场了，Buddy就是将这些技术产品及我们需要的模块都能够完全的融合进来，并将项目中的共性的部分，通过接口抽象出来，实现大部分的功能，这样您只要开发自己项目中的特殊的部分，大大的减少开发时间，那么，用Buddy，在靠谱的软件集合下面做自己的项目，省事也省心。接下来的博文中，会对架构图中每个模块部分进行详细的阐述并附上具体的代码。这里只是笔者的一种实现方式，聪明的你也许做的比笔者更好，那就开始行动吧！ &#160; 如何高效？ 高效应该如何定义？由于很多的项目都存在sharding，所以单纯的从性能来说，一个请求发送和接收需要的时间还有数据量的不同，10ms? 200ms [...]]]></description>
		<wfw:commentRss>http://blog.woshimaijia.com/2012/05/17/buddy%e7%ae%80%e5%8d%95%e9%ab%98%e6%95%88%e6%99%ba%e8%83%bd%e7%9a%84%e5%90%8e%e7%ab%af%e6%9e%b6%e6%9e%84%e4%b8%80/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[智能架构系列]Buddy框架图片文件云存储模块实现</title>
		<link>http://blog.woshimaijia.com/2011/12/05/%e6%99%ba%e8%83%bd%e6%9e%b6%e6%9e%84%e7%b3%bb%e5%88%97buddy%e6%a1%86%e6%9e%b6%e5%9b%be%e7%89%87%e6%96%87%e4%bb%b6%e4%ba%91%e5%ad%98%e5%82%a8%e6%a8%a1%e5%9d%97%e5%ae%9e%e7%8e%b0/</link>
		<comments>http://blog.woshimaijia.com/2011/12/05/%e6%99%ba%e8%83%bd%e6%9e%b6%e6%9e%84%e7%b3%bb%e5%88%97buddy%e6%a1%86%e6%9e%b6%e5%9b%be%e7%89%87%e6%96%87%e4%bb%b6%e4%ba%91%e5%ad%98%e5%82%a8%e6%a8%a1%e5%9d%97%e5%ae%9e%e7%8e%b0/#comments</comments>
		<pubDate>Sun, 04 Dec 2011 16:36:09 +0000</pubDate>
		<dc:creator>xinqiyang</dc:creator>
				<category><![CDATA[Project Tech Share]]></category>
		<category><![CDATA[PHP图片存储]]></category>
		<category><![CDATA[又拍云存储]]></category>
		<category><![CDATA[图片云存储]]></category>
		<category><![CDATA[廉价高速图片存储]]></category>

		<guid isPermaLink="false">http://blog.woshimaijia.com/?p=82</guid>
		<description><![CDATA[[智能架构系列]Buddy框架图片文件云存储模块实现 引子 最近很久没有写文章了，主要是忙于公司的项目，也给自己一个深度挖掘的方向，另外生活也出现了很大的变动，现在终于憋不住了。订阅技术博文是技术者必须做的一件事情，每天打开google reader总是会有所发现有所惊喜继而是感慨。本次主要来介绍下图片的云存储方面的技术实现，不管是对于云技术实践，还是降低相关的运维成本，都是很有效果的，不信就往下看吧！ 关键字：图片云存储 又拍云存储 PHP图片存储 廉价高速图片存储 正文 上周看了磊哥的文章 又拍云实战 http://www.blogkid.net/archives/2782.html 后很有收获就觉得去试试又拍云存储的服务http://www.upyun.com/，就去注册然后申请试用了。 本次upyun.com的认证方式很让我意外，竟然是客服打电话过来确认，这点服务感觉还是挺好的，从这里感觉还是蛮重视用户的。特别要说的是，今天是星期天我又在这里宣传upyun.com的服务，就和同事说了下，结果他去注册了，竟然在半小时后就接到了客服人员的电话了，感觉这个确认还是很及时的，体验很好，这点感觉还是很不错的。 试用就开始吧，为什么要试用又拍云存储服务呢？这点磊哥的文章中就已经说的很清楚了，这里我做归纳补充下： 1,图片服务器的托管及运维费用挺高的,而且峰值带宽觉得了大部分成本，且运维的软硬成本增大 2，单机达不到CDN功效，需要CDN支持的话，花费就更大了 3，图片的处理及图片的缓存，需要配置nginx的静态缓存图片，需要做系统设计扩展图片类的保存图片及缩略图功能 4，图片的备份，对于图片的备份是个问题需要用rsync同步到备份机器，添加了运维成本和开发成本 基于以上原因，自己开发及部署图片服务的代价还是很大的，所以这个也是极力推荐使用又拍云存储www.upyun.com的原因了，至于大家说的upyun.com是否稳定，磊哥提到的猛买网用了2个月还是没问题的，我也相信@gofeeling和又拍的技术实力的。 如何申请及开通就请详细参看磊哥的博文吧，本篇主要更细致化的讲解技术实现。 首先，设计表结构 id,filename,desc,createtime,status,remoteurl,url,model,user_id 本次主要用到的字段有 filename 及 model 构造图片的访问地址 $staticUrl / $model / $filename 例如： http://img001.img.woshimaijia.com/user/testuser.jpg 考虑到图片表可能进行分表，这里的id使用了 17位的bigint 时间递增 其次，完善图片类 首先图片的处理流程分为如下 1.用户从表单中上传的图片 2.已经上传的图片 现在这2部分的图片都需要迁移到又拍云存储中，而且都需要做本地进行备份。 所以处理的逻辑如下 用户上传 &#8211;&#62; 图片保存到WebServer &#8211;&#62; 调用ImageUpload类将图片上传到upyun.com &#8211;&#62; 更新数据库表 图片读取 &#8211;&#62; 获取图片id集合 &#8211;&#62; 调用getImage方法拼接URL &#8211;&#62; [...]]]></description>
		<wfw:commentRss>http://blog.woshimaijia.com/2011/12/05/%e6%99%ba%e8%83%bd%e6%9e%b6%e6%9e%84%e7%b3%bb%e5%88%97buddy%e6%a1%86%e6%9e%b6%e5%9b%be%e7%89%87%e6%96%87%e4%bb%b6%e4%ba%91%e5%ad%98%e5%82%a8%e6%a8%a1%e5%9d%97%e5%ae%9e%e7%8e%b0/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>发布buddy框架1.0版本-智能的最具商业价值的PHP框架</title>
		<link>http://blog.woshimaijia.com/2011/10/16/%e5%8f%91%e5%b8%83buddy%e6%a1%86%e6%9e%b61-0%e7%89%88%e6%9c%ac/</link>
		<comments>http://blog.woshimaijia.com/2011/10/16/%e5%8f%91%e5%b8%83buddy%e6%a1%86%e6%9e%b61-0%e7%89%88%e6%9c%ac/#comments</comments>
		<pubDate>Sun, 16 Oct 2011 15:36:26 +0000</pubDate>
		<dc:creator>xinqiyang</dc:creator>
				<category><![CDATA[Desktop]]></category>
		<category><![CDATA[buddy framework]]></category>
		<category><![CDATA[buddy php framework]]></category>
		<category><![CDATA[buddy框架]]></category>
		<category><![CDATA[伙伴框架]]></category>

		<guid isPermaLink="false">http://blog.woshimaijia.com/?p=76</guid>
		<description><![CDATA[buddy框架，秉承国内优秀框架THINKPHP的优点并增加了很多的商业特性和集成了全版本的商业项目模块，提供给创业者一个最好的选择 &#160; 组建图: &#160;]]></description>
		<wfw:commentRss>http://blog.woshimaijia.com/2011/10/16/%e5%8f%91%e5%b8%83buddy%e6%a1%86%e6%9e%b61-0%e7%89%88%e6%9c%ac/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>发布buddy框架beta版本</title>
		<link>http://blog.woshimaijia.com/2011/10/16/%e5%8f%91%e5%b8%83buddy%e6%a1%86%e6%9e%b6beta%e7%89%88%e6%9c%ac/</link>
		<comments>http://blog.woshimaijia.com/2011/10/16/%e5%8f%91%e5%b8%83buddy%e6%a1%86%e6%9e%b6beta%e7%89%88%e6%9c%ac/#comments</comments>
		<pubDate>Sun, 16 Oct 2011 15:27:59 +0000</pubDate>
		<dc:creator>xinqiyang</dc:creator>
				<category><![CDATA[Woshimaijia Project]]></category>

		<guid isPermaLink="false">http://blog.woshimaijia.com/?p=72</guid>
		<description><![CDATA[发布buddy框架beta版本 &#160; buddy经过近2年的开发，终于发布了]]></description>
		<wfw:commentRss>http://blog.woshimaijia.com/2011/10/16/%e5%8f%91%e5%b8%83buddy%e6%a1%86%e6%9e%b6beta%e7%89%88%e6%9c%ac/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>互联网产品的本质思考及架构实现探讨</title>
		<link>http://blog.woshimaijia.com/2011/07/29/%e4%ba%92%e8%81%94%e7%bd%91%e4%ba%a7%e5%93%81%e7%9a%84%e6%9c%ac%e8%b4%a8%e6%80%9d%e8%80%83%e5%8f%8a%e6%9e%b6%e6%9e%84%e5%ae%9e%e7%8e%b0%e6%8e%a2%e8%ae%a8/</link>
		<comments>http://blog.woshimaijia.com/2011/07/29/%e4%ba%92%e8%81%94%e7%bd%91%e4%ba%a7%e5%93%81%e7%9a%84%e6%9c%ac%e8%b4%a8%e6%80%9d%e8%80%83%e5%8f%8a%e6%9e%b6%e6%9e%84%e5%ae%9e%e7%8e%b0%e6%8e%a2%e8%ae%a8/#comments</comments>
		<pubDate>Thu, 28 Jul 2011 18:07:59 +0000</pubDate>
		<dc:creator>xinqiyang</dc:creator>
				<category><![CDATA[Memo]]></category>
		<category><![CDATA[Project Tech Share]]></category>
		<category><![CDATA[产品和架构设计]]></category>
		<category><![CDATA[产品的本质]]></category>
		<category><![CDATA[产品设计]]></category>

		<guid isPermaLink="false">http://blog.woshimaijia.com/?p=68</guid>
		<description><![CDATA[作者：杨鑫奇        公司：百度 &#160; 互联网产品的本质是什么？ 作为系统的设计者，什么样的产品什么样的产品线才能够给使用者带来真正的价值呢？ 最近两年来一直在思考这个问题，现在终于有一些沉淀，写下来，和大家一起探讨！ 当某个时候通过一个方式页面被我们打开了，当然这里指的页面是广义上的页面，就是说我们所看到的，看到的最多的莫过于电脑上的页面，手机上的页面的页面还有其他的比如ipad等的页面，当我们看到这些的时候会想到什么我们会怎么做？我们来分析下这个过程！ &#160; 首先提取出这个过程中的元素 人 页面的载体（电脑/手机/ipad&#8230;.) 页面，屏幕上展现出来的页面 &#160; 其次提取页面的关联关系 页面 包含了以下图示中的内容  主要有： 载体（站点、产品、品牌、话题、群组等等） 页面中主要表现的元素，比如导航站主要是站点， 电子商务网站是商品，微博站点的话题等等 关联状态 关联状态主要是人和载体感受，比如感受  人喜欢视频，比如人喜欢Iphone4,人购买了iphone4 TAG 载体和载体之间的关联，iphone4 关联关键字iphone,apple,苹果,手机   这样就可以实现载体和载体之间的关联 沟通 人和人之间的沟通，比如人去淘宝里面购物，需要打开旺旺和卖家沟通，或者是有客服页面，人打开客服QQ进行聊天 时间 时间维度是最重要的维度之一，随着时间的流逝，系统中会有很多的动作，需要把这些用户的动作记录下来 区域 地区维度也是最重要的维度之一，根据用户的地域区别来对数据及载体进行分类，针对地域性的规则定制 行动 用户看到载体及介绍的内容之后的行动，鼠标的滚动（拉下来看更多的信息/点击其他的按钮比如顶，赞等），键盘的输入（发布评论），跳转到其他的载体 扩展 扩展，留点扩展，让大家开动脑筋来更好的思考 &#160; 我认为如果系统中能够实现以上说讲到的7个关联中的若干就能够提醒出价值，对于用户的价值。 因为在这个过程中用户能够得到想要获取的信息，能够表达出他/她想表达的思想，能够引导到用户想去的地方。 这个时候站点上也可以让用户提留，当用户在站点停留的时间越长就越体现出站点的价值。 这点是对于用户的价值，但是站在站点设计方的角度，怎么样能够在这个用户的停留的过程中，通过引导用户的行动来带来商业价值。 以上从各个关联及维度来分析，现在就来聊聊如何实现的： 架构设计图，晚上没有带工作PC回家，就用家里的电脑画了个图，大家明白就好别笑话我： 从以上图中可以看出，服务器部署主要有： WebServer WEB服务器，通过调用API接口来实现数据的访问， 客户端POST/GET服务到WEB服务器，调用Validate::validate() 方法进行验证，验证通过后请求到API的接口返回结果，将结果返回客户端，现实页面调用RES资源服务器和IMG图片服务器 来实现页面 WapServer WAP服务器，通过调用API接口来实现数据的访问， [...]]]></description>
		<wfw:commentRss>http://blog.woshimaijia.com/2011/07/29/%e4%ba%92%e8%81%94%e7%bd%91%e4%ba%a7%e5%93%81%e7%9a%84%e6%9c%ac%e8%b4%a8%e6%80%9d%e8%80%83%e5%8f%8a%e6%9e%b6%e6%9e%84%e5%ae%9e%e7%8e%b0%e6%8e%a2%e8%ae%a8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>架构分享&#8211;微博架构的回顾</title>
		<link>http://blog.woshimaijia.com/2011/06/11/%e6%9e%b6%e6%9e%84%e5%88%86%e4%ba%ab-%e5%be%ae%e5%8d%9a%e6%9e%b6%e6%9e%84%e7%9a%84%e5%9b%9e%e9%a1%be/</link>
		<comments>http://blog.woshimaijia.com/2011/06/11/%e6%9e%b6%e6%9e%84%e5%88%86%e4%ba%ab-%e5%be%ae%e5%8d%9a%e6%9e%b6%e6%9e%84%e7%9a%84%e5%9b%9e%e9%a1%be/#comments</comments>
		<pubDate>Sat, 11 Jun 2011 04:58:07 +0000</pubDate>
		<dc:creator>xinqiyang</dc:creator>
				<category><![CDATA[Project Tech Share]]></category>
		<category><![CDATA[微博]]></category>
		<category><![CDATA[微博架构]]></category>

		<guid isPermaLink="false">http://blog.woshimaijia.com/?p=63</guid>
		<description><![CDATA[最近这段时间工作上的变动有点大,五月份也闲了下来一直在思考自己接下来的方向,并对这一年来的学习进行总结. 对于架构上的深入是这一年多来最主要的沉淀,从小公司到大公司,从小流量的站点的架构设计到大流量乃至超大流量的架构设计,记录下来,分享出来。 在分享自己的那点料之前,先来分享下大神Tim Yang的关于微博的架构设计： 这里主要从 存储和接口角度来讲 对于大流量系统的架构设计，对于写入方面是特别需要注意的，基本上现在遇到的系统都是对于主数据库的写入，然后对于从数据库实现流量的分发。 对于存储，记得公司老大说过，对于BD的项目的架构如果从设计上可以达到20PB的存储规模不出什么大的问题，就说明这个架构设计是合格的。 对于存储，新浪微博使用了redis的部分功能,主要用在用户信息方面的使用,现在只有单机设计,但是对于现在的单机完全可以提供大量的内存比如32G以上，完全可以达到存储数据的要求。 对于MYSQL这里所涉及到的就是设计规范和分库分表，最大的感触是大家为了便利就直接用自增的ID来进行，对于唯一ID的设计也是我一直注意的，因为唯一的设计是涉及到全局的。 将将自己最近总结的PHP和微博架构方面： 1.进行快速开发的过程中，订好规范，按照规范执行是非常的重要的，涉及到的沟通会比较少，其实和其他人联调是很费时间的。 2.对于性能跟踪方面使用使用xhprof来跟踪PHP的执行过程及性能问题，可以初略的估计出来。 3.对于核心代码的复用程度及核心的代码量的把握，核心要灵活可扩展而且保持小 4.技术选型比如对于使用memcache扩展和memcached的扩展还是很重要的 5.对于代码的目录结构和命名还是挺重要的,php的autoload不要搜索太多的目录会比较好 6.考虑下工具类的复用，一直在造轮子每次都重写一遍，这个不是很郁闷的事情，怎么样让这些类不要耦合的太紧？设计很重要 7.对于有些服务是PHP做起来不合适的,比如spam模块的高危词过滤还是用C/C++模块来处理比较好。 8.微博技术的应用Inbox/Outbox/Timeline/Following/Follows/Feed/MQS 9.推荐算法和消息推送的处理，各种高并发的处理 &#160;]]></description>
		<wfw:commentRss>http://blog.woshimaijia.com/2011/06/11/%e6%9e%b6%e6%9e%84%e5%88%86%e4%ba%ab-%e5%be%ae%e5%8d%9a%e6%9e%b6%e6%9e%84%e7%9a%84%e5%9b%9e%e9%a1%be/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>结网读书笔记-从产品经理的角度看产品</title>
		<link>http://blog.woshimaijia.com/2011/05/13/%e7%bb%93%e7%bd%91%e8%af%bb%e4%b9%a6%e7%ac%94%e8%ae%b0-%e4%bb%8e%e4%ba%a7%e5%93%81%e7%bb%8f%e7%90%86%e7%9a%84%e8%a7%92%e5%ba%a6%e7%9c%8b%e4%ba%a7%e5%93%81/</link>
		<comments>http://blog.woshimaijia.com/2011/05/13/%e7%bb%93%e7%bd%91%e8%af%bb%e4%b9%a6%e7%ac%94%e8%ae%b0-%e4%bb%8e%e4%ba%a7%e5%93%81%e7%bb%8f%e7%90%86%e7%9a%84%e8%a7%92%e5%ba%a6%e7%9c%8b%e4%ba%a7%e5%93%81/#comments</comments>
		<pubDate>Fri, 13 May 2011 09:25:58 +0000</pubDate>
		<dc:creator>xinqiyang</dc:creator>
				<category><![CDATA[Memo]]></category>
		<category><![CDATA[产品经理]]></category>
		<category><![CDATA[结网]]></category>
		<category><![CDATA[读书笔记]]></category>
		<category><![CDATA[项目]]></category>

		<guid isPermaLink="false">http://blog.woshimaijia.com/?p=60</guid>
		<description><![CDATA[一直从事技术开发的工作,在工作中,经常的和产品经理接触,在这半年里面,经历了一个产品从出生到发展到最后终结的全过程. 体会甚多,从这次暂时的修整中,利用闲余时间好好的看了下产品经理方面的书《结网》，这本出自腾讯的人的书写的还是很全面,写了很多产品经理方面的感触及工作中遇到的问题及处理方法是一本入门笔记好的书,遂做下读书笔记,结合这半年来的产品来谈产品的概念到设计到开发到运营的过程。 对于一个技术人员,如果可以站在产品的角度来做产品,也是件很欢快的事情,最起码不会感觉到是为了任务而任务,而是可以真正的投入其中。 以下从几个方面来看到这个问题 从团队角度来看 团队是一个产品的引擎，没有它产品就没法跑起来，团队需要有自己的目标，而这半年来，我们的团队一直没有目标，探索性的尝试是不可能有什么好结果的，探索是肯定正确的但是不能冒进，冒着很大的风险，总有一天会迷失的。 当一个团队没有共识，这里是产品和开发人员和运营人员直接，如果没有共识的话，那么就会各自为政了，为了达到自己的目的，有小组织化的操作，直接导致产品的失败，举例，运营人员直接对开发人员而忽略了产品人员，直接对产品进行修改，导致了职责不明，而很多运营新增的功能只是为了短期的利益考虑而没有考虑到长期的结果及对产品带来的影响。 节奏感，产品及开发及运营都要有各自的节奏感，配合紧密一步一步的向前走，谁的冒进都可能导致严重的后果，本次开发过程中发现，运营人员忽略产品而直接对开发进行功能设计的情况非常的严重。而开发这边也没有把握节奏和QA的关系处的非常的不好，也是目前存在的主要问题。 人才 对于团队而言，这半年来，新进了不少同事，现在处的来的同事还是比较多的，但是真的配合的很好的还是比较少，半年来的磨合可以锻炼一支很有战斗力的团队。 从公司角度 对于在大的盈利公司中做研发，不需要考虑到很多现金流的问题，因为公司的薪资和福利都很规范，不会担心这些问题。但是对产品的总体把握上，公司应该从大的战略层来看，这个产品在公司战略中的位置，并进行有效的资源整合来推进产品，但是这半年来，公司对于产品的关注度很不够，对于产品细节，在VP级别没有很好的重视，连大BOSS都没有认真的看过这款产品，导致了对于团队领导及公司领导中对产品的发展有很多的争议，这个也是主要存在的问题。 从产品经理的角度 产品经理每天的工作，为产品进行管理及营销并负责开发新的功能，这块本次产品的产品经理表现的很不尽人意。 从时间跨度上来看，本次团队的产品经理没有从战略的角度来布局产品，这个主要的原因是由于从公司到总监级别都是认为是个探索性的产品而没有对产品进行长期的战略布局，不清楚产品的发展轨迹，这个是最大的失败的地方。对于阶段性的工作，本次产品团队忽略产品文档而主要以原型为主，这样给开发和测试人员带来了很大的工作量，对逻辑考虑的不到位及对产品的把握不够导致了阶段性的活动没有开展，产品经理没有和运营进行直接的沟通领导运营，而是沦为了运营人员的工具来按照运营人员的思想来进行产品的路线及产品设计，没有自己的主观建议。对于商业计划完全忽视，认为我们的产品根本没有盈利的可能性而完全的靠公司输血进行维持。对于成本及用户教育及竞争对手方面的重视很不够，采取的做法是直接忽视。产品经理都没有对KPI进行有效的理解并有效的执行。 对于下图列到的法则更是没有去很好的运用和执行，对于产品经理而言，本次团队的产品经理收到了来自上层的巨大压力也没有发挥出自己的足够的优势，显得比较可惜，对于最后的失败只能说，失败后还不意识到自己错了的话，是没有可能成功的，失败是注定了的. 上张图书笔记：结网读书笔记 &#160;]]></description>
		<wfw:commentRss>http://blog.woshimaijia.com/2011/05/13/%e7%bb%93%e7%bd%91%e8%af%bb%e4%b9%a6%e7%ac%94%e8%ae%b0-%e4%bb%8e%e4%ba%a7%e5%93%81%e7%bb%8f%e7%90%86%e7%9a%84%e8%a7%92%e5%ba%a6%e7%9c%8b%e4%ba%a7%e5%93%81/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>开发环境推荐：Ubuntu 10.10 64bit 安装完成秀下PP</title>
		<link>http://blog.woshimaijia.com/2011/03/22/%e5%bc%80%e5%8f%91%e7%8e%af%e5%a2%83%e6%8e%a8%e8%8d%90%ef%bc%9aubuntu-10-10-64bit-%e5%ae%89%e8%a3%85%e5%ae%8c%e6%88%90%e7%a7%80%e4%b8%8bpp/</link>
		<comments>http://blog.woshimaijia.com/2011/03/22/%e5%bc%80%e5%8f%91%e7%8e%af%e5%a2%83%e6%8e%a8%e8%8d%90%ef%bc%9aubuntu-10-10-64bit-%e5%ae%89%e8%a3%85%e5%ae%8c%e6%88%90%e7%a7%80%e4%b8%8bpp/#comments</comments>
		<pubDate>Mon, 21 Mar 2011 16:07:08 +0000</pubDate>
		<dc:creator>xinqiyang</dc:creator>
				<category><![CDATA[Desktop]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[ubuntu images]]></category>
		<category><![CDATA[ubuntu php dev]]></category>

		<guid isPermaLink="false">http://blog.woshimaijia.com/?p=53</guid>
		<description><![CDATA[Ubuntu 10.10 64bit 安装完成秀下PP 这段时间一直在用自己的电脑,发现和公司的本还是差距很大的,硬件性能的差距直接影响到用户体验了,遂就将电脑换过来了！ 由于WIN7不给力,就下了一个很艰难的决定把WIN7也毙了,现在就只有一个ubuntu了,还是喜欢唯一&#8230;. 安装过程比较顺利,下了ISO后使用的ubuntu自带的disk creator刻录到U盘,安装很快就完成了！ 接下来就是更新系统了,么317M的大小更新了整整一个上午,家里到网速让人很崩溃,更新OK后又折腾开发环境,终于到今天顺手了！放几张PP出来吧！ 表达一下对Ubuntu的爱意！ 简洁的桌面&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;.. 安装过程中遇到的编译错误,悲剧的PHP 5.2.17  没办法就升级到5.3.6了 升级成功后的php5.3.6 安装完成后配置了gtalk到sina微薄那唠叨唠叨,可惜发现丢失消息的现象还是比较严重的,发了3条就保存了最后一条 贴出安装的软件列表&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;. 1.install system (64bit) set root pass (sudo passwd root)  update vim 2.update system  (choose the theme) 3.install chrome and firefox 4 rc 4.install ubuntu tweak 5.install visualbox 4 6.install xmind 7.install Awn the start setting 8.downloading lnmp0.6-full and [...]]]></description>
		<wfw:commentRss>http://blog.woshimaijia.com/2011/03/22/%e5%bc%80%e5%8f%91%e7%8e%af%e5%a2%83%e6%8e%a8%e8%8d%90%ef%bc%9aubuntu-10-10-64bit-%e5%ae%89%e8%a3%85%e5%ae%8c%e6%88%90%e7%a7%80%e4%b8%8bpp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP你知道的</title>
		<link>http://blog.woshimaijia.com/2011/03/15/php%e4%bd%a0%e7%9f%a5%e9%81%93%e7%9a%84/</link>
		<comments>http://blog.woshimaijia.com/2011/03/15/php%e4%bd%a0%e7%9f%a5%e9%81%93%e7%9a%84/#comments</comments>
		<pubDate>Tue, 15 Mar 2011 07:47:59 +0000</pubDate>
		<dc:creator>xinqiyang</dc:creator>
				<category><![CDATA[Project Tech Share]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[PHP原理]]></category>
		<category><![CDATA[PHP底层机制]]></category>
		<category><![CDATA[php经验]]></category>

		<guid isPermaLink="false">http://blog.woshimaijia.com/?p=50</guid>
		<description><![CDATA[病学者厌卑近而务高远，卒无成焉。 最近一直在用这句话来提醒自己，不端正学习态度是很难学好的，不管学习什么语言，没有去认真的付出有效的时间，深入理解吸收，是很难达到可以灵活应用的目的的。 PHP你知道的，其实你真正知道么？用PHP可以说在差的程序员也能把功能做出来，当我们成天的写自定义函数完成一个一个功能的时候，是否有想过，PHP实际是怎么执行的？ 你知道的，其实你不知道，我知道的，你说你知道，其实你不知道，也说你知道。 你真的知道？还是来看看图吧，这个图我会一直更新的，当不断的学习和深入的时候，也动动笔，将自己不知道的记录下来，积累起来当遇到不会知道的地方，可以请教或者自己搜索。 切记一点，把知识存储在脑袋里，比存储在其他地方都好，做到能够及时有效的使用。 PHP你知道的 &#8212; by yangxinqi 本图内容主要来自于公司某大牛的文章，我只是看了做了笔记，对于分享的精神，在此表示感谢。 学到知识，并能将知识传播给他人，让更多的人受益，这个就是大牛们做的事情，努力提高自我，兴许有一天我也能成为大牛 ^_^！ 最后把脑图文件也分享出来，大家也可以自己更新了，其实用脑图软件来管理知识是非常不错的。由于使用Ubuntu选择的是Xmind,不过Xmind也是跨平台的，还是很好用的，推荐XMind PHP你知道的 脑图下载 最后在分享一张PHP的内核架构图，其实有的时候发现看图，能够更快的吸收内容]]></description>
		<wfw:commentRss>http://blog.woshimaijia.com/2011/03/15/php%e4%bd%a0%e7%9f%a5%e9%81%93%e7%9a%84/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

