Archive for the ‘三言两拍’ Category

微软校园先锋

7月13日,微软联合赛尔网络发布针对高校市场的正版软件计划“校园先锋” ,该计划是微软全球Student Hero的一部分。微软面向中国高校市场退出199元的Window7 专业版(市场价:1399) 以及149元的Office2010(市场价3999)。是希望通过低价来推动微软软件的正版化进程。微软选择高校市场进行低价推广显然是有深远意义。高校市场一直都被知名品牌看重,原因在于大学生群体是一群脱离了家庭和服务对自己的消费行为逐渐自我负责的群体,而这个时候也正式他们消费习惯的培养起和形成期。微软通过该计划旨在影响未来的白领市场和家庭市场并最终达到全市场的正版普及。

在如今的无价水平上,200元只能够买10近大蒜,和一个能使用好几年的正版Window7相比,显然能够彰显后者的价值。在过去的一段时间内,微软在普及正版最有效的方法不是黑屏而是利用法律对大客户做斗争。然而在电脑普及率逐步提高的中国,通过法律手段根本无法影响到Windows的主要用户群体:家庭用户。而微软能够低下身段,以10斤大蒜的价格来推广Window7,可以说是一个惊喜的改变。至少他们开始懂得在这里法律并不是万能的:)。登录微软的校园先锋网站(http://ms.shop.edu.cn)可以看到仅仅用了半天的时间,已经有5000名的学生用户预定了Windows7,因此从这一时间点上来看,微软的校园先锋计划至少是得到的市场的初步认可。

PHP with MongoDB

MongoDB的特点

MongoDB是一个可扩展的,高性能,开源,模式自由,面向文档的数据库.使用C++编写,MongoDB特点:

  • 面向文档存储(类JSON数据模式简单而强大)
  • 动态查询
  • 全索引支持,扩展到内部对象和内嵌数组
  • 查询记录分析
  • 快速,就地更新
  • 高效存储二进制大对象 (比如照片和视频)
  • 复制和故障切换支持
  • MapReduce 支持复杂聚合
  • 商业支持,培训和咨询

MongoDB 在键值存储(快速并有高扩展性) 和传统 RDBMS 系统(提供结构化模式和强大的查询)之间建立了一个桥梁.

MongoDB 安装

MongoDB 的官网提供了MAC OS 的二进制下载,解压即可使用,非常方便。用户无需在自己安装,由于32位的MongoDB 仅仅能够支持2G的存储,因此运营环境还是要使用64位的

1: 安装MonoDB

curl -O http://fastdl.mongodb.org/osx/mongodb-osx-i386-1.5.4.tgz

sudo tar mongodb-osx-i386-1.5.4.tgz

sudo mv mongodb-osx-i386-1.5.4 mongodb

2:安装PHP扩展

sudo pecl install mongo //使用PECL 安装扩展

sudo vi /usr/local/php/etc/php.ini // 修改php.ini文件

增加extension = “mongo.so”

启动MongoDB

创建数据文件存放的目录

mkdir -cp /data/db

/usr/local/mongodb/bin/mongod –dbpath=/data/db

PHP MongoDB 使用实例

<?php

$mongo = new Mongo(’localhost:27017′);

$db = $mongo->mydb;  // 选择一个数据库,如果没有则MongoDB会自动创建

$collection = $db->pblog; // 选择一个集合,如果没有则MongoDB会自动创建

$doc = array(”name” => “MongoDB”,

“type”   => “database”,

“count” => 1,

“info” => (object)array( “x” => 203,

“y” => 102),

“versions”  => array(”0.9.7″, “0.9.8″, “0.9.9″)

);

//$collection->insert( $doc );

for($i=0; $i < 100; $i++ ){

$collection->insert( array( “$i” => $i));

}

echo $collection->count();

$query = array( “71″ => 71);

$cursor = $collection->find($query);

while($cursor->hasNext()){

var_dump($cursor->getNext());

}

/*

$cursor = $collection->find();

foreach ($cursor as $id => $value){

echo “$id: “;

var_dump( $value );

}

*/

$obj = $collection->findOne();

var_dump($obj);

Gearman for mac os

Gearman(http://gearman.org/index.php),提供一个服务器端和多种语言的客户端接口,包括 C/Perl/Python/Ruby 等,在 client library 本身就支持一定程度的高可靠度。

Gearman系统用来把工作委派给其他机器,分布式的调用更适合做某项工作的机器,并发的做某项工作,在多个调用间做负载均衡,或用来在调用其它语言的函数。

对程序员来说,可以借助Gearman 建立分布式的任务处理集群。比如PHP Sharding

Gearman的安装也很简单

1: 安装libevent

wget http://www.monkey.org/~provos/libevent-1.4.12-stable.tar.gz

tar zxvf libevent-1.4.12-stable.tar.gz

cd libevent-1.4.12-stable

./configure –prefix=/usr

make
sudo make install
2: 安装Gearman JobServer
wget http://launchpadlibrarian.net/43182593/gearmand-0.13.tar.gz
tar zxvf gearmand-0.13.tar.gz
cd gearmand-0.13
./configure
make
sudo make install
3: 安装Gearman PHP 扩展
wget http://pecl.php.net/get/gearman-0.7.0.tgz
cd gearman-0.7.0
/usr/local/php/bin/phpize
./configure –with-php-config=/usr/local/php/bin/php-config –with-gearman
make
sudo make install
4:修改php.ini
sudo vi /usr/local/php/etc/php.ini
添加:extension = gearman.so
5:启动Gearmand
/usr/local/sbin/gearmand -d
注意: 是gearmand而不是gearman

又拍网架构中的分库设计

周兆兆同学分享的又拍网的架构写的非常详细和具体,非常值得推荐,文中采用的架构和我们当初做IM系统的时候采用的架构体系基本完全一致,不同的是我们使用的是JAVA,需要进行水平分库的数据为用户的个人个人资料以及好友关系等数据。强烈建议大家仔细研究
_____________________________________________________________________________________________________________

关于作者:
周兆兆(Zola,不是你熟知的那个),又拍网架构师。6年IT从业经验,不太专注于某项技术,对很多技术都感兴趣。
来源:http://www.infoq.com/cn/articles/yupoo-partition-database

招聘PHP开发工程师,请推荐或帮忙转发

PHPer:
岗位要求
计算机或数学相关专业毕业
精通:LAMP(Linux+Apache+Mysql+PHP)、JavaScript,尤其是MYSQL数据库设计;
熟悉Nginx ,jQuery ,Xcache ,Memcached ,ImageMagick,Varnish ,Lucene 。
了解:网站标准理念、CSS+DIV布局;
具备良好的编程风格,思维活跃;
了解JAVA技术,
有 XHTML+CSS+Javascript 前端能力者更佳
工作内容
电子商务、社区门户网站等的设计和开发维护工作
互联网前端技术的研究工作
如果您有意愿并希望得到挑战 请讲个人简历发送到我的邮箱abuer.cn#gmail.com(请将#替换为@)
工作地点:北京海淀清华科技园赛尔大厦

注:该岗位为中级职位,高级PHPER请手下留情,学生勿扰!