4 or 5?
4 or 5?
一不小心,二十多了
![]()
9月某周五的夜晚,我和一群年轻的同事们混迹住处旁的酒吧。喧闹的时候,我在埋头看惠普前CEO卡莉的自传。关于她的更多介绍,可以看吴军的这篇文章。吴军在最后说
在菲奥莉娜执掌惠普的接下来的五年间,菲奥莉娜(此处应为惠普,笔者注)从一个科技公司变成了一个电器公司。它原本是和 GE 、IBM 以及 Sun 这样的科技公司竞争,现在它蜕变为和 Dell 、索尼、佳能和爱普生一类的低利润普通电器公司。在菲奥莉娜的任期中,她个人频频在各种媒体中亮相,(当然,她解释为媒体找她。)但是惠普这个硅谷最有历 史的公司正渐渐被人遗忘。它在个人机领域输给了 Dell ,在数码相机上输给了佳能、尼康和索尼,在打印机上输给了爱普生和佳能,可以说是一败涂地。
这可以算是我对惠普最早的了解,昨天接到话题广告的邀请,要就“惠普利用新媒体开拓中小企业市场 ”写一篇文章。介绍中说:惠普联合因特尔,邀请了多名专业人士来讲解在信息化过程中,中小企业最关心的一些问题。另外,惠普还为中小企业管理者设立了一个交流平台:”惠普全程助力成长商学院”,中小企业管理者可以在这里交流企业信息化过程中遇到的问题以及各种心得和经验。
这几年中小企业这个叫法被用得越来越多,阿里巴巴立志于服务中小企业,如今的惠普也打算开拓中小企业市场。这无非也是为了那条长长的尾巴。近几年惠普在个人电脑方面成长得颇为明显,看来,它已经把中小企业看做下一个增长点。在这一块,惠普的最大对手,是戴尔。
写blog这么多年了,其实对PR、Alexa之类的,一直都关注但不看重。不过最近alexa排名上升很快,还是有些虚荣。其实每天的独立ip不过几百,但按照alexa的比例来算,就看起来有个好几千。
此外,今天还发现pr跑到了4。从06年脑袋里有pr的概念开始,我blog的rank一直是3,如今终于熬成4了。
感觉挺好,长假以前,算是喜事。
继续书写windows服务器上的痛苦,最近在尝试部署rails程序到服务器,网上有一篇robbin推荐过的多种rails程序部署方式的评测,但对于windows平台,只有apache+mongrel一个推荐。
然后按照上面的方法写好配置文件,无非是用了个proxy,但启动apache总是失败。到事件查看器里发现错误的提示是“Apache2.2 服务因 1 (0×1) 服务性错误而停止”,和没说一样,啥都看不出来。昨天搞到很晚都没弄明白,今晚继续搞。
突然灵光一闪,意识到日志指向的目录不存在,跑回去新建了目录,一切就好了。网上很难找到有用的信息,写篇blog记下来。
前些日子还在培训中的时候,曾写过一篇企业级web开发,java的遮羞布。这篇文章后面有不少反对的声音,大家都表示“支持程立”,可我并没反对程立的观点,只是觉得,java也只剩下所谓企业级的花头了。特别是有人说java是“因为严谨,所以麻烦”,我实在不敢苟同。
后来就看到了javaeye上面的一个帖子,标题是“我怎么就觉得rails适合做大型应用”。我花了一个多小时从头到尾看完了所有回帖,大家一开始争论比较激烈,但后来发现那个力挺Java的Itian原来是个跳梁小丑,讨论到最后意见也都一致了。对rails在大型应用上的认可盖过了怀疑。这个帖子中的很多论点很精彩,当然伪命题也不少,很推荐大家看看:http://www.javaeye.com/topic/232415
BTW,在alexa流量排名前10的网站中,可没有一家是用java搭台子的。
今天有点空,想到实战一下在windows上部署个简单的rails程序。最后其他都搞好了,可是在运行数据迁移脚本的时候,提示mysql不支持innodb,没法子建表。都是因为当初图省事用appserv一下就装好了AMP,几个组件都几乎是最小安装。后来用apache配置FastCGI的PHP时就费了些周折。
最后找到了Mysql的配置文件my.ini(在mysql的安装目录下),搜索innodb,到了一行写着skip_innodb的地方。把这行用#号注释一下,重启mysql,就可以用innodb了。
做完还是觉得rails的嘴太刁,其实大部分时候,用MyISAM就够了吧。
Fenng为了丰富公司的图书资源,从卓越亚马逊买了几十本书回来。但几十本书都放到一个订单的结果,是推迟了好久才能发货。等他的几十本书到货,前几天在blog上推荐的《深入理解计算机系统》也已经买回来了。今天送货的是一个有点年纪的男人,后来从Fenng口中得知,那人送两大箱几十本书,只能赚一块八。因为公司是按照订单数算钱的。
不由得想起那个满头大汗的男人,心里觉得很不忍;Fenng也因为这个摇头,说以后订单还是分开下吧。其实对小订单来说没什么,但是如果要订很多商品,完全可以把大订单拆成小订单。这样的话,也不用等待所有货物都到齐才发货。更重要的是,卓越亚马逊不需要掏运费,所以不论是下100个订单还是下1个订单,都不会有更多的成本。
当然,这样对卓越亚马逊似乎不太厚道,更像是劫富济贫。
晚上将近9点,忙完了一天工作,想写篇blog。突然发现怎么也打不开了,服务器上的其他网站也没有幸免,个个都刷不开。ping的时候需要80ms(以前都只有不到10ms的)。
今年买的这台服务器,托管在扬州机房,经常会有短时间无法访问,总体的可用性,不知道有没有dh高。过了半个小时左右恢复正常了,子宁用铁通的网络从服务器下载东西也可以保持120k的速度。
只是没了写blog的心情。明年这台服务器产权就归我了,该不该去找个好点儿的地方托管呢?
昨天在blog上推荐了一本卓越上10块钱的《深入理解计算机系统》,可能大家都非常喜欢,一度把卓越买到缺货。不过现在卓越已经又有货了,当时没买到的朋友可以再去看看。今天还在加班,顺便推荐我发现的99书城上一个超值商品。
是后街男孩的精选集,2CD+1DVD,想想东西都不会少。更重要的是,只要8元钱!相信后街男孩的歌迷并不少,买几套这个拿来当礼物也许都很不错呢。如果没有在99书城买过东西的朋友,也可以顺便体验一下。
PS:以后这些超值的东西,我会发到edianping.net,欢迎大家订阅。
卓越亚马逊成立于2000年,那时叫卓越网,参股的有联想、金山,后来又有老虎基金的注资。在2004年的时候被amazon.com买了,作价7500万美金。不知道这个价格联想金山会不会后悔,现在随便一个融资的网站,估值都要比这个高。去年京东商城融资的1000万美金,也不过占了10%的股份。而在我印象中,07年的京东,做得也没有04年的卓越那么出色。
在卓越卖身以后的4年,浮浮沉沉经历了许多变化,一些侧面的东西可以看看我这篇文章。而在技术方面,从我的角度看,卓越网必然也经历了极大的冲击。我整理了一些卓越亚马逊网站上的变化,和大家分享一下。
网站架构上,原来的卓越网用的是asp。在几年前asp非常流行,php、jsp这些只能算是旁门左道,在学校里开的动态网页设计的课,讲的就是asp和iis。不过到现在已经几乎没人再选asp了,相信卓越网的老大亚马逊,也不会再让卓越继续用asp。在如今卓越亚马逊的一个招聘页面中,看到了这样的内容:
Software Developer Engineer / 软件开发工程师
Responsibility:
Joyo.com is seeking experienced Software Development Engineer (SDE I) to design and implement highly available, highly scalable e-commerce applications using Java/Oracle technologies…Summary of Qualifications:
· Enthusiasm for solving interesting problems.
· Extensive experience programming in Java with strong OO design skills.
· Experience in relational database design and application development. Exposure in system …
注意两个标红加粗的地方,从第一个joyo.com可以看到这个启示是写在卓越网改名为卓越亚马逊以前的,那时卓越还叫joyo.com。而第二个地方是应聘的工程师要求有java的经验。没有找到需要asp开发经验的启示,不管卓越亚马逊是不是要换到java平台(我更相信卓越亚马逊会用亚马逊总部提供的解决方案)这至少可以告诉我们,卓越亚马逊要踢开asp了。
在这里我还有个过于大胆猜想,卓越亚马逊有可能已经不是asp的平台,保留一个asp的后缀可能是出于某些特殊原因——比如SEO,这对卓越来说非常之重要,正好最近有淘宝屏蔽百度爬虫的事,回头可以另写一篇文章讨论。
同时,卓越网如今更加注重数据的挖掘。在卓越网的网站上每一个链接到商品的地址中,都有一个隐含的跟踪参数,借助这个参数,卓越网可以跟踪到每个订单中的任何一个商品,是用户从什么样的渠道形成购买的,比如是通过首页导航,还是通过搜索。
对数据的挖掘和学习,让数据说话,是如今上了规模的电子商务网站的必备。卓越亚马逊的这个细节,要比当当网至少提前了一年半推出,而且当当如今的跟踪还做得很不好。
在URI的使用和维护方面,相信卓越亚马逊没有少费脑筋。关于URI地址空间的实现和维护,我曾经推荐过一本《Web2.0高级编程》,其中谈得非常详细。卓越网最初的地址是这种样式:
http://www.amazon.cn/detail/product.asp?prodid=bkbk752436
其中有asp的字样,这显然和URI地址空间的实现原则相悖,后来就有了这种:
http://www.amazon.cn/mn/detailApp?prodid=bkbk752436
最大的变化就是,从这个地址里面,你看不到网站用的是什么平台:这个地址只表示一个资源,不依赖于特定平台。不过可能卓越对这个并不满意,我又看到它的第三种格式:
http://www.amazon.cn/dp/zjys480694
这下,连get参数都省略了。毫无疑问,最后一种方式是最有利于SEO的。卓越亚马逊在这上面的取舍,也能给我们一些提示。
而在图片的使用策略上,最近也发生了一些变化。之前卓越亚马逊的图片地址是这样:
http://images.amazon.cn/m/md_zjbk002557.jpg
用了一个独立的图片服务器,仅此而已。那么现在,图片的地址就变成:
http://ec4.images-amazon.com/images/I/41zKAnNh%2BSL._AA200_.jpg
ping了一下ec4.images-amazon.com,发现卓越亚马逊使用了CDN。
blogkid@ubuntu:~$ ping ec4.images-amazon.com
PING cc00014.h.tel.chinacache.net (58.211.83.239) 56(84) bytes of data.
此外,egou论坛的会员还发现卓越亚马逊的发货单和国际接轨了,这个我没尝试过,不太清楚。
总而言之,卓越自从被收购以后,就进行着大量的改进。作为一个b2c网站,表面来看,技术不是什么关键的东西。但实际上技术的成败往往是决定性的因素。ebay和amazon在商界有了如此成就,他们在技术上的积累也极其深厚。而从卓越亚马逊的发展来看,它越来越像amazon全球,越来越告别土气,有点儿像找了个大款老外做男友的章子怡,气质和味道一下都提升了不少。

图片来自新浪网