Size: 8961
Comment:
|
Size: 4663
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 11: | Line 11: |
= Zoom.Quiet 9月13日 = ["attachment:C__Documents and Settings_zhiyuanma_桌面_compass.png"] {{{ /* dot version 1.15.20040901.0430 dot -Tpng sample.dot -o sample.png dot -Grankdir=LR -Nshape="plaintext" -Earrowhead="odiamond" -Tpng sample.dot -o sample0.png file:/// direct repository access (on local disk) http:// access via WebDAV protocol to Subversion-aware Apache server https:// same as http://, but with SSL encryption. svn:// unauthenticated TCP/IP access via custom protocol to an svnserve server svn+ssh:// authenticated, encrypted TCP/IP access via custom protocol to an svnserve server size="10,10", */ digraph C { graph [ratio=compress]; node[fontsize=10.0]; edge [arrowtail="odiamond",]; /*×¢²áÁ÷³Ì*/ CC1->Sreg->CS; /*×ÔɱÁ÷³Ì*/ CC2->Sdel->CS; /*²éѯÁ÷³Ì*/ CC3->Sask->CS; /*±¨¾¯Á÷³Ì*/ CC4->Salt->CS->CC; /*¹ÜÀíÁ÷³Ì*/ CA->As->Sadd->CS->chk->CA; CA->As->Sedit->CS->pub->CC; CA->As->Sdel->CS->pub->CC; CA->As->Sask->CS->ls->CA; CA->Ap->SPadd->CS->pub->CC; CA->Ap->SPedit->CS->pub->CC; CA->Ap->SPdel->CS->pub->CC; CA->Asrv->CC; CA->Asrv->CS; CA->Ad->Dadd->CS->pub->CC; CA->Ad->Ddel->CS->pub->CC; /* ½áµã¶¨Òå */ /*ºËÐÄ·þÎñ fontcolor=floralwhite,style=filled,color=orangered3,shape=ellipse */ /*µ÷¶ÈÔ±·þÎñ*/ CS[label="Compass\n.Service\n.Dispatcher" ,fontcolor=floralwhite,style=filled,color=orangered3,shape=ellipse]; /*Service.Agent ÖнéÕß·þÎñ*/ CC[label="Compass\n.Service\n.Agent\n( DEMO related Server s \n means maybe some Compass clients server)" ,style=filled,color=moccasin,shape=egg]; CC1[label="Compass\n.Service\n.Agent\n( DEMO reg. flow )" ,style=filled,color=moccasin,shape=egg]; CC2[label="Compass\n.Service\n.Agent\n( DEMO suicide flow )" ,style=filled,color=moccasin,shape=egg]; CC3[label="Compass\n.Service\n.Agent\n( DEMO ask flow )" ,style=filled,color=moccasin,shape=egg]; CC4[label="Compass\n.Service\n.Agent\n( DEMO alert flow )" ,style=filled,color=moccasin,shape=egg]; /*Service.Agent ÖнéÕß·þÎñ¹ÜÀí*/ CA[label="Compass\n.Service\n.Administrator" ,style=filled,color=moccasin,shape=egg]; /*¹ÜÀíÊÂÎñ ,fontcolor=floralwhite,style=filled,color=darkolivegreen,shape=doublecircle */ As[label="Compass\n.Administrator\n.server" ,fontcolor=floralwhite,style=filled,color=darkolivegreen,shape=doublecircle]; Asrv[label="Compass\n.Administrator\n.service" ,fontcolor=floralwhite,style=filled,color=darkolivegreen,shape=doublecircle]; Ap[label="Compass\n.Administrator\n.partition" ,fontcolor=floralwhite,style=filled,color=darkolivegreen,shape=doublecircle]; Ad[label="Compass\n.Administrator\n.depend" ,fontcolor=floralwhite,style=filled,color=darkolivegreen,shape=doublecircle]; /*·þÎñÊÂÎñ style=filled,color=yellowgreen,shape=hexagon*/ Sreg[label="Compass\n.Processor\n.ServerReg" style=filled,color=yellowgreen,shape=hexagon]; Sadd[label="Compass\n.Processor\n.ServerAdd" style=filled,color=yellowgreen,shape=hexagon]; Sedit[label="Compass\n.Processor\n.ServerEdit" style=filled,color=yellowgreen,shape=hexagon]; Sdel[label="Compass\n.Processor\n.ServerDel" style=filled,color=yellowgreen,shape=hexagon]; Salt[label="Compass\n.Processor\n.ServerAlert" style=filled,color=yellowgreen,shape=hexagon]; /*ÒÀÀµÊÂÎñ style=filled,color=mistyrose,shape=house*/ Dadd[label="Compass\n.Processor\n.DependAdd" style=filled,color=mistyrose,shape=house]; Ddel[label="Compass\n.Processor\n.DependDel" style=filled,color=mistyrose,shape=house]; /*·ÖÇøÊÂÎñ style=filled,color=olivedrab1,shape=hexagon*/ SPadd[label="Compass\n.Processor\n.ServerAdd\n.partition" style=filled,color=olivedrab1,shape=hexagon]; SPedit[label="Compass\n.Processor\n.ServerEdit\n.partition" style=filled,color=olivedrab1,shape=hexagon]; SPdel[label="Compass\n.Processor\n.ServerDel\n.partition" style=filled,color=olivedrab1,shape=hexagon]; /*ÊÂÎñ´¦Àí */ chk[label="Checking\n return\n allow|disallow"]; ls[label="Searching\n return\n info. list"]; pub[label="Publishing\n broadcast this mess.\n to all Compass node"]; }}} |
|
Line 126: | Line 14: |
http://220.248.2.35:7080/share/Python/Compass/discuss/CompassDis090413am.xml | * [http://220.248.2.35:7080/share/Python/Compass/discuss/CompassDis090413am.xml MSN 讨论文本记录] |
系统说明书 文章模板
系统说明标题
-- Jerry Marx [DateTime(2004-09-06T01:45:07Z)] TableOfContents
9月13日中午的讨论
Xie yanbo 9月13日
“compass的server会以守护进程的方式运行在中心服务器上,当然实际 系统分布为了避免单点故障问题不会只有一台中心服务器,但是服务器的 冗余是放在四层或者七层交换的后面,对于我们开发人员来说是透明的, 所以在开发者的角度看我们只需要处理一个中心服器.
“compass的client会以守护进程的方式运行在运行网络服务的的各台 服务器上.为服务提供一个API使得服务可以注册/注销自己或者查询需要 的其他服务器,然后由compass client和compass server交互.”
我想这里的 Server、Client 的概念已经和我们平常所熟知的概念很不 一样了,根据 Twisted 编程规范之命名原则:
我们应该给 Compass Server 和 Compass Client 重新起名。按照我的 理解,建议如下命名:
Compass Server => Service.Dispatcher 调度员服务
Compass Client => Service.Agent 中介者服务
Jerry Marx 9月6日
由于我自己机器的问题,我一直不能在UC上发言.我有一些想法我就发在列表里面了,免得集中起来的时候浪费大家的时间
第一个要通报的消息就是compass(指南针)这个项目要启动了.项目的主页在这里: http://wiki.woodpecker.org.cn/moin.cgi/Compass
当然目前还处在前期的准备工作阶段. 目前的工作我想主要有以下几个:
- Twisted相关文档的翻译和学习.
- 其中优先级最高的是以下几章: Tutorial(这部分翻译工作已经完成)
http://wiki.woodpecker.org.cn/moin.cgi/TwistedTUT
Low-Level Networking and Event Loop(这部分翻译快要完成,由Jerry [email protected] 负责) http://wiki.woodpecker.org.cn/moin.cgi/PyTwisted_2fLowLevelNetworkingEventLoop
High-Level Twisted(这部分由令狐虫 [email protected] 负责) http://wiki.woodpecker.org.cn/moin.cgi/PyTwisted_2fHighLevelTwisted
Working on the Twisted Code Base(这部分由BigBaboo [email protected] 负责) http://wiki.woodpecker.org.cn/moin.cgi/PyTwisted_2fWorkingOnTheTwistedCodeBase
Utilities(这部分由Jerry [email protected] 负责) 当然欢迎大家参与,为了避免重复劳动,参与翻译的时候可以先和相关负责人联系.
Twisted的原文在安装了Twisted后就可以在本地浏览 开始 -> 程序 -> Twisted -> manual 或者在这个地址: http://twistedmatrix.com/documents/current/howto/
- 其中优先级最高的是以下几章: Tutorial(这部分翻译工作已经完成)
- 对于Outter的学习
- compass是基于Twisted的网络应用,当然要用到Outter.基本框架应该就是用Outter来生成了. 这方面还需要Outter组的大力支持
- 对于compass的理解和认识
- 这个就不多说了.开发人员必须对于系统的理解达成一致以后才能协调开发.这方面还需要多交流.
我先说说我对于compass的认识吧
- 首先compass的第一个目标就是为OpenUSS服务,提供服务注册/查找/注销/依赖关系...等等的支持.
- compass系统是一个分布式的,由一系列运行在各个服务器上的守护进程组成.其中包括一个中心的server和一系列的client.server和client的交互回采用推/拉两种方式,力图使网络负载最小化.
- compass的server会以守护进程的方式运行在中心服务器上,当然实际系统分布为了避免单点故障问题不会只有一台中心服务器,但是服务器的冗余是放在四层或者七层交换的后面,对于我们开发人员来说是透明的,所以在开发者的角度看我们只需要处理一个中心服务器.
- compass的client会以守护进程的方式运行在运行网络服务的的各台服务器上.为服务提供一个API使得服务可以注册/注销自己或者查询需要的其他服务器,然后由compass client和compass server交互.
- 服务数据库当然是由server来维护,但是为了避免server负载过重,也许只会把server设计为一个路过者而将具体的数据库管理再委托给另外的进程(也许运行在另一台机器上),不过这个对于client来说是透明的. 上面只是我自己的一点很粗浅的认识,希望大家指正.