豆瓣(douban.com)和Python、Quixote的文章合集

向阿北哥请教?
    2005-12-31 21:54:09   来自: zh00yi (南京)

  douban是用quixote和twisted做的,但好象都是python的web framework,为什么要用两个呢?能告诉我这两个分别用来做什么吗??我很想知道这方面的事,当然如果这属于商业秘密的话,可以不说的。。


   
2005-12-31 22:58:48 阿北 (北京)

  quixote是豆瓣用的web framework. 豆瓣可见的网站建在此之上。
  
  豆瓣的搜索引擎使用twisted. 这个是豆瓣的后台,看不见。但是书的价格比较信息是在此之上搜索各大购物网站而来的。


------------------------------------------------------------------------------------------
豆瓣用的是MySQL数据库么?
    2006-07-06 17:10:53   来自: aBBISh (北京)

  在高负载的情况下不会出现数据出错的问题么?
  
  对于同时更新时的锁表处理时如何做的?
  
  能否提示一二~


   
2007-06-28 08:05:15 tianyou

  是


   
2007-06-28 10:52:54 德洪

  多个数据库。
  
  不要让Mysql数据库承受太大的压力负荷。


   
2007-06-28 11:02:06 阿北 (北京)

  是。
  
  用innodb可以避免多数锁表的情况。


   
2007-07-05 13:42:26 blueflame (上海)

  难得看到大管家来回帖,顶个~~~


   
2007-07-05 14:04:46 彬

  MySQL似乎是有行级锁的,并不需要锁定整张表。


   
2007-07-05 14:05:54 阿北 (北京)

  MyISAM: table level locking
  InnoDB: row level locking

------------------------------------------------------------------------------------------
想知道豆瓣的后端用了某种数据库吗
    2005-10-18 11:42:55   来自: closer2sky (南京)

  Quixote让大家自便,直接Pickle就可以。
  如果让我选的话,我更喜欢ZODB。
  不过我觉得豆瓣似乎还是用了某种数据库吧,不然像tags的统计分析不是有很多的工作量……


   
2005-10-18 11:47:43 leal (杭州)

  不用数据库用文件吗?那不是很夸张


   
2005-10-20 00:50:54 阿北 (北京)

  mysql.
  
  豆瓣有几十个G的数据,必须用真正的RDBMS. zodb应该是不够的。


   
2005-10-22 10:42:21 RainX (北京)

  阿北,
  几十个G,有那么多么?是为了提高读取效率而产成大量冗余么? 数据表采用的是什么类型?myisam, innodb ,bdb, 有用到heap表么?索引建立的时候有什么技巧么?可不可以那个小例子来说明一下?有用到replication么?或者其他的cluster方案(单独针对数据库)?页面是直接和数据库交互么,有没有什么中间层进行cache,cache的方案大概是怎样的?
  
  呵呵,问得有点多了,如果不方便完全回答的话选择几个来回答哦,谢啦,或者给我“豆油”


   
2005-10-22 11:50:41 阿北 (北京)

  加上所有的封面照片,是有几十个G。不过这些不在数据库里。数据库现在有5G, 最多的是书的信息(40多万条)和用户收藏和评价(50多万条)。这个不包括冗余。
  
  mysql用了innodb和myiam. 读/写频繁的用innodb, 读多写少、写多读少(比如log)或者需要full text index的用myiam. replication/cluster还没有,不过很快会有。现在每晚用mysqldump做backup.
  
  有关索引,其实就是”需要就建“,没有什么特别的技巧,多数myql的书会应该都有。
  
  rainx, 你对这些好像很感兴趣?是工作需要吗?


   
2005-10-22 12:38:26 RainX (北京)

  作为对技术的研究吧,因为我本身就是搞技术的。今天偶尔看到这个主题,由于对数据库相关的问题比较敏感,所以提出了这些问题。其实我对douban的感觉不错,尤其是知道它在如此高的访问量/数据量的情况下还能有这么好的performance,所以就对它的架构比较关心,说实话我对python的了解不多,尤其是对它的web framework没什么了解,所以主要就想从数据库的方面多了解一些,其实你回复的这些有一些和我猜想得很接近,有些又不同。
  
  我的一个朋友近期想做一个和douban模式类似的网站,但不是针对书,音乐和电影的,而是另外的东西,规模可能会比较小(因为是针对一个特定类型的小众圈子的),我可能会给他帮些忙,写些代码。对我本人来说,我是不太喜欢做别人做过的东西的,但是从技术角度来讲,提高数据库的性能这种方法和方式是可以互通的。
  
  
  我还有一些疑问,就是mysql 的full text的性能如何,我记得它对中文的分词好像没有太好的解决方案。lunece不知道你有没有用过?
  
  mysql 的replication有一个缺陷是它只会读性能上有所提高,但是对于写的负载还是没有降低。我听说你以前是在ibm的,又听说ibm以前有一种针对 mysql的技术是可以提供一个db groups的概念,一个master/slave组为一个group, 一个数据库被分为不同的group,每个group里面的表结构类似,但是数据是分散到不同的group里的,request到达数据库的时候,会有一个中间层(通过hash或其它类似算法)来判断数据应该属于哪一个group,然后到那个group进行相应的读/写操作。是这样么?

------------------------------------------------------------------------------------------
为什么选择了 Quixote?
    2005-04-01 16:50:18   来自: 仨儿 (北京)

  Python 的web 应用平台如此多?!
  
  为什么选择了 Quixote?
  
  可以给个理由先?!?
  我也放在苦恼应用平台的选择中,
  Zope 肯定不行,维护的代价太高,
  CherryPy 太简单,什么都要自个儿来,没有什么可以借力的,就是实在自然!完全是Python 脚本的编写,但是没有什么模板的支持,
  
  ………………


   
2005-04-01 17:39:29 阿北 (北京)

  简单地说来:
  
  1. pythonic. 就连模版(ptl)都是python. 用
   """<h3>%s</h3>""" % mytitle
  
  之类的。zope不行, webware太像jsp.
  
  2. restful. 看看这页的url就知道了。这点quoxite简单灵活地帮你实现了。
  
  3. robust. quixote是经过大规模实际应用检验的,不是漂亮的玩具。这点CherryPy不行。
  
  用quixote的时候你的注意力大部分在要实现的内容上,framework不会拦在中间跳来跳去。
  
  不过如果你需要模版设计和后台分家, 由非程序人员进行复杂的模版调试的话,quixote可能不太适合。


   
2005-04-09 13:32:52 刘老虎 (南京)

  不过这里的效果可真不错。


   
2005-05-18 17:54:41 big student

  阿北说的太笼统,如果偶是boss肯定不会被说服
  


   
2005-05-30 11:31:30 alang (武汉)

  我觉得Quixtoe不能把页面与程序分离,还是很遗憾的。在企业中用,就不太合适,我是指开发这一块,好程序员会美工的太少了。
  
  MVC模式证明是很成功的,也是必不可少的。
------------------------------------------------------------------------------------------
豆瓣在python和ruby之间为何选择前者?
    2005-06-15 23:09:20   来自: 骑士 (上海)

  问阿北兄一个问题,知道你在做豆瓣之前曾对python和ruby做过对比,最后选择了python和quixote。为何当初没有选择ruby和rails呢?
  我不知道ruby有没有象twisted这样的产品,是不是用ruby做crawler没有python和twisted的优势呢?


   
2005-06-15 23:27:09 阿北 (北京)

  最主要的原因是ruby用的人太少了。至少python在中国有真正的使用者,有仨儿这些人吆喝着,还算有些气候。没有使用者,豆瓣以后的开发团队会是一个问题。从技术管理的角度来看,没有用java已经有些不切实际了,用ruby就太过理想主义了。
  
  还有一个问题是库。python有大量现成的库,而且很多库都经过大型商业应用。这点ruby还需要时间。比如rails在大访问量下的性能怎样,还不是太清楚。
  
  从个人喜好来说,python更简洁,和我口味。python用缩位不知省去了我多少时间。我以前 { } ; 敲了十几年了,现在想起来真是不堪回首。


   
2005-06-16 11:26:11 仨儿 (北京)

  哈哈哈!!深得我心!!
  还有一个更加重要的原因!
  Ruby 是小日本创建的!不能保证其技术支持性!!
  Python 是世界的!


   
2005-06-16 11:27:52 仨儿 (北京)

  ps.
  哈哈哈!!原来还有我的功劳?!?!
  如果需要开发团队的话!算我一个!!!嗯嗯!!
  
  Python,Pythonic 的开发体验是我的最爱!!!


   
2005-06-16 22:06:15 骑士 (上海)

  阿北兄在最初就能考虑到将来的开发团队让小弟深感敬佩。
  现在想来,豆瓣使用python而没有用java是非常正确的选择,技术上激进一点儿,只要风险在可控的范围内,也许能给系统带来全新的开发和使用体验。
  豆瓣现在实际上已经成为国内使用python开发商业系统的典范。只要一提python做的站点,大家首先想到的是豆瓣,而不是用zope/plone架构的网站。提到有创新精神的站点,大家首先会想到豆瓣和土豆,而不是其他N多制造流量的网站。
  我也一直关注学习拥戴python,当初北哥把豆瓣上线的消息发到python.cn邮件列表后,也参合测试过一下豆瓣。最近试用了一下 rails,给我印象最深的是两点:一是ruby使用gem管理package的科学和方便,小弟以为这是python做的不好的地方,同样根植于 *nix,python却没有吸收这样优秀的思想,程序安多了path和package容易造成混乱,也很难把握程序之间的依赖关系,而在安装rails 的时候所依赖的Rake,ActiveRecord等等都会提示给你询问是否安装,真诚的希望将来python也可以学习这种包管理的方式;二是 rails的体贴干练,把ORM,MVC等等都已经准备好了,甚至需要和apache集成的FastCGI只要安装一下就可以了,而python很多事情都要自己来做,有时还需要慢慢调试寻找依赖,python.org上罗列了很多应用,至少我目前还不知道有象rubyforge.org这样的站点。我觉得python象gentoo和debian,想要很好的使用必须要深入底层;而ruby象mandrake和radhat,深入底层会做的更好但是不下去也可以让你聚焦在应用上把系统run起来。希望python象ruby学习是真的,不过说实话,有了zope/plone,twisted, gmail,豆瓣这些成功的例子,如果做大型的皮实的系统的话,还是python更让人心里塌实些。ZQ兄在北京moc.anis不是发展的不错嘛,最近还看到发到邮件列表里的招聘消息呢,难道还要再回上海来?^_^


   
2005-06-18 15:21:39 chenge (上海)

  看了豆瓣后,我尝试了一下Quixote, 后来又看了Rails,我倾向于Ruby和Rails, 后者可能因为时间短还不成熟,但也有后发优势。
  
  感觉Ruby比Python的语言一致性好,纯面向对象。
  
  


   
2005-06-28 08:40:46 仨儿 (北京)

  Python 可能因为发展的太快,有些混乱,但是有一个本质可以令Python 永远的可爱下去,那就是Python 使用代码的缩进格式来进行层次判定,这样一来保证了所有的Python 脚本是格式统一的,并隐含的迫使你不能尝试太多的嵌套堆砌…………
  
  这比任何一种使用 {} 或是 begian end 来划分逻辑层次的语言要人性的多,我们在学习他人的代码时不用捏着鼻子来习惯别人古怪的代码习俗………………

------------------------------------------------------------------------------------------
豆瓣在python和ruby之间为何选择前者?
    2007-01-30 11:23:16   来自: 一个好孩子 (北京)

  我使用了一年前同样的题目..
  http://www.douban.com/group/topic/1000883/
  
  05年的时候阿北说了,选择Python主要是使用的人相对多一些
  那么,过去这么久了
  
  我希望得到大家比较中肯的答复,说说你们的看法?
  
  本人还未下定决定学习哪门语言,实在惭愧。


   
2007-01-30 11:32:10 小豆包-积劳成疾 (广州)

  在那个时候,如果想在国内搞Web开发,Python好像是唯一一个可以做到轻量级、增量开发、通用技术支持的语言,当时Ruby在国内还没几个人关注。而且据说阿北是从UNIX上转过来的技术专家,Python在UNIX上的地位比Ruby重要的多,可能环境的影响也很重要。相比之下,Ruby的技术力量主要来自Java圈子。


   
2007-01-30 13:15:20 沈崴 (深圳)

  Python 2.5 (r25:51908, Jan 28 2007, 14:20:16)
  [GCC 4.0.4 20060507 (prerelease) (Debian 4.0.3-3)] on linux2
  Type "help", "copyright", "credits" or "license" for more information.
  >>> 'Ruby' > 'Python'
  True
  >>> 'Ruby' > 'Java'
  True
  >>> 'Ruby' > 'C/C++'
  True
  
  Python 说了, Ruby 是最拽滴。


   
2007-01-30 13:17:17 小豆包-积劳成疾 (广州)

  哈哈,我看见end if啦,end for啦这些东西就怕,所以……Ruby基本与我无缘了


   
2007-01-30 14:01:32 limodou

  一旦学了python,别的我基本上不想了。
  
  其实ruby与python相比还有许多差异,比如执行效率,第三方库。而且ruby本身比python要复杂。以前有人搞过c,python, ruby, java的语法图,从图中看c,python比较简单。而ruby和java比较复杂。
  
  再看语法清楚上,ruby是从perl学了许多东西,所以还是有许多奇怪的符号,而python基本上是从简单,优美中重新的设计产生,在可读性,优美上要强于ruby。


   
2007-01-31 11:23:38 仨儿 (北京)

  http://wiki.woodpecker.org.cn/moin/BPUG/2006-03-26
  
  有阿北自个儿说的想法,大家可以回顾一下,就俺的理解:
  
  1. 豆瓣开发时,Ruby 还没有成熟
  2. 就算是成熟了,小日本的东西也不推广使用
  3. 就算不管日本,Ruby 的支持库和社区活跃程度和Python 的也没有可比性
  4. 以上3点再重复..
  


   
2007-01-31 15:52:41 苜蓿 (北京)

  那相对于java、PHP呢?


   
2007-01-31 15:56:54 小豆包-积劳成疾 (广州)

  Java太笨拙,PHP太专注于Web。


   
2007-01-31 16:34:33 一个好孩子 (北京)

  非常感谢楼上诸位的讲解!思路已经逐渐清晰。
  我只有在实践中才更能体会到这些,谢谢。


   
2007-02-01 21:54:10 henry.3

  轻量级的开发非常重要。


   
2007-02-02 12:51:46 爱咖啡 (北京)

  在python的小组里问这个问题你又能期待什么样与众不同的答案?


   
2007-02-02 15:10:41 一个好孩子 (北京)

  同样,如果去了Ruby,你或许听到的是向Ruby方倒的声音。
  
  来这里问Python,要的就是最专业的回复,他们的理论/看法来自实践。


   
2007-02-20 17:34:43 openweb (深圳)

  At Google, python is one of the 3 "official languages" alongside with C++ and Java.
  
  我想对于 Python, 你可以更加坚定啦 :)


   
2007-02-20 19:42:34 氷の鋭 (南京)

  其实Ruby真的是没创意的东西——包括Perl的字符串处理机制、Smalltalk的面向对象机制、ML-like的语法、Lisp中关于DSL的想法,还有shell里面的一些东西。然而,在Ruby中你所得到的这些思想的整合后的力量大约只是上述语言各自的“一半”。
  
  Python也有一些“看上去”不怎么样的东西,但是他新颖,有一个工作的中心(使用主义),有创意,尤其是看上去很像C的面向对象机制设计,还有貌似JavaScript的'.'操作符;面熟,但有自己的想法,这是我所推崇的。


   
2007-04-30 18:05:34 氷の鋭 (南京)

  回复 "2007-01-30 13:15:20 沈崴 (广州)
  
    Python 2.5 (r25:51908, Jan 28 2007, 14:20:16)
    [GCC 4.0.4 20060507 (prerelease) (Debian 4.0.3-3)] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> 'Ruby' > 'Python'
    True
    >>> 'Ruby' > 'Java'
    True
    >>> 'Ruby' > 'C/C++'
    True
    
    Python 说了, Ruby 是最拽滴。"
  
  那smalltalk岂不更强? Zuse 岂不无敌?


------------------------------------------------------------------------------------------

阿北能比较一下Quixote和PHP的开发效率和优...
    2005-05-28 16:45:08   来自: chenge (上海)

标题:阿北能比较一下Quixote和PHP的开发效率和优缺点吗?

  如题!


   
2005-05-30 22:54:10 阿北 (北京)

  我没用过php, 所以没有发言权。
  
  不过看php代码的感觉是,php更多是围绕网页组织的,而quixote是以url的路径来组织python模块。所以php更适合复杂的html代码动态化,而quixote适合豆瓣这样页面简单,但逻辑复杂的网站。


   
2005-06-10 10:09:40 Josh.Yin (合肥)

  quixote 是框架;
  PHP 是脚本语言,有可比之处?
  
  PHP 该拿去和 python 比较才是;
  
  同样,你可以用 quixote 和 Mojavi 等做比较;
------------------------------------------------------------------------------------------
豆瓣一年
    2006-03-06 15:57:13   来自: 阿北 (北京)

  [ 正式的blog地址是 http://blog.douban.com/douban/2006/03/06/61/ ]
  
  2005年3月6日下午,我弱弱地给中国Python用户组的邮件列表发了一封email。题目是”用python开发的网站开始公测”:
  
   欢迎到http://douban.com使用豆瓣的读书者网络和书价比较。
  
   豆瓣全部使用python开发。网站后台的搜索引擎基于Twisted, GUI基于Quixote. 还用到了cElementTree, MySQLdb和 PIL. 除了这些豆瓣基本是从头开发(一个人四、五个月)完成。
  
   如果你有爱读书或爱写书评的朋友,也欢迎推荐豆瓣给他们。最好的方式是通过豆瓣的邀请功能。
  
   谢谢!
  
  当时我已经抓着几个朋友内部测试了几天。总算,世界上的人知道了有豆瓣这么个网站。虽然是“公测”,但按照“永远beta”的2.0原则,这就算是面世了。回想起来,这个程序员的邮件列表其实不是最好的PR渠道。但我有些私心。当时bugs还很多,做程序的应该比较理解,不会扭头就走, 报告起来也说的清楚。
  
  我觉得所有网站第一次上线的时候,开发者都会满头大汗盯着屏幕不断刷屏。我呢,一直刷到天亮。不过算上我别的几个朋友,当天也就来了五六个人。但晚上无聊的头和anuxs就写了书评。然后就有了回应。我也第一次知道,世界上有杜尚访谈录和辛丰年音乐笔记这些个书,因为这两个人看过。豆瓣,这个在脑子里憋了半年的东西,竟然有人用了,而且能对人有用! 我猜想初为人父者听到自己的孩子第一声嚎哭的时候,感受应该有相似的地方吧。
  
  今天,一年之后,十一万形形色色的人在豆瓣上有了自己的空间和自己的圈子。他们共通的地方是对书、电影、音乐的热爱。每个月还有百多万潜水的访问者, 通过豆瓣发现他们以前不知道的东西。更重要的是,今天的豆瓣有了自己的生命,循着自己的轨迹生长。我能够做的,是寻找更多的看护人和建设者, 给这个生命更大的空间和养分。
  
  感谢一年多来无数热爱豆瓣的人给豆瓣团队的支持。现在是热身后的稍息,我们才刚开始。
------------------------------------------------------------------------------------------

关于豆瓣的链接
    2006-06-04 17:24:56   来自: Jim (保定)

  为什么很多连接后面都要一个 “/”呢,必须这样吗?
  跟quixote有关系???


   
2006-06-08 09:25:48 enjoy (成都)

  便于写正则?
  猜的。
  反正我是。


   
2006-06-09 00:31:18 nilaozi

  传说中的广告人又出现了
  http://www.douban.com/group/single/?action=join


   
2006-06-09 09:05:05 小力 (深圳)

  的确是Quixote的url解析机制造成的。


   
2006-06-11 15:39:22 Jim (保定)

  to 小力:
  你的nsnq.com是用quixote吗?
  
  我也正在利用业余时间,用quixote写一个东西


   
2006-06-17 09:23:03 小力 (深圳)

  不好意思,这里很深,今天才看见。
  
  是用Django写的,初始原型很快就搞定了,大概10天左右,毕竟nsnq.com的逻辑结构很简单,不过从那以后,每天都会修改,添加新东西。
  
  之前,我用quixote技术储备了很久,开发的时候,不得不自己做一些翻页处理/缓存页面/数据库连接重用等等事情,虽然django一出世就带这些功能,但我感觉当时django0.90很不好用,用它写出来的代码很混乱。
  
  现在的django 0.95 m-r版本非常好用了,自动生成代码很清晰。
  
  应该说,我自己开发的话,除了django,quixote是首选。
  
  quixote代码结构很清晰,但好多东西都得自己组装。
  
  django提供了一站式的解决方案。
  
  如果想深入研究web技术或者开发时间不紧,可以玩quixote,代码量很小,适合阅读,研究。但要快速开发,django非常合适。
  


   
2006-06-17 12:11:51 Jim (保定)

  谢谢小力
  我不曾接触django,这一阵子好像研究它的人不少
  我正在用quixote,不过进展有点慢
  不过,我倒是挺喜欢quixote的,感觉很好
  
  等有了新的进展,我们再交流,呵呵


------------------------------------------------------------------------------------------
1. 爬虫和用户自己提交的都有。爬虫建在twisted上。不紧张,你要我也没办法给,除非你来我们这工作 :)
2. 
豆瓣的原则是采用从图书扉页直接拷贝下来的那种图书简介,不用别的网站自己写的介绍和编辑推介。图书扉页简介(包括编号作者目录等等)属于公共信息,至
少是出版商愿意分享的。另外,因为提供了购买链接,豆瓣和网上书店之间是合作伙伴关系。
3. 见我这篇blog: http://blog.douban.com/douban/2005/06/06/24/
4. mysql

顺便提一下,豆瓣跑在gentoo linux 上,而且很早就自做主张把python的东西全部升到2.4. :) 
我从内核0.97版的时候就开始用linux,gentoo是我最喜欢的linux dist。

还有针对豆瓣的问题的话请单独给我email, 或者欢迎在豆瓣的python小组讨论,不要在这里打搅大家了。

- 阿北
(http://blog.douban.com)

Begin forwarded message:

> From: 清风 <paradise.qingfeng at gmail.com>
> Date: June 9, 2005 4:55:37 PM CTT
> To: python-chinese at lists.python.cn
> Subject: [python-chinese] 问豆瓣几个问题:)
> Reply-To: 清风 <paradise.qingfeng at gmail.com>, 
> python-chinese at lists.python.cn
>
> 1.你们的数据来源?自己写了爬虫程序去其他网站爬?别紧张,不要代码,只是问一下:)
> 2.图书的简介的爬取是否有版权问题?最近要帮别人做一爬虫,不知是否有版权问题
> 3.tag的处理完全是平级而没有纵深是吗?那对于分类是否完全用关键字分析来做?
> 4.数据库用的是什么?纯属好奇:)

------------------------------------------------------------------------------------------
Quixote 开发求助!
    2005-06-11 20:53:05   来自: 仨儿 (北京)

  北哥!刚好公司有个机会要快速开发一套适合现有情况的项目管理系统,我想使用 Quixote 快捷设计完成雏形,
  
  可以有你的即时通信地址? 我的都在 http://wiki.woodpecker.org.cn/moin/ZoomQuiet/ContactMe
  
  期望可以得到你的实时开发支持是也乎?!
  嗯嗯!也想将学习,应用过程总结出来,让大家快速可以使用 堂吉诃德系统!
  http://wiki.woodpecker.org.cn/moin/QuixoteQuickIn
  
  现在主要的问题在于:
  1. 为了加速开发,可以令Quixote 应用象PHP 那样每次请求时重构所有模块,以便随时修改随时看到效果? Karrigell
  通过设定是可以的,不知道 Quixote 如何?
  2. 公司内部应用,有很强的管理层次概念, Session 的身份判别是一定要有的,原先的 CherryPy 开发经历,发现 Session
  是非常难受的,不知道 Quixote 这方面如何?
  3. robust 性能的支撑是自动的,不用特别设置,安装什么的嘛?
  4. 数据库的连接操作,Quixote 有什么方便的内含包?
  
  另外,我的平台是FreeBSD 直接含有 quixote-2.0_1!
  简单的安装成功后,想安装 demo 来学习,但是!
  http://quixote.ca/files/qxdemo/qxdemo-0.1.tar.gz
  demo 安装时:
  # python setup.py install
  Traceback (most recent call last):
   File "setup.py", line 5, in ?
   from quixote.qx_distutils import qx_build_py
  ImportError: No module named qx_distutils
  
  运行时::
  # ./run.sh
  Traceback (most recent call last):
   File "scripts/make_links", line 5, in ?
   from qxdemo.links import Category, Link, save
  ImportError: No module named qxdemo.links
  No matching processes belonging to you were found
  [zoomq@wiki] ~/zzz/qxdemo-0.1>
  ==================================================
  medusa/ package not found; fetch it from
   http://www.amk.ca/files/python/
  and install it.
  ==================================================
  Traceback (most recent call last):
   File "scripts/links-server.py", line 4, in ?
   from medusa import http_server, xmlrpc_handler
  ImportError: No module named medusa
  
  ??
  怎么回事儿??你当初是怎么学习 堂吉诃德的?!
  
  谢谢,先!
  


   
2005-06-12 11:27:08 阿北 (北京)

  仨儿,豆瓣的开发和维护工作很大,实在没有时间提供别的实时支持。我尽量通过email和论坛来做,好吧?
  
  1. 应该是可以的,现在我没有花时间去找怎么做。另外这样也会有问题,很多时候你是需要先改,然后统一更新的。
  
  quoxite如果是通过scgi, 只是一个服务,和apache和数据库都是独立的,重起只是一个命令,一秒种的事,很方便。
  
  2. quoxite有SessionPublisher, 非常方便, cookie什么的都帮你做了,用的时候置取request.user就可以了。可以看文档里"Session"的部分。
  
  3. 对。我说robust只是说它皮实。这个不是特别的功能。
  
  4. quixote自己没有什么,你可以用第三方的。
  
  5. 看起来这是个大的demo, 除了quixote, 还需要quixote作者的别的软件(medusa数据库等). 你可以从quixote自带的demo开始。
  
  我当初就是看文档摸索学会的。除了quoxite自己的文档(挺清楚的), 还有一个wiki站点:
  
  http://quixote.ca/
  
  里面有些例子和小教程。


   
2005-06-12 12:00:29 仨儿 (北京)

  谢谢!我看还是就在你的地盘讨论吧!
  看到豆瓣每天都在成长,就知道你的工作之繁忙了!
  先建议一下子,应该利用blog 将你每日的主要修改成果记录在案,虽然对别人可能会有些摸不到头脑,但是,对于自个儿的开发,就有一个反省和积累的效果了…………
  比如说:
  http://wiki.woodpecker.org.cn/moin/CvsWeeklyStat
  就是在下随手开发的一个实用分析工具,记录了主要思路,也为日后进一步的改进,或是技巧的再次利用留下了积累…………
  
  有什么成果,我汇集到Wiki 中,再向大家通告吧!
  
  re 1.开发时的琐碎测试是非常频繁的,特别是刚刚开始学习的在下, CherryPy 也是与Apache 分离的,只是每次修改了代码后要重启服务,那未,在调整某一深层页面的效果时,就不是重启服务所等待的时间了,要反复点击进入那个页面才可以…………呜乎哀哉!象php 你可以即时的看到修改的效果,对比下开发的调试时间就要小,也不会反复打断思路…………
  一定要找出这个方式哪!
  
  re 5. 嗯嗯!看到有个自带的 demo 目录,但是怎么运行起来哪?……嗯嗯有文档,但是要自个儿乱摸,阿北 没有什么中文的学习笔记之类的保留下来??
  
  plus 1. PTL ?? 豆瓣在开发中使用了PTL模板?还是完全使用简单的HTML模板?
  类似:
  http://wiki.woodpecker.org.cn/moin/EasyPaper?action=show#head-81b16228db8b0d534fd1d5ee29ba64bfdcc3b0c6


   
2005-06-12 14:11:00 阿北 (北京)

  豆瓣有一个blog:
  
  blog.douban.com
  
  不过不是针对开发的。
  
  当初没留笔记。:( 不过总的来说不复杂。
  
  真的做起来,必须用ptl, 或者别的模板。豆瓣多数网页是ptl.


   
2005-06-12 15:51:20 alang (武汉)

  demo的运行,在win下我写了一个简单的bat文件,一点就可以了
  python c:/Python24/Lib/site-packages/quixote/server/simple_server.py --factory quixote.demo.create_publisher
  相应的路径你自己改一下。
  


   
2005-06-12 16:10:38 alang (武汉)

  demo的运行,在win下我写了一个简单的bat文件,一点就可以了
  python c:/Python24/Lib/site-packages/quixote/server/simple_server.py --factory quixote.demo.create_publisher
  相应的路径你自己改一下。
  


   
2005-06-12 16:13:54 alang (武汉)

  不知为什么重复了,请把上面删除一个。(包括本条)


   
2005-06-12 18:11:03 仨儿 (北京)

  谢谢提示!!
  
  ps.
  豆瓣的评论,自个儿写的不能进一步编辑也算是个小bug??
  嗬嗬!


   
2005-06-13 09:36:47 阿北 (北京)

  能修改但不能删除。可以用修改把内容清空。


   
2005-06-27 08:55:57 dryice

  第一条,我想开发时可以用 plain CGI 的方式
  这样每一次点击都会重新load所有模块。
  
  另外请教大家quixote能不能单步调试?
  目前我只知道看log和把DISPLAY_EXCEPTIONS打开看 back trace
 
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值