自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (2)
  • 收藏
  • 关注

原创 与WSGI中的中间件相关的一段代码的解释

理解下面的几行代码:#python code snippetapp = web.application(url_mapping)app.run(partial(ThreadControl, thread_mapping=thread_mapping))def run(self, *middleware): return wsgi.runwsgi(self.wsgi

2010-04-25 22:12:00 929

原创 六年后的回答:请问N路硬件高速缓存具体意思指什么?

今天在网上看到一个帖子http://www.oldlinux.org/oldlinux/viewthread.php?tid=279,楼主提了一个问题:请问N路硬件高速缓存具体意思指什么?请问N路硬件高速缓存具体意思指什么?对应Ram中的一个地址是如何映射到Cache中的行?  提问于2004-3-17 13:54 ,算一下已经过去六年了,当年提问的楼主现在应该已经成长为技术大

2010-04-18 16:48:00 2338

原创 MongoDB介绍──综述

四.综述MongoDB作为一个开源项目得到了社区和商业上的良好支持,能够保证开发的持续及bug的修正。甚至有人专为GridFS存储的文件开发了一个Nginx模块nginx-gridfs,从而可以通过nginx直接访问MongoDB GridFS中的文件。同时由于推出时间较短,缺少有经验的使用者,有些问题可能无法在社区及mailing list中得到快速的解答。  CAP(Consist

2010-04-17 21:44:00 893

原创 MongoDB介绍──管理者专区(4)

3.4  Sharding(分片)3.4.1  sharding介绍MongoDB包括一个自动分片的的模块(“mongos”),从而可以构建一个大的水平可扩展的数据库集群,可以动态地添加和移走机器。如下是一个数据库集群的示意图:mongod:数据库服务器进程,类似于mysqld。shards:每个shard有一个或多个mongod,通常是一个master,多个slave组成re

2010-04-17 21:39:00 1119 2

原创 MongoDB介绍──管理者专区(3)

3.3  Replication(复制)    Mongo提供了两种方式的复制:简单的master-slave配置及replica pair的概念。    如果安全认证被enable,不管哪种replicate方式,都要在master/slave中创建一个能为各个database认识的用户名/密码。认证步骤如下:    slave先在local.system.users里查找一个名为"

2010-04-17 21:34:00 899

原创 MongoDB介绍──管理者专区(2)

3.2  GridFS3.2.1  GridFS介绍    GridFS是MongoDB中用来存储大文件而定义的一种文件系统。MongoDB默认是用BSON格式来对数据进行存储和网络传输。但由于BSON文档对象在MongoDB中最大为4MB,无法存储大的对象。即使没有大小限制,BSON也无法满足对大数据集的快速范围查询,所以MongoDB引进了GridFS。GridFS表示的对象包含两

2010-04-17 21:30:00 964

原创 MongoDB介绍──管理者专区(1)

三.管理者专区3.1  通用的功能1. 有可用的管理UI;2.启动选项(-v[v[v[v[v]]]],--nssize,--master,...);3. 关闭。直接"Ctrl-C",或者调用db.shutdownServer()(当然需要有权限),或者"kill -2 PID" or "kill -15 PID";4.日志记录。可以通过logRotate命令(db.runCom

2010-04-17 21:24:00 993

原创 MongoDB介绍──开发者专区(5)

2.6  模式设计2.6.1  Mongo式的模式设计使用Mongo有很多种方式,你本能上可能会像使用关系型数据库一样去使用。当然这样也可以工作得很好,但却没能发挥出Mongo的真正威力。Monog是专门设计为富对象模型(rich object model)使用的。例如:如果你建立了一个简单的在线商店并且把产品信息存储在关系型数据库中,那你可能会有两个像这样的表:item

2010-04-17 21:16:00 959

原创 MongoDB介绍──开发者专区(4)

2.4  mongo──交互式shellmongo类似于MySQL中的mysql进程,但功能远比mysql强大,它可以使用JavaScript语法的命令从交互式shell中直接操作数据库。如查看数据库中的内容,使用游标循环查看查询结果,创建索引,更改及删除数据等数据库管理功能。下面是一个在mongo中使用游标的例子:> for(var cur = db.posts.find(); cur.

2010-04-17 21:05:00 968

原创 MongoDB介绍──开发者专区(3)

2.3  术语介绍2.3.1  数据库、集合、文档每个MongoDB服务器可以有多个数据库,每个数据库都有可选的安全认证。数据库包括一个或多个集合,集合以命名空间的形式组织在一起,用“.”隔开(类似于JAVA/Python里面的包),比如集合blog.posts和blog.authors都处于"blog"下,不会与bbs.authors有名称上的冲突。集合里的数据由多个BSON格式的文档对

2010-04-17 20:59:00 1476 1

原创 MongoDB介绍──开发者专区(2)

2.2  MongoDB资源消耗考虑到性能的原因,mongo做了很多预分配,包括提前在文件系统中为每个数据库分配逐渐增长大小的文件集。这样可以有效地避免潜在的文件系统碎片,使数据库操作更高效。一个数据库的文件集从序号0开始分配,0,1...,大小依次是64M,128M,256M,直到2G。一旦文件大小达到2G,之后的文件大小都保持为2G。所以如果上一个文件是1G,而数据量刚好超过1G,则下

2010-04-17 20:55:00 1022

原创 MongoDB介绍──开发者专区(1)

二.开发者专区2.1  MongoDB简介MongoDB是一种面向集合的,模式自由的文档数据库。面向集合是说数据被分成集合的形式,每个集合在数据库中有惟一的名称,集合可以包含不限数目的文档。除了模式不是预先定义好的,集合与RDBMS中的表概念类似。数据库和集合的创建是“lazy”的,即只有在第一个document被插入时集合和数据库才真正创建──这时在磁盘的文件系统里才能看见。模式

2010-04-17 20:45:00 1567 1

原创 MongoDB介绍──前言

一.前言mongo不是芒果(mango),取自“humongous”(海量的)。是一种开源的文档数据库──nosql数据库的一种。nosql是“not only sql”,而不是“no sql”。nosql的特点:非关系型,分布式,开源,可水平扩展,模式自由,支持replication,简单的API,最终一致性[1]。此文档大部分翻译自官网的manual,其它的整理于博客文章。由于认识

2010-04-17 20:28:00 671

翻译 不用共享引用创建一个列表的列表

Problem:    创建一个值全为0的三行五列的二维数组Solution:    multilist = [[0 for col in range(5)] for row in range(3)]Discussion:    为什么不能这样:    >>> multi = [[0] * 5] * 3    >>> multi    [[0, 0, 0, 0, 0], [0, 0, 0, 0,

2009-08-29 21:03:00 377

原创 Python小tips

1.  同时访问序列的索引和索引对应的值Problem:    你需要迭代一个序列,但同时你想知道每一步迭代到了序列的哪个位置。Solution:    for index, item in enumerate(sequence):        if item > 23:            sequence[index] = transform(item)    这种方法要比下面这种使用

2009-08-29 21:00:00 376

翻译 import语句

翻译了Python2.5官方文档中语言参考的6.12节,半生不熟的英语水平,大家将就着看吧!6.12 import语句    格式:import_stmt        ::= "import" module ["as" name] ( "," module ["as" name] )*                                  | "from" relative_mo

2009-08-29 20:53:00 1847

原创 __call__()、__getattr__()及内部函数中的变量

1.  __call__、__getattr__    1 class B():    2     def __call__(self, name):    3         return getattr(self, name)    4     5     def a(self, text):    6         print a + text    7     8     def b

2009-08-20 19:23:00 1655

原创 三种字符串连接方法的效率比较

在python下测试三种进行字符串连接(+、%s格式化、join())方法的效率:  1 #!/usr/bin/env python  2 """Test string connect efficiency in diffrent methods"""  3   4 def test_add(stra, strb):  5     """Use + to connect"""  6     s

2009-06-02 20:15:00 963 2

原创 MySQL中的全文检索(2)

一、全文索引的构建    构建全文索引时把要索引的列连起来(所以不能对其中的某一列进行全文检索)作为一个长的字符串进行索引。构建好的全文索引是一种拥有两层结构的特殊B树索引。第一层是各个关键字(keywords),第二层是关键字所在的文档指针。如下图:(不好意思,还没学会怎么插入图片,试了几次都没有成功)          B-tree里存放着一个指向记录的指针和索引列里每个词的关联权重。在创

2009-05-14 21:12:00 2675 1

原创 MySQL中的全文检索(1)

一、概述      MySQL中的全文检索是利用查询关键字和查询列内容之间的相关度进行检索,可以利用全文索引来提高匹配的速度。二、语法      MATCH (col1,col2,...) AGAINST (expr [search_modifier])      search_modifier: { IN BOOLEAN MODE | WITH QUERY EXPANSION }      例如

2009-05-14 21:03:00 20604

翻译 面向对象的分析

当用面向对象的软件工程方法来构建一个新的产品或系统时,最开始的技术活动就是进行面向对象的分析(object-oriented analysis)。  概念:在建立一个面向对象(OO)的系统之前,需要定义从要解决的问题中抽象出来的类(对象)、类的属性、方法、与其它类交互的机制。所有这些都是要在面向对象的分析(OOA)中要完成的。OOA的目的就是定义与要解决的问题相关的类。 

2009-04-18 21:30:00 446

原创 也来写个简单的单键模式实现

public class Singleton ...{    private static Singleton sgl = new Singleton();        private Singleton()...{}        static Singleton getInstance()...{        return sgl;    }        /**//*     * 第

2007-11-06 18:33:00 606

原创 构造一个链表,经过一次循环找出中间的结点

public class LinkList ...{    class Node...{        int id;        Node next;    };        Node[] aList;        LinkList()...{}        LinkList(int N)...{        int i;        aList = new Node[N];  

2007-11-06 18:24:00 565

原创 生产者消费者问题的Java实现

public class ProConsumer{ public static void main(String[] args) {  Signal S = new Signal();  Thread tProducer = new Thread(new Producer(S));  Thread tConsumer = new Thread(new Consumer(S));  tProduce

2007-11-06 17:09:00 449

原创 感谢北电的Hr GG~~~

今天下午三点去了北电面试,在华美达酒店1817房填表,坐在里面的是个一看就知道是华南的hr MM,看着很舒服很温暖的那种。面试的是两个GG,都戴着眼镜,和我年级差不多大的样子,一个看上去比较活泼,一个看上去很有内涵。开始用英语做了自我介绍 ,问我为什么去海南上大学,呵呵~~~接着问了我简历里的一个项目,问得比较细,一个GG还写了一个正则表达式问我是什么意思,可惜/d是数字我就没想起来,他问

2007-10-24 17:17:00 761

原创 上次的第二道题想出了一个更简单的写法!

假设有个int型的数n,实现高低位的互换,比如12345,给换成52341,写一个方法实现n的高低位的互换。(n是几不知道)//把一个数翻过来表示,简写方法 public void reverse( int n){  String out = "";    while(n != 0){   out += n%10;   n /= 10;  }    System.out.println(out

2007-04-05 13:01:00 560

原创 带你认识电影常见版本

许多朋友在下载电影的时候, 往往会被各种各样的版本标识弄糊涂,今天把各种版本的缩写收集在一起。1.CAM(枪版)CAM通常是用数码摄像机从电影院盗录。有时会使用小三角架,但大多数时候不可能使用,所以摄像机会抖动。因此我们看到画面通常偏暗人物常常会失真,下方的 字幕时常会出现倾斜。 由于声音是从摄像机自带的话筒录制,所以经常会录到观众的笑声等声音。因为这些因素,图象和声音质量通常都很差。2.TSTS

2007-04-02 20:17:00 839

原创 "2个面试华为光网测试的有关算法题",我写的程序!!!

 第一题:    数小孩的题。    假设n个小孩围成一圈,每次数第m个小孩,该小孩被踢出来,请问当只剩下一个人的时候是第几个人。(比如m=3,第一次数到第3个,第二次从第4个开始往下数,转圈数)写一个方法来实现。第二题:    假设有个int型的数n,实现高低位的互换,比如12345,给换成52341,写一个方法实现n的高低位的互换。(n是几不知道)public class Job { 

2007-04-02 17:12:00 826

原创 重载和多态

       多态一般针对class而言,你可以先定义一个base   class,然后extend出一些你想得到sub   class。在base   class中你先定义出一些基本的函数,在subclass中重新将这些函数override(复写),实现对应不同的subclass特殊的method。             overload(重载)则针对method而言,在同一class中,你可

2007-03-05 19:25:00 538

原创 -1“无符号”右移10位后是怎么变成4194303的!

        Java中增加了一种“无符号”右移操作符(>>>),它使用“零扩展”:无论正负,都在高位插入0。这一操作符是C或C++中所没有的!        整数-1右移10位后怎么变成4194303的呢?原来,-1在32位计算机内采用补码表示后是:11111111111111111111111111111111,即32个1。再无符号右移10位只剩下22位1,因为高十位全是0,这样就变成1

2006-09-05 10:38:00 2447 2

原创 女朋友的生日!

今天是我女朋友24岁的生日,可是她在海口,我在武汉,我不能在她的身边陪她过生日。我已经给她许了世界上最美好的祝福,八月初我就能去海口了,到时我一定要好好地为她补办生日,我还会送她一份生日礼物,去年我就答应过她的!希望访问我的博客的朋友也为我祝福一下我的女朋友吧!谢谢! 

2006-07-23 09:06:00 1221 1

原创 位操作(~num=-(num+1))

    我们都知道单目运算符“~”表示对数的每一位取反,~num = -(num+1)。    如:~5=-6,为什么是-6?    现在的机器大多数都为32位机,所以5的二进制表示是:    00000000 00000000 00000000 00000101    取反后为:    11111111 11111111 11111111 11111010    再转换为10进制:    首

2006-07-21 12:28:00 1795

Python Cookbook 2Nd Edition<英文版>

优雅、简洁、实用是Python的核心价值观。虽然是一本英文书,但讲述的是一个个小技巧,值得一看,它能让你变得更Pythonic!

2009-09-22

Python核心编程(中文第二版)

Python核心编程(中文第二版),有了电子书,你可以选择不用去书店买了!

2008-09-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除