1.首先下载solr。http://mirror.bjtu.edu.cn/apache/lucene/solr/3.6.1/apache-solr-3.6.1.zip下载解压即可 cd example/ java -jar start.jar 即可启动solr了,可以进入http://localhost:8983/solr/admin/看看效果。 ps. 这里有个地方要注意的,将solr/conf

首先弄清楚几个概念: Document:Solr的信息的基本单位的是Document,它是一组描述某些事物的数据集合。 Field:Document的主要构成单元,是更具体的信息描述。      其实大家可以这样理解,Document 对应于我们Java代码中的一个类,而Field,则是类中的一个属性。 Field Analysis:就是solr如何对传进来的数据进行处理,如果构建索引。假设有个个

python反射

python反射 其实就是动态的获取类的属性和方法 class Person: def __init__(self): self.name = "zjgtan" def getName(self): return self.name 反射的简单含义:   通过类名获得类的实例对象   通过方法名得到方

进程、线程和协程 要理解什么是goroutine,我们先来看看进程、线程以及协程它们之间的区别,这能帮助我们更好的理解goroutine。 进程:分配完整独立的地址空间,拥有自己独立的堆和栈,既不共享堆,亦不共享栈,进程的切换只发生在内核态,由操作系统调度。 线程:和其它本进程的线程共享地址空间,拥有自己独立的栈和共享的堆,共享堆,不共享栈,线程的切换一般也由操作系统调度(标准线程是的)。 协程:

Python自身作为一门编程语言,它有多种实现。这里的实现指的是符合Python语言规范的Python解释程序以及标准库等。这些实现虽然实现的是同一种语言,但是彼此之间,特别是与CPython之间还是有些差别的。 下面分别列出几个主要的实现。 1.CPython:这是Python的官方版本,使用C语言实现,使用最为广泛,新的语言特性一般也最先出现在这里。    CPython实现会将源文件(py文

经过一番研究,发现Python跟并发相关的东西,做个记录: 1,版本相关 Python2中并发大多使用第三方lib实现,thread, threading, greenlet, eventlet, stackless,processing..........等,使用时需要先import。 Python3中开始有yield, 是Python3中新增的功能,称之为generator(生成器),个人理解

1.  前言 偶然看到Erlang vs. Stackless python: a first benchmark,对Erlang和Stackless Python的并发处理性能进行了实验比较,基本结论认为二者有比较相近的性能。我看完产生的问题是,Stackless Python与Python的其他并发实现机制性能又会有多大区别呢,比如线程和进程。因此我采用与这篇文章相同的办法来对Stackles

Python线程 Threading用于提供线程相关的操作,线程是应用程序中工作的最小单元。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 #!/usr/bin/env python # -*- coding:utf-8 -*- import threading import time    def show(arg):      time.sleep( 1 )      pr

基本上读完了greenlet的源代码,代码不多,就2000行C语言的代码,其中有一部分栈寄存器的修改的代码是由汇编实现的。。。 一句话来说明greenlet的实现原理:通过栈的复制切换来实现不同协程之间的切换。。。 那么接下里来具体的来看看greenlet的代码到底是怎么实现的。。。 好了,先来看看greenlet对象对应的C语言结构体: [cpp] view plain copy /**  St

我们都知道并发(不是并行)编程目前有四种方式,多进程,多线程,异步,和协程。 多进程编程在python中有类似C的os.fork,当然还有更高层封装的multiprocessing标准库,在之前写过的python高可用程序设计方法http://www.cnblogs.com/hymenz/p/3488837.html中提供了类似nginx中master process和worker process

1 2 3 4 5 6 7 8 9