2013-03-05 作者按:这是个胡思乱想的产品,写于2013-02-06,我尝试者把我系统领域的知识和互联网上的实践结合起来,看看能擦出什么火花。一直keep private,是想有朝一日做成自己的下一个创业项目。但最近的精力放在这上的很少,目前可预见的一年内自己也没有能耐去handle这样一个项目(主要是涉及的链条太广)。所以干脆将其open,或许可以激发能干成这事的人。
上一篇文章简单介绍了SDN及其应用场景,臆测的成分大些。本文谈谈SDN的基石:openflow。
我们知道,SDN的核心是将control plane(下文统称controller)和data plane(下文统称oSwitch,openflow switch)分离,由一个中央集权的controller(好比一个军团的将领)指挥成百上千的oSwitch(好比千千万万的士兵),共同完成网络中数据的传输。而openflow,as a protocol,是这套体系正常运作的基石。
本文难度稍大,可能不适合没有网络设备基础知识的读者阅读。我会在下节中稍微讲一些基础概念,如果无法理解,则不建议读下去。
SDN(Software Defined Network)是个有意思的概念。ONF(Open Network Foundation)这样定义SDN:
In the SDN architecture, the control and data planes are decoupled, network intelligence and state are logically centralized, and the underlying network infrastructure is abstracted from the applications.
用普通话说就是软件独立于硬件,让硬件标准化,软件平台化,信息中心化。
我终于厚着脸皮把Teamspark开源了。
Teamspark是我做的一个协作软件。有关Teamspark的功能和使用方式见:http://tchen.me/teamspark/。或者你也可以直接clone或fork Teamspark的github项目。如果你想了解些关于Teamspark和Meteor的八卦,请继续阅读。
上周见了一个半年多没见的朋友。他依旧是一套很朴素的打扮,衣服还是一两年前的,和他几十万年薪的身价一点都不符。这就是典型的engineer,外表和内在一点也不align。
由是我想到了创业,工作及人生。于是就瞎写了这篇文章。
心仪很久的Raspberry Pi model B终于到手。拆开相当原始的包装后,就两页说明书和一块电路板,连条电源线也没有(不过$35就能搞到这样一个好东东,你还能要求什么呢)。
板子上清晰地刻着 MADE IN CHINA
,这年头,电子产品不made in china你都不好意思拿出来卖。
由于本文并非评测文章,有关Raspberry的详细说明,规格等信息请移步 官网,接下来准备好SD卡,咱们来安装系统,让Pi跑起来!
小T是个很苦逼的后端工程师。他拥有通天的本领,从web server到db,从cache server到MQ,从assembly到Javascript,写得了算法,玩得了数据,十八般武艺样样精通。可惜,他生在一个矮矬穷靠边站,高富帅是宇宙中心的时代。看人家的产品一个个长得娇艳欲滴,自己的却蓬头垢面,心里那个郁闷。每每朋友刚一试用,产品的美妙还未体现,就被痛快枪毙。睡梦中,小T不知道把发明GUI,让屏幕充满色彩的那些家伙干掉多少回了,也不知道憧憬过多少次没有色彩,没有图形,满屏幕都是字符的世界 —— 每个用户都像hacker一样通过清脆的键盘敲击,进入一个又一个自己创建的产品。
最新的 hacker news 有个 链接 关于Zen Writing Mode,看完后迫不及待地尝试用它写自己的博客。感觉还是挺不错的。
和使用sublime + markdown插件的方式撰写文章比起来,用Github Zen Writing Mode有以下几个优点:
缺点:
使用octopress已经有一段时间,用这套framework构架博客,写作和部署感觉相当地爽。然而,就我个人的网站而言,我希望它不仅仅是一个博客系统,不光能产生固定格式的post/page,更应该是一个完整的CMS,能根据我个人的需要定制更多的内容展现方式。在使用octopress的这段时间,我尝试为其添加了对演示文档的支持,对更多模版的支持,但感觉还是有点别扭,就好像你让守门员去踢自由人,能干,但干不好。
我希望我的个人网站能够有以下特点:
markdown
来撰写文章于是上周起,断断续续,我开启了对个人网站的升级之旅。
互联网产品永远都处在不断更迭的beta阶段。我们常常会在生产环境外,建立一套与生产环境共享数据的lab环境,以便验证一些即将用于真实世界的想法。问题是,每次提交改动后都需要手工运行部署脚本(前后大概花去30s左右时间),很不高效,每天运行那么几次,对惜时如金的程序员来说是种磨难。于是忙中偷闲的时候,就会想:有没有一种方法在代码提交后能够自动部署,身躯手工的麻烦?
当然是有的。Github的 Post receive hooks 就是用来干这个滴。作者花了小半天时间(对nodejs不熟啊),实现了一个很简单的自动部署方案,趁着记忆还未散去,将其记录在案,和大家分享交流。