欢迎来到天天文库
浏览记录
ID:15777477
大小:40.50 KB
页数:6页
时间:2018-08-05
《jxta p2p编程技术例程三》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、JXTA,P2P编程技术例程(3)作者:yxiong2000
2、日期:2004-07-30
3、字体:大中小质数查询客户端这个客户端的目的是尽可能的将计算量分布到其它PEER上.考虑用户要获得1到10000之间的质数,一个peer接到这个消息的时候,它就需要决定要分给几个peer来做这件事情。.因此,它需要不断的去发现那些通告自己有质数服务的peer,并为它们的通告提供一个缓冲来保存.例如一个peer有另外10个peer和它一起工作,那么它可能在第一个消息中以1作为LOW_INT,1000作HIGH_INT,在另外一个消息中,以1001作为LOW_INT,2000作为HIGH_IN
4、T,以此类推.最后,客户端将打开一个管道通往这10个peer,然后分别向他们传输消息。客户端的skeleton看起和服务端的差不多,同样是先初始化NetPeerGroup,然后获得GROUP的发现服务和管道服务。.Listing16.10PrimeClientpackageprimecruncher;importnet.jxta.peergroup.PeerGroup;importnet.jxta.peergroup.PeerGroupFactory;importnet.jxta.discovery.DiscoveryService;importnet.jxta.discov
5、ery.DiscoveryListener;importnet.jxta.discovery.DiscoveryEvent;importnet.jxta.pipe.PipeService;importnet.jxta.pipe.OutputPipe;importnet.jxta.pipe.PipeID;importnet.jxta.exception.PeerGroupException;importnet.jxta.protocol.DiscoveryResponseMsg;importnet.jxta.protocol.ModuleSpecAdvertisement;im
6、portnet.jxta.protocol.PipeAdvertisement;importnet.jxta.document.StructuredTextDocument;importnet.jxta.document.MimeMediaType;importnet.jxta.document.TextElement;importnet.jxta.document.AdvertisementFactory;importnet.jxta.id.IDFactory;importnet.jxta.endpoint.Message;importjava.util.Enumerati
7、on;importjava.io.StringWriter;importjava.io.IOException;importjava.net.URL;importjava.net.MalformedURLException;importjava.net.UnknownServiceException;importjava.util.HashSet;importjava.util.Set;publicclassPrimeClientimplementsDiscoveryListener{privatestaticPeerGroupgroup;privatestaticDisco
8、veryServicediscoSvc;privatestaticPipeServicepipeSvc;privateOutputPipeoutputPipe;privateSetadverts=newHashSet();publicPrimeClient(){}publicstaticvoidmain(String[]argv){Clientcl=newClient();cl.startJxta();cl.doDiscovery();}publicint[]processPrimes(intlow,inthigh){}privatevoidstartJxta(){try{g
9、roup=PeerGroupFactory.newNetPeerGroup();discoSvc=group.getDiscoveryService();pipeSvc=group.getPipeService();}catch(PeerGroupExceptione){System.out.println("Can'tcreatenetpeergroup:"+e.getMessage());System.exit(-1);}}privatevoiddoDiscovery(){}}虽然PrimePeer
此文档下载收益归作者所有