P2P计算的未来

 
THE FUTURE OF PEER-TO-PEER COMPUTING
An economical method for pumping up computing power by tapping
into P2P systems using Web server technologies.
By Alfred W. Loo
 
The client/server architecture [4] for computing systems was first proposed as an alternative to the conventional mainframe systems approach for large enterprises. In the mainframe approach, almost everything is done by mainframe computers. Processing in the mainframe quickly becomes a bottleneck in any information system. Enterprises are forced to keep pumping money into mainframe upgrades in order to maintain efficiency under increased processing demands.
   Client/server models shift the processing burden to the client computer. A client is a computer that requests services from another computer (that is, the server), while a server is a dedicated computer providing services to clients in these models. For example, a client may request a database server to retrieve a record. After the server passes the record to the client, the client computer is responsible for further processing (calculating, formatting output, GUI preparation). Through workload sharing, client/server systems can improve overall efficiency while reducing the budget for computing resources.
   Client/server models began gaining wide acceptance in the late 1980s when companies sought fresh competitive advantages in an ailing economy.
   In the current global economic situation, companies are again searching for ways to improve their processing power without further investment in new hardware and software. Many client computers are idle most of the time and have unused disk storage capacity. The next logical step is to maximize the use of these client computers. The peer-to-peer (P2P) model is the answer.
   In a P2P system [1], computers can now act as both clients and servers. Their roles in any task will be determined according to what is most appropriate for the system at the time. This approach minimizes the workload on servers and maximizes overall network performance.
   P2P computing allows users to make use of the collective power in the network. It helps organizations tackle the kind of large computational jobs they could not handle before. P2P implementation is also cost effective for individuals as well as small companies. The benefits are lower costs and faster processing times for everyone involved.
   Although P2P is one of the latest industry buzzwords, there are still problems in developing large scale P2P projects. Here, we look at two high-profile P2P networks as examples and present our solutions. The Napster Model Napster is a high-profile P2P network that gives its members the revolutionary ability to connect directly to other members’ computers and search their hard drives for digital music files to share and trade.
   The operations of Napster are described in Figure 1. Members download a software package from Napster and install it in their computers. The Napster central computer maintains directories of music files of members who are currently connected to the network. These directories are automatically updated when a member logs on or off the network. When-ever a member submits a request to search for a file, the central computer provides information to the requesting member who can then establish a connection directly with another member’s computer possessing that particular file. The download of the target file takes     place       directly between the members’ computers, bypassing the central computer.
   The power of Napster and similar applications is they allow the sharing of widely dispersed information stores without the need for a central file server. Over 36 million people joined the Napster community and it rapidly accelerated the development and implementation of other P2P models. The limitation is it can only share music files and participants cannot share other resources. (It has also faced considerable legal challenges, unrelated to its technological model, from music publishing companies objecting to the free copying of copyrighted material. Napster is now working on a new model in order to avoid the legal problems.)
CPU Power Sharing
In addition to file sharing, computing power can be shared by P2P networks. In April 2001, Intel Corporation, the University of Oxford, the National Foundation for Cancer Research, and United Devices, announced a joint P2P computing project aimed at combating cancer by linking millions of PCs in a vast P2P network. This network is far more powerful than any single supercomputer. The project’s implementation is quite simple. Each user downloads a small program to his/her computer via an Internet connection. The program works as a screen saver and it runs only when the computer is idle. The objective of the program is to discover drugs for the treatment of cancer. It tests chemicals by “bending and flexing” each of hundreds of millions of molecular structures to determine if they interact with proteins involved in cancer therapy. When a given molecular structure triggers an interaction with target protein, it is transmitted back to the coordinator through the Internet.
   This project is succeeding in the sense it has attracted over one million PC owners to participate and a total donation of about 200,000 years of CPU time as of last May. However, it is extremely difficult for other organizations or individuals to develop P2P projects similar to the anti-cancer program. The weaknesses and problems of this method      are   discussed here.
   Security. Participants must completely trust the research organization before they download the programs. Allowing P2P programs to run on a computer greatly increases vulnerability to security breaches. Such breaches may include:
? Deleting files or directories on the computer;
? Reading from or writing to the files on the computer;
? Executing programs or commands such as making long-distance calls with a modem and telephone line; and,
? Connecting to other computers and performing illegal operations such as hacking.
   It is very difficult to secure P2P applications against such misuses, especially where participating computers use operating systems like Microsoft Windows. Any organization less famous than Intel or the University of Oxford would have problems assuring participants of the safety of their network.
   Motivation. Participants do not receive any tangible benefit from participating in this type of project. They donate computer time only because they believe in the project’s objective.
   Many public or commercial organizations have thousands of PCs lying idle outside the 9A.M. to 5P.M. working hours. They are indeed ideal donors, but do not join such projects. Why? Above all, research results from this project will be the sole and exclusive property of Oxford University. Other academic institutions may not     appreciate    this   notion. Although the other two partners in the anti-cancer project—Intel and United Devices—do not receive any direct benefit from their participation, many observers assume otherwise, even if only in terms of marketing and public relations coups. Such perceptions deter many organizations from participating in likeminded projects. In fact, it is highly unlikely potential donors will be attracted to projects with explicit commercial objectives.
   Performance efficiency. In the anti-cancer project, participants must download a program and install it on their computers. If the participants want to donate processing time to a new project, they must repeat this process. It is also extremely difficult to maintain the system and perform tasks like upgrading the programs on the participants’ computers. What’s needed is an automatic method of storing and updating the programs on remote computers.
   Compatibility. The software used in the anticancer project can only be executed on PCs. There are a large number of workstations that use Unix or other operating systems, many of which are enterprise-based and unused after office hours. It is a pity that workstations cannot join this project due to compatibility problems. Another large-scale P2P project—seti@home from the University of California (setiathome.berkeley.edu)—analyzes signals picked up by radio telescopes in an attempt to detect extraterrestrial intelligence. The seti@home project solves the compatibility problem by using different versions for different platforms. Participants can download their versions according to different operating systems such as MacOS, Unix, and so on. This approach makes more computer power available to the researchers, but increases the cost of maintenance as many versions must be kept and updated.
 
Enabling Technologies
All of the requirements mentioned here can be met. Some problems can be solved with the latest enabling software while others need to be handled by building infrastructure.
     Java. In many P2P systems, we find heterogeneous systems with different operating systems and hardware plat-forms. Program portability is of the utmost importance in such structures. Java is the only language that delivers the “write once, run anywhere” promise.
        Security managers. Java is designed with security in mind and a security manager is one of its special features. By specifying security policy in the security manager, users can control programs’ behavior according to predefined limits.
        Web servers and servlets. When we surf the Net, we select a desired Web page via an embedded link and our browser sends a message to the remote Web server. The message is encoded in Hypertext Transport Protocol (HTTP). The Web server then locates the appropriate Web page and sends it back to the browser. This simple model is sufficient as long as the user wants to view static Web pages.
   Some applications require more processing and a dynamic Web page is required. In a typical example, the Web server must access several records and perform some calculations before it can assemble a Web page. In this case, the HTTP message will invoke a program on the Web server. On the server side, the Common Gateway Interface (CGI) programs are written in any language except Java, while servlets are Java programs. Java servlets are better than CGI programs as they have no compatibility or security problems.
 
Power Server Model
This ability to invoke a program on a Web server can be used in P2P applications. Figure 2 shows a power server model using server and servlet. In this model we introduce a new concept—a single client computer using the computing power of many servers simultaneously. This differs from conventional networks where many clients work with one server.
In traditional client/server systems, servers usually serve data to the client. In this model, we define “power servers” in the sense that these computers serve CPU power to other users. Every computer in the system will become a power server by installing a Web server package and a few Java programs.
   One computer acts as a client. A Java application program is executed on the client by dividing a single, computation-intensive task into many small subtasks and queuing them in the system. The application program invokes a servlet on the server and transfers a small part of the task to the servlet. The servlet can then complete the task on the server. The computed results are sent to the client. A performance test of this model is available in [6].
   The behavior of Web servers is well defined. Many good server software packages are available [5] and many of them are freeware/shareware. These packages are small and easy to install. Any computer user should be able to install a Web server package and allow their computer to act as a power server.
   We need to update the server machines one-by-one in the power server model. If we have a large number of servers, this maintenance is very time consuming. The drawback can be overcome by automation. Because most Web servers have upload functions, the maintenance job can be alleviated by using this function. This can be achieved by uploading the new version of the servlets and is automated by use of a special program on the client computer. The maintenance job can be further reduced if all participants are within one organization and their computers are connected in a local area network. Only one copy of the Web server and servlet is installed on the network drive. Every computer invokes the Web server and servlet using the single version on the network drive and thus the maintenance job is streamlined.
Future Development of P2P Systems
Some hurdles cannot be overcome with software alone. Building reliable automobiles alone will not solve transportation problems. We also need highways and gas stations, or no one will be interested in using a car. We must build a computing infrastructure to realize the full benefits of P2P applications.
      Infrastructure of distributed systems has been the subject of much research. One example is the Globus Grid Computing Project, which develops complex infrastructures for different kinds of distributed systems. Interested readers can obtain information of the Globus project from [2, 3]. However, a simple infrastructure is sufficient for our power server model.
     Coordinator. One problem of this model is the difficulty in finding power servers. We can solve this problem by adding a coordinator to the system as illustrated in Figure 3. The coordinator is a computer that stores application servlets and the IP addresses of all power servers.
     The client stores the servlets on the coordinator.
 
We must build a computing infrastructure to realize the full benefits of P2P applications.
Any computer owner who wants to donate computer power to the network must register with the coordinator and provide the following information: IP address; type of processor; when and how long it is available; and the amount of memory available.
   The coordinator is not involved in the actual computation. It stores information of participants processing capabilities. The concept is similar to the work of [7]. Among the tasks of the coordinator:
? Allows new users to register;
? Maintains the database of power servers’ information;
? Matches user requirements with power servers and passes the IP addresses of power servers to the user; and
? Transfers servlets to the power servers
   The user contacts the coordinator to get the IP addresses of available power servers and uses the IP address to initiate the servlet on the power servers.
  For very large P2P, multiple levels of coordinators for each country, city, and organization might be necessary. The organization coordinator will record the IP addresses of computers in its organization. The city coordinator will record the addresses of all organization coordinators and power servers in the city. A global system will include many country, city, and organization coordinators.
   Incentives. If we want to build a P2P system consisting of different organizations and individuals, we must provide incentives to the participants. One way to do this is to set up an association in which members (organizations and individuals) can share each other’s computing power. Members of the association commit to connecting to the Internet for agreed amounts of time, allowing other members access to computing resources.
   It might also be possible to create a market for surplus computing power; individuals or organizations could sell their unused computing power and earn income, which would increase the return on investment and shorten the payback period of the computers.
   Comparison. In addition to overcoming all the problems of the anti-cancer project, the power server model’s advantages are that participants can initiate new projects at any time without having to upgrade or add software to the power servers. Moreover, each computer owner is confident his/her computer is safe as it is protected by their own version of the security manager. The limitation of this model is the programs must be written in Java as it is the only language that can run across all platforms. (The differences between all three models are summarized in the table here.)
Conclusion
Many enterprises are waiting for vendors to develop software products that allow for sharing CPU power with each other. Existing Web server technologies can be easily extended using the model described here. In addition to saving the money not spent on expensive dedicated P2P software packages, P2P systems using Web server technologies will be easier to maintain as the features of Web servers are already well understood. The Web server will become a power server by adding a few Java programs.
      We have presented an inexpensive way to dramatically increase computing power. P2P networks for power exchange will be popular in the future. Many organizations and individuals will discover they can do things in different, much more powerful, ways as they obtain increased access to computing power.
 
References
1. Barkai, D. P2P Computing. Intel Press, Santa Clara, CA 2002.
 2. Foster, I., Kessselman, C., Nick, J. and Tucke, S. The physiology of the grid: An open grid services architecture for distributed systems integration. Open Grid Service Infrastructure WG, Global Grid Forum, 2002.
 3. Foster, I., Kessselman, C. and Tucke, S. The anatomy of the grid: Enabling scalable virtual organizations. International J. Supercomputer Applications 15, 3 (2001).
4. Goldman, J., Rawles, P. and Mariga, J. Client/Server Information Systems. Wiley, Hoboken, NJ, 1999.
 5. Hunter, J. and Crawford, W. Java Servlet Programming. O’Reilly, Sebastopol, CA, 2001.
6. Loo, A., Bloor, C. and Choi, C. Parallel computing using Web servers and servlets. Internet Research 10, 2 (2000).
7. Schwartz, D. Cooperating Heterogeneous Systems. Kluwer, Dordrecht, The Netherlands, 1995.

计算系统的客户/服务器(C/S)结构是作为改变大企业里大型机系统的传统方案而第一次提出来的。在大型机方案里,几乎每一件事都由大型计算机来处理。在很多信息系统里,大型机的处理能力很快成为瓶颈。企业被迫不断投钱到大型系统的升级中以增加处理能力。

C/S模型把处理的负担转移到客户机。在这个模型里,客户机就是向其他计算机(也就是服务器)请求服务的计算机,服务器则是专注为客户机提供服务的计算机。例如,客户机请求数据库服务器搜索一条记录。在服务器向客户机返回该记录后,客户计算机进行更多的处理工作(计算、处理输出、准备图形用户界面GUI)。通过工作负担的分担,C/S系统能够在减少计算资源的预算的同时,提高整体效率。

当在上世纪80年代晚期,经济萧条中的公司开始寻找新鲜的有竞争力的优势时,C/S模型开始被广泛接受。

在当今的全球经济形势下,那些公司又开始搜寻提高他们处理能力而不用在软硬件上进行更多投资的方法。大部分时间里很多客户机是空闲的,并且有大量没有使用的磁盘存储能力。下一个逻辑的步骤是最大限度地使用这些计算机。Peer-to-PeerP2P)模型就是答案。

P2P系统里,计算机能够同时扮演客户机和服务器的角色,他们的作用在任何任务里都取决于当时系统适合于工作的对象。这个方案最小化工作负荷而最大化了全部网络的性能。

 

Figure 1. Napster’s model.

P2P 计算允许用户使用网络中集中的处理能力。它帮助组织进行大量以前不能进行的计算工作。 P2P 的应用对小型公司和对个人一样都是具有成本效率的。对于每一个使用者的好处是拥有更低的成本和更快的处理速度。

Napster模型

尽管P2P是时髦的工业词汇之一,在开发大规模P2P项目时仍存在一些问题。这里我们看一下两个高姿态的P2P网络的例子并提出我们的解决方案。Napster模式的Napster是一个高姿态的P2P网络,赋予其成员革命性的能力直接链结到其他成员的计算机并在他们的硬盘里搜索数字音乐文件并交换。

Napster的操作如Fig1所示。成员从Napster网站下载一个软件包并安装到他们的计算机里面。Napster中央计算机维护当前链结到网络的成员的音乐文件目录。这些目录在一个成员上线或下线时自动升级。无论成员何时提交一个查询文件的请求时,中央计算机把信息提供给的成员让他直接与处理指定文件的其他成员计算机建立联系。目标文件的下载越过中央计算机直接发生在成员计算机之间。

Napster和相似的程序的能力是他们允许分享广泛分散的信息储备而不需中央的文件服务器。有超过三千六百万的人加入到Napster社区,并且这个社区迅速加速扩展和应用其他P2P模式。它的限制是它只能共享音乐文件,并且参与者不能共享其他资源。(Napster已经面临了不容忽视的法律挑战,那就是音乐出版公司反对受版权保护的作品自由拷贝,与它的技术模式没有关系,)Napster现在工作在一个新的模式,以避免法律问题。)

CPU的共享

除了文件共享,计算能力也能够由P2P网络共享。在20014月,英特尔公司、牛津大学、国家癌症研究基金和联合设备公司宣布加入通过链结数以百万计的PC组成的巨型P2P网络、瞄准战胜癌症的P2P计算项目。这个网络远比任何单一的超级计算机更强大。项目的执行很简单,每个用户通过因特网连接下载一个小程序到他/她的计算机,这个程序以屏幕保护的方式运行,并且只在计算机空闲的时候工作。程序的目的是寻找治疗癌症的药物。它测试化学药物,通过“变形和组合”每一个数以亿计的分子结构来检测它们是否会影响与癌症治疗有关的蛋白质。当一个给定的分子结构触发了与目标蛋白质的作用时,它被通过因特网传输回协调者。

项目在一定意义上成功了:它已经吸引了超过一百万台PC参与,到去年五月份时贡献已经积累到200000年的CPU运行时间了。但是对于其他组织或个人开发相似于抗癌程序的P2P项目来说仍是困难重重。下面讨论一下这个方法的弱点和存在的问题。

安全性:参与者在他们下载程序时必须完全信任研究组织。允许P2P程序运行在一台计算机上极大地增加了脆弱性,它打开了一些安全缺口。这些缺口包括:

Ø        删除目标计算机里的文件或目录;

Ø        读写计算机上的文件;

Ø        执行程序或命令如使用调制解调器远程调用;

Ø        连接到其他计算机,执行非法操作,例如黑客攻击。

难以增强P2P应用的安全性来对抗这些滥用,特别是当加入的计算机使用Windows操作系统时更是如此。任何名气超不过英特尔和牛津大学的组织在保证参与者网络的安全性方面都会存在问题。

动机:参与者不会从参与这类的项目中获得任何切实的利益。他们贡献机时只不过是因为他们相信项目的目的。

很多公众或者商业组织拥有数以千计的PC在上午9点到下午5点的工作时间里闲置不用。他们确实是理想的捐赠人,但是没有加入到这类项目中来。为什么呢?首先,项目的研究结果将会出售,扩大牛津大学的财富。其他的学术机构不会赏识这种想法。尽管其他两个抗癌项目成员——英特尔和联合设备——不会从中受到任何益处,大部分观察家作其他假设,甚至只有按照行销和公共关系的处理方法来处理这些问题。这些理解阻止了很多企业参与到类似想法的项目中来。事实上,这些企业是极度不可能的通过直接经济目的吸引到项目的潜在的捐赠者。

执行的效率:在抗癌项目里,参与者必须下载一个程序并且把它安装到自己的计算机里。如果参与者想捐赠处理时间到新的项目,他们必须重复这个过程。维护系统和执行认为如在参与者的计算机上升级程序等等都是极度困难的。这里需要的是一个自动化的方法来储存和升级远端计算机上面的程序。

兼容性:抗癌项目里的软件只能在PC上执行。有很大数量的工作站使用Unix或者其他操作系统,很多是企业里的计算机,并且下班后就闲置。很遗憾的是工作站由于兼容性问题而不能加入这个项目。另外一个大规模的P2P项目——加利福利亚大学的seti@home (setiathome.berkeley.edu)——分析无线电望远镜拾取的信号试图寻找外星智能生物。seti@home项目通过不同的不同平台使用不同的版本解决了兼容性问题。参与者能够根据不同的操作系统如MacOSUnix等等下载相应的版本。这个方案增加了研究者的计算力,但是也增加了维护成本,有众多的版本需要维护和升级。

支撑技术

所有这里提到的要求都能够得到满足。一些问题能够通过最新的支撑软件解决,而其他问题则需要构建基础设施来处理。

Java在很多P2P系统里,我们发现有很多安装不同操作系统和硬件平台的异构系统。在这种结构里,程序的可移植性是最重要的。Java是唯一能够保证“一次编写、到处运行”的承诺的语言。

安全管理:Java设计时就考虑了安全性,安全管理是它的一个特征。通过在安全管理器细化安全策略,用户能够依据预定义的限制控制程序行为。

Web服务和小服务程序:当我们在网上冲浪的时候,我们通过封装的连接来选择一个预期的Web页面,我们的浏览器发送一条信息到远程的Web服务器。信息以超文本传输协议(Hypertext Transport ProtocolHTTP)编码。Web服务器定位相应的Web页面并把它发回浏览器。这个简单的模型对于只想浏览静态Web页面的用户来说是足够的。

一些应用程序需要更多的处理,因此要求动态的Web页面。典型的例子里,Web服务器在它能够组合一个Web页面前必须访问一些记录并进行一些计算。在这种情形下,HTTP消息将卷入了Web服务器端的程序计算。在服务器端,通用网关接口(Common Gateway InterfaceCGI)程序使用除了Java语言外的任何语言编写,而小服务程序是Java程序。Java小服务程序比CGI程序好,因为Java没有兼容性和安全性问题。

 

计算力服务器模型

这种能调用Web服务器上面的一个程序的能力在P2P应用中使用的。Fig2显示了一个使用了服务器和小服务程序的计算服务器模型。在这个模型里我们介绍了一个新概念——同时使用众多服务器计算力的单一

Figure 2. Power server model.

客户计算机。与通常的网络不同点在于通常的网络有很多客户机与一个服务器一起工作。

传统的C/S系统里,服务器通常为客户机提供数据服务。而在这个模型里,我们定义了“计算力”,其意义在于这些计算机向其他用户提供CPU计算能力服务。系统里的每一个计算机在安装了Web服务器包和一些Java程序后就成为了一个计算力服务器。

一台计算机作为客户机。Java应用程序在客户机上执行,分解单一的计算密集的任务为很多小的子任务,并把它们放置在系统等待队列里。应用程序调用服务器上的小服务程序,传输一部分小任务块到小服务程序。小服务程序在服务器上完成任务计算。完成的结果发回客户机。这类模型的性能测试可以在文献[6]里找到。

Web服务器的行为被很好地定义过了。有很多好的服务软件包可供使用,它们大多是自由/共享软件。这些软件包很小且容易安装。任何计算机用户都能够安装Web服务器程序包并允许他的计算机作为计算力服务器。

Figure 3. Coordinator and IP addresses.

在计算力服务器模型里我们需要一个接一个地升级服务器机器。如果我们有大量的服务器,其维护将会很耗时。可以通过自动化来克服这个缺点。因为大部分 Web 服务器具有上载功能,维护的工作能够通过这个功能来减轻。我们可以上载新版本的小服务程序来达到减少维护工作的目的,通过客户计算机上使用一个特别的程序就可以自动完成。如果所有的参与者都在一个组织内部并且他们的计算机连接在一个局域网里面的时候,维护的工作能够进一步地减少。只要一个 Web 服务器和小服务程序的拷贝安装在网络驱动器里。每个计算机都通过单一版本的网络驱动器调用 Web 服务器和小服务程序,因此维护工作是流线型的。

 

将来开发的P2P系统:

一些障碍不是仅仅软件就能够克服的。单单建造可靠的自动机也不能解决传输问题。我们也需要高速公路和加油站,否则就没有人能够从使用汽车中受益。我们必须建造一个计算基础设施才能实现P2P应用的全部好处。

分布式系统的基础设施已经成为了很多研究的主题。一个例子是Globus网格计算项目,其为不同的分布式系统开发了复杂的基础设施。感兴趣的读者可以从文献[2, 3]获得Globus项目的相关信息。但是对于计算力服务器模型来讲,一个简单的基础设施就足够了。

协调者:这个模型的一个问题是很难发现计算力服务器。我们通过在系统里加入一个协调者能够解决这个问题,如Fig3所示。协调者是一台计算机存储了所有计算力服务器的在小服务程序和IP地址。

 

Comparison of P2P models.

客户机把小服务程序存储在协调者上。

任何想捐赠计算力到网络的计算机主人必须注册到协调者,并提供如下信息:IP地址,处理器类型,何时以及有多长时间可用来捐赠,可用的内存数量。

协调者不参与实际的计算,它存储参与者处理能力的信息。这个概念与文献[7]的工作相似。协调者的任务是:

Ø        允许新用户注册;

Ø        维护计算力服务器信息数据库;

Ø        满足用户的计算力需要,传送计算力服务器的IP地址给用户;

Ø        传输小服务程序给计算力服务器。

用户与协调者联系以获得可用计算力服务器的IP地址,并使用这些IP地址初始化计算力服务器上的小服务程序。

对于非常大的P2P项目,每个国家、城市和组织建立一个多级别的协调者非常必要。组织协调者将记录组织里计算机的IP地址。城市协调者将记录该城市所有组织协调者和计算力服务器。全球的系统将包括许多国家、城市和组织协调者。

激励:如果我们欲建立一个由不同组织和个人组成的P2P系统,我们必须向参与者提供一定的激励。一种方法是建立一个协会,其成员(组织或个人)能分享其他成员的计算力。协会的成员承诺连接到因特网议定的时间长,允许其他成员访问计算资源。

也有可能建立一个过剩计算力的市场,个人、组织者能够销售他们没有使用的计算力来赚取一定的收入,这样能够增加投资的回报率并削减计算机的折旧期。

比较:除了克服抗癌项目的所有问题,计算力服务器模型的优点是参与者能够在任何时间开始一个项目,不必升级或者添加软件到计算力服务器。再者,每一个计算机的拥有者相信他/她的计算机是安全的,有他们自己版本的安全管理器来保护。这个模型的限制是程序必须用Java来编写,因为Java是唯一的一种能够跨越所有平台运行的语言。(三种模型的不同点总结在下面的表格里)

 

结论

很多企业等待供应商开发软件产品允许相互共享CPU的计算力。现存的Web服务器技术能够很轻松的使用这里所描述的模型。除了不花费昂贵的金钱在专用的P2P软件包上外,作为被广泛接受的Web服务器的特征,P2P系统使用Web服务器技术很容易维护。Web服务器添加少量的Java程序就可以成为计算力服务器了。

我们提供了一个成本低廉的方法引人注目地增加了计算力。用于交换计算力的P2P网络在将来会很流行。很多组织和个人会发现他们能够以更有力的不同方式获得对计算力的进一步地访问。

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值