06 2013 档案
摘要:前端CSS框架: bootstrap前端mvc框架: angular.js前端javascript类库: jquery服务器平台: node.jsweb服务器框架: express数据库: mongodb数据库驱动: mongoose移动前端框架: jquery moblie开发IDE: sublime text2 and webstorm
阅读全文
摘要:原文位于Redis官网http://redis.io/topics/twitter-cloneRedis是NoSQL数据库中一个知名数据库,在新浪微博中亦有部署,适合固定数据量的热数据的访问。作为入门,这是一篇很好的教材,简单描述了如何使用KV数据库进行数据库的设计。新的项目www.xiayucha.com亦采用Redis + MySQL进行开发,考虑Redis文档比较少,故翻译了此文。其他参考资料:Redis命令参考中文版(Redis Command Reference)Try Redis我会在此文中描述如何使用PHP以及仅使用Redis来设计实现一个简单的Twitter克隆。很多编程社区常
阅读全文
摘要:原文:http://hadoop.apache.org/core/docs/current/hdfs_design.html一、前提和设计目标1、硬件错误是常态,而非异常情况,HDFS可能是有成百上千的server组成,任何一个组件都有可能一直失效,因此错误检测和快速、自动的恢复是HDFS的核心架构目标。2、跑在HDFS上的应用与一般的应用不同,它们主要是以流式读为主,做批量处理;比之关注数据访问的低延迟问题,更关键的在于数据访问的高吞吐量。3、HDFS以支持大数据集合为目标,一个存储在上面的典型文件大小一般都在千兆至T字节,一个单一HDFS实例应该能支撑数以千万计的文件。4、HDFS应用对文
阅读全文
摘要:target, ... } * @comment 位置对应节点,用于lookup中根据位置确定要访问的节点 */ private $_positionToTarget = array(); /** * Internal map of targets to lists of positions that target is hashed to. * @var array { target => [ position, position, ... ], ... } * @comment 节点对应位置,用于删除节点 */ priva...
阅读全文
摘要:consistent hashing 算法早在 1997 年就在论文 Consistent hashing and random trees 中被提出,目前在 cache 系统中应用越来越广泛;1 基本场景比如你有 N 个 cache 服务器(后面简称 cache ),那么如何将一个对象 object 映射到 N 个 cache 上呢,你很可能会采用类似下面的通用方法计算 object 的 hash 值,然后均匀的映射到到 N 个 cache ;hash(object)%N一切都运行正常,再考虑如下的两种情况;1 一个 cache 服务器 m down 掉了(在实际应用中必须要考虑这种情况).
阅读全文
摘要:有些情况下,对分布式的需求就没这么简单,在每个环节上都有分布式的需求,比如Load Balance、DB、Cache和文件等等,并且当分布式节点之间有关联时,还得考虑之间的通讯,另外,节点非常多的时候,得有监控和管理来支撑。这样 看起来,分布式是一个非常庞大的体系,只不过你可以根据具体需求进行适当地裁剪。按照最完备的分布式体系来看,可以由以下模块组成分布式任务处理服务:负责具体的业务逻辑处理分布式节点注册和查询:负责管理所有分布式节点的命名和物理信息的注册与查询,是节点之间联系的桥梁分布式DB:分布式结构化数据存取分布式Cache:分布式缓存数据(非持久化)存取分布式文件:分布式文件存取网络通
阅读全文
摘要:●什么是会话保持,有什么作用会话保持是指在负载均衡器上有一种机制,在作负载均衡的同时,还保证同一用户相关连的访问请求会被分配到同一台服务器上。会话保持有什么作用呢,举例说明一下如果有一个用户访问请求被分配到服务器A,并且在服务器A登录了,并且在很短的时间,这个用户又发出了一个请求,如果没有会话保持功能的话,这个用户的请求很有可能会被分配到服务器B去,这个时候在服务器B上是没有登录的,所以你要重新登录,但是用户并不知道自己的请求被分配到了哪里,用户的感觉就是登录了,怎么又要登录,用户体验很不好。●nginx 的 upstream目前支持 4 种方式的分配 1)、轮询(默认) 每个请求按时间顺序.
阅读全文
摘要:1.MySQL能够在name的索引中查找“Mike”值,然后直接转到数据文件中相应的行,准确地返回该行的 peopleid(999)。在这个过程中,MySQL只需处理一个行就可以返回结果。如果没有“name”列的索引,MySQL要扫描数据文件中的所有 记录,即1000个记录!显然,需要MySQL处理的记录数量越少,则它完成任务的速度就越快。2.当我们执行查询的时候,MySQL只能使用一个索引。如果你有三个单列的索引,MySQL会试图选择一个限制最严格的索引。但是,即使是限制最严格的单列索引,它的限制能力也肯定远远低于firstname、lastname、age这三个列上的多列索引。3.多列索引
阅读全文
摘要:NFS的安装配置:centos 5 :yum install nfs-utils portmapcentos 6 :yum install nfs-utils rpcbindyum install nfs-utils rpcbind服务器端:###(建立挂载的目录,并且挂载目录。)编辑或新建以下文件vi /etc/exports我就写了一个/home/jackluo/Downloads *(rw,sync);配置参数如下CentOS系统中,当主机名或IP地址为空时,则代表共享给任意客户机提供服务。当将同一目录共享给多个客户机,但对每个客户机提供的权限不同时,可以这样:[共享的目录] [主机名1
阅读全文
摘要:使用命令检测网卡 lspci | grep Network 为“0c:00.0 Network controller: Broadcom Corporation BCM4312 802.11b/g LP-PHY (rev 01)一定是这个型号的咯才能继续了哦官网http://www.broadcom.com/support/802.11/linux_sta.php 下载最新的网卡驱动程序 hybrid-portsrc_x86_32-v5_100_82_38.tar.gz 驱动支持一定要下载38的 提供我http://pan.baidu.com/share/link?shareid=100016
阅读全文
摘要:需求如下: 现有一个1G左右的日志文件,大约有500多万行, 用php返回最后几行的内容。1. 直接采用file函数来操作 or file_get_content() 肯定报内存溢出注: 由于 file函数是一次性将所有内容读入内存,而php为了防止一些写的比较糟糕的程序占用太多的内存而导致系统内存不足,使服务器出现宕机,所以默认情况下 限制只能最大使用内存16M,这是通过php.ini里的memory_limit = 16M来进行设置,这个值如果设置-1,则内存使用量不受限制.下面是一段用file来取出这具文件最后一行的代码.ini_set('memory_limit',&#
阅读全文
摘要:有5个人偷了一堆苹果,准备在第二天分赃。晚上,有一人遛出来,把所有菜果分成5份,但是多了一个,顺手把这个扔给树上的猴了,自己先拿1/5藏了。没想到其他四人也都是这么想的,都如第一个人一样分成5份把多的那一个扔给了猴,偷走了1/5。第二天,大家分赃,也是分成5份多一个扔给猴了。最后一人分了一份。问:共有多少苹果?for ($i = 1; ; $i++){if ($i%5 == 1) {//第一个人取五分之一,还剩$t$t = $i - round($i/5) - 1; if($t % 5 == 1){//第二个人取五分之一,还剩$r$r = $t - round($t/5) - 1; if($r
阅读全文
摘要:mongodb与mysql命令对比传统的关系数据库一般由数据库(database)、表(table)、记录(record)三个层次概念组成,MongoDB是由数据库(database)、集合(collection)、文档对象(document)三个层次组成。MongoDB对于关系型数据库里的表,但是集合中没有列、行和关系概念,这体现了模式自由的特点。MySQLMongoDB说明mysqldmongod服务器守护进程mysqlmongo客户端工具mysqldumpmongodump逻辑备份工具mysqlmongorestore逻辑恢复工具db.repairDatabase()修复数据库mysql
阅读全文
摘要:<?php/*** PHP操作MongoDB学习笔记*///*************************//** 连接MongoDB数据库 **////*************************//格式=>(“mongodb://用户名:密码 @地址:端口/默认指定数据库”,参数)$conn = new Mongo();//可以简写为//$conn=new Mongo(); #连接本地主机,默认端口.//$conn=new Mongo(“172.21.15.69″); #连接远程主机//$conn=new Mongo(“xiaocai.loc:10086″); #连接
阅读全文
摘要:0、用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这 么做,它是 一种可以把多个字符串当作参数的“函数”(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。1、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。2、$row[’id’] 的速度是$row[id]的7倍。3、echo 比 print 快,并且使用echo的多重参数(译注:指用逗号而不是句点)代替字符串连接,比如echo $str1,$str2。4、在执行for循环之前确定最大循环数,不
阅读全文
摘要:官方网站http://www.mongodb.org/下载http://www.mongodb.org/downloads安装教程http://docs.mongodb.org/manual/tutorial/install-mongodb-on-linux/这个是针对linux服务器的针对CentOS 的教程http://docs.mongodb.org/manual/tutorial/install-mongodb-on-red-hat-centos-or-fedora-linux/php 扩展地址http://pecl.php.net/package/mongo参考一下这个教程https
阅读全文
摘要:使用第三方源实现yum安装,推荐使用RPMforge,在centos下配置该yum源,配置后即可尝试yum install libmcrypt, yum install libmcrypt-devel, yum install mcrypt-devel 安装该库。本人没有实际操作,不确定具体该包的包名。因为如果使用该库,就没必要手工编译php了,直接yum安装好了。配置RPMforge如下rpm -ivh http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.i686.rpmyum clean allyum
阅读全文
摘要:这儿有一个地址https://github.com/nicolasff/phpredis可以利用 pub/sub 写一个 发布/订阅a multi user high performance web chat. web 聊天php 实现发布者$redis = new Redis();$redis->connect('127.0.0.1',6379);$channel = $argv[1]; // channel$msg = $argv[2]; // msg$redis->publish('channel'.$channel, $msg);订阅者$re
阅读全文
摘要:先去http://www.redis.io/这个网站下载源码tar -xvfredis-2.6.13.tar.gzcdredis-2.6.13可以先扯下 vi READMIN 这个文档,很不错的makemake test报了一个错You need tcl 8.5 or newer in order ...
阅读全文
摘要:官方网站:http://git-scm.com/配置jackluo@jackluo:~$ git config --global user.name "jackluo"jackluo@jackluo:~$ git config --global user.email "net.webjoy@gmail.com"jackluo@jackluo:~$ git config --global color.ui truejackluo@jackluo:~$ git config --global color.ui truejackluo@jackluo:~$ g
阅读全文
摘要:SecureCRT 基本定义SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单的说是Windows下登录UNIX或Linux服务器主机的软件Sencha Animator HTML5 和 CSS3制作动画专用工具,类似于flashCharles 软件Charles是一个HTTP代理服务器,HTTP监视器,反转代理服务器。它允许一个开发者查看所有连接互联网的HTTP通信。很强大的一个抓包工具Gameanalytics玩家行为分析工具http://www.gameanalytics.com/ 第三方的,很强大Redis 强大的内存缓存 ,在游戏中,用于排序,什么的,非常强
阅读全文