使用web来协调分布式应用程序

EW 7 Pub Date : 1996-09-09 DOI:10.1145/504450.504486
P. Ciancarini, R. Tolksdorf
{"title":"使用web来协调分布式应用程序","authors":"P. Ciancarini, R. Tolksdorf","doi":"10.1145/504450.504486","DOIUrl":null,"url":null,"abstract":"Original Web middleware does not provide support for multiuser applications, such as groupware or workflow, as its basic nature is that of a passive information system. In fact, all activity is tied to server machines able to execute code using the CGI mechanism.\nEnhanced web browsers supporting applet scripting languages, such as Java [1], allow multithread activity at the user interface. However, there is no integrated middleware to coordinate activities tied to multiple, distributed clients. Coordination has to be centralized at some server to which all users participating in an application have to connect to. Thereby, the activity located at the browser does not really make the application distributed, as applets at the browser cannot connect to other applets providing services to them directly.\nFor instance, think about a service to play chess or poker on the WWW against remote players. Java-enabled browsers can easily be used to build user interfaces including an interactive chessboard and other services, like a text-based messaging system. However, to coordinate a game over the Internet the Java programmer has to use sockets to transmit data and synchronizing events. This is a low-level approach subject to a variety of design and implementation errors.\nIn order to solve such a class of problems, and simplify the design and implementation of distributed applications over the Web, we present here the architecture of the PageSpace, a software platform based on extending Java with coordination technology [3].\nThe PageSpace introduces a notion of active, coordinable objects - the agents - which are able to both use and provide services from an to other agents, without requiring centralized coordination from servers.\nDistributed applications involve heterogeneous machine-, network- and operating-system architectures. Coordinating agents in these environments means to make these heterogeneities transparent to the programmer. Using the PageSpace, transparency of network heterogeneity is achieved by using the Internet middleware underlying the communication platform. Transparency of different hardware architecture and operating systems is provided by Java. PageSpace is built on a set of existing technologies:\nCoordination technology provides the conceptual platform for the coordination of activities amongst asynchronously working collaborating agents. Coordination technology has been initiated by the language Linda [3]. Linda is a minimalistic language,namely it includes a small number of constructs which need to be integrated in a conventional language to get a complete language for distributed programming. The basic conception of uncoupled coordination implicit in Linda has been studied in a large variety of research projects, focusing on parallel, distributed, and open distributed systems, on its theoretical foundations by giving semantics to coordination languages, and on a number of implementation oriented research concerning the embedding of coordination languages and their efficient implementation. For a sample of current researches, see [5].\nWeb technology provides a wide-spread communication and presentation platform to PageSpace. Browsers allow at least the access to the PageSpace and with HTML a uniform graphical interface for the applications can be defined.\nJava technology provides a uniform processing platform. Java is popularized by its integration into standard Web-browsers and is available on all major hardware platforms.\nThe PageSpace integrates these basic building blocks and thereby adds value to them. PageSpace uses Java as the implementation language for the platform, as well as the application programming language enhanced with a high level coordination support for distributed, concurrent agents to Java. The PageSpace adds value to the underlying building blocks by integrating them in a manner in which the extensive reuse and combination of existing and wide-spread complementary technologies leads to a platform that aims at supporting real-life applications. Our guideline is to add the coordinating glue to bind these technologies together, rather than extending them individually.","PeriodicalId":137590,"journal":{"name":"EW 7","volume":"1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1996-09-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":"{\"title\":\"Using the web to coordinate distributed applications\",\"authors\":\"P. Ciancarini, R. Tolksdorf\",\"doi\":\"10.1145/504450.504486\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Original Web middleware does not provide support for multiuser applications, such as groupware or workflow, as its basic nature is that of a passive information system. In fact, all activity is tied to server machines able to execute code using the CGI mechanism.\\nEnhanced web browsers supporting applet scripting languages, such as Java [1], allow multithread activity at the user interface. However, there is no integrated middleware to coordinate activities tied to multiple, distributed clients. Coordination has to be centralized at some server to which all users participating in an application have to connect to. Thereby, the activity located at the browser does not really make the application distributed, as applets at the browser cannot connect to other applets providing services to them directly.\\nFor instance, think about a service to play chess or poker on the WWW against remote players. Java-enabled browsers can easily be used to build user interfaces including an interactive chessboard and other services, like a text-based messaging system. However, to coordinate a game over the Internet the Java programmer has to use sockets to transmit data and synchronizing events. This is a low-level approach subject to a variety of design and implementation errors.\\nIn order to solve such a class of problems, and simplify the design and implementation of distributed applications over the Web, we present here the architecture of the PageSpace, a software platform based on extending Java with coordination technology [3].\\nThe PageSpace introduces a notion of active, coordinable objects - the agents - which are able to both use and provide services from an to other agents, without requiring centralized coordination from servers.\\nDistributed applications involve heterogeneous machine-, network- and operating-system architectures. Coordinating agents in these environments means to make these heterogeneities transparent to the programmer. Using the PageSpace, transparency of network heterogeneity is achieved by using the Internet middleware underlying the communication platform. Transparency of different hardware architecture and operating systems is provided by Java. PageSpace is built on a set of existing technologies:\\nCoordination technology provides the conceptual platform for the coordination of activities amongst asynchronously working collaborating agents. Coordination technology has been initiated by the language Linda [3]. Linda is a minimalistic language,namely it includes a small number of constructs which need to be integrated in a conventional language to get a complete language for distributed programming. The basic conception of uncoupled coordination implicit in Linda has been studied in a large variety of research projects, focusing on parallel, distributed, and open distributed systems, on its theoretical foundations by giving semantics to coordination languages, and on a number of implementation oriented research concerning the embedding of coordination languages and their efficient implementation. For a sample of current researches, see [5].\\nWeb technology provides a wide-spread communication and presentation platform to PageSpace. Browsers allow at least the access to the PageSpace and with HTML a uniform graphical interface for the applications can be defined.\\nJava technology provides a uniform processing platform. Java is popularized by its integration into standard Web-browsers and is available on all major hardware platforms.\\nThe PageSpace integrates these basic building blocks and thereby adds value to them. PageSpace uses Java as the implementation language for the platform, as well as the application programming language enhanced with a high level coordination support for distributed, concurrent agents to Java. The PageSpace adds value to the underlying building blocks by integrating them in a manner in which the extensive reuse and combination of existing and wide-spread complementary technologies leads to a platform that aims at supporting real-life applications. Our guideline is to add the coordinating glue to bind these technologies together, rather than extending them individually.\",\"PeriodicalId\":137590,\"journal\":{\"name\":\"EW 7\",\"volume\":\"1 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1996-09-09\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"3\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"EW 7\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/504450.504486\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"EW 7","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/504450.504486","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 3

摘要

原始的Web中间件不支持多用户应用程序,如群件或工作流,因为它的基本性质是被动信息系统。实际上,所有活动都与能够使用CGI机制执行代码的服务器机器相关联。增强的web浏览器支持applet脚本语言,如Java[1],允许在用户界面上进行多线程活动。但是,没有集成的中间件来协调绑定到多个分布式客户机的活动。协调必须集中在某个服务器上,所有参与应用程序的用户都必须连接到该服务器。因此,位于浏览器上的活动并不能真正使应用程序分布式,因为浏览器上的applet不能直接连接到向它们提供服务的其他applet。例如,考虑一个在WWW上与远程玩家下棋或打扑克的服务。支持java的浏览器可以很容易地用于构建用户界面,包括交互式棋盘和其他服务,如基于文本的消息传递系统。然而,要在Internet上协调游戏,Java程序员必须使用套接字来传输数据和同步事件。这是一种低级方法,容易受到各种设计和实现错误的影响。为了解决这类问题,并简化Web上分布式应用程序的设计和实现,我们在这里提出了PageSpace的体系结构,这是一个基于扩展Java和协调技术的软件平台[3]。PageSpace引入了活动的、可协调的对象—代理—的概念,这些对象能够使用和提供从一个代理到其他代理的服务,而不需要服务器的集中协调。分布式应用程序涉及异构的机器、网络和操作系统体系结构。在这些环境中协调代理意味着使这些异构性对程序员透明。使用PageSpace,通过使用通信平台底层的Internet中间件来实现网络异构的透明性。Java提供了不同硬件架构和操作系统的透明性。PageSpace建立在一组现有技术之上:协调技术为异步工作的协作代理之间的活动协调提供了概念平台。协调技术是由Linda语言发起的[3]。Linda是一种极简主义的语言,也就是说,它包含了少量的结构,这些结构需要集成到传统语言中,以获得用于分布式编程的完整语言。Linda中隐含的解耦协调的基本概念已经在大量的研究项目中得到了研究,重点是并行、分布式和开放的分布式系统,通过给协调语言赋予语义来研究其理论基础,以及一些面向实现的关于协调语言嵌入及其有效实现的研究。有关当前研究的样本,请参见[5]。Web技术为PageSpace提供了广泛的通信和表示平台。浏览器至少允许访问PageSpace,使用HTML可以为应用程序定义统一的图形界面。java技术提供统一的处理平台。Java通过集成到标准web浏览器中而得到普及,并且可以在所有主要硬件平台上使用。PageSpace集成了这些基本构建块,从而为它们增加了价值。PageSpace使用Java作为平台的实现语言,以及应用程序编程语言,该语言增强了对Java的分布式并发代理的高级协调支持。PageSpace通过以一种方式集成底层构建块,从而为它们增加了价值,在这种方式中,现有的和广泛传播的互补技术的广泛重用和组合导致了一个旨在支持实际应用程序的平台。我们的指导方针是添加协调胶水将这些技术绑定在一起,而不是单独扩展它们。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Using the web to coordinate distributed applications
Original Web middleware does not provide support for multiuser applications, such as groupware or workflow, as its basic nature is that of a passive information system. In fact, all activity is tied to server machines able to execute code using the CGI mechanism. Enhanced web browsers supporting applet scripting languages, such as Java [1], allow multithread activity at the user interface. However, there is no integrated middleware to coordinate activities tied to multiple, distributed clients. Coordination has to be centralized at some server to which all users participating in an application have to connect to. Thereby, the activity located at the browser does not really make the application distributed, as applets at the browser cannot connect to other applets providing services to them directly. For instance, think about a service to play chess or poker on the WWW against remote players. Java-enabled browsers can easily be used to build user interfaces including an interactive chessboard and other services, like a text-based messaging system. However, to coordinate a game over the Internet the Java programmer has to use sockets to transmit data and synchronizing events. This is a low-level approach subject to a variety of design and implementation errors. In order to solve such a class of problems, and simplify the design and implementation of distributed applications over the Web, we present here the architecture of the PageSpace, a software platform based on extending Java with coordination technology [3]. The PageSpace introduces a notion of active, coordinable objects - the agents - which are able to both use and provide services from an to other agents, without requiring centralized coordination from servers. Distributed applications involve heterogeneous machine-, network- and operating-system architectures. Coordinating agents in these environments means to make these heterogeneities transparent to the programmer. Using the PageSpace, transparency of network heterogeneity is achieved by using the Internet middleware underlying the communication platform. Transparency of different hardware architecture and operating systems is provided by Java. PageSpace is built on a set of existing technologies: Coordination technology provides the conceptual platform for the coordination of activities amongst asynchronously working collaborating agents. Coordination technology has been initiated by the language Linda [3]. Linda is a minimalistic language,namely it includes a small number of constructs which need to be integrated in a conventional language to get a complete language for distributed programming. The basic conception of uncoupled coordination implicit in Linda has been studied in a large variety of research projects, focusing on parallel, distributed, and open distributed systems, on its theoretical foundations by giving semantics to coordination languages, and on a number of implementation oriented research concerning the embedding of coordination languages and their efficient implementation. For a sample of current researches, see [5]. Web technology provides a wide-spread communication and presentation platform to PageSpace. Browsers allow at least the access to the PageSpace and with HTML a uniform graphical interface for the applications can be defined. Java technology provides a uniform processing platform. Java is popularized by its integration into standard Web-browsers and is available on all major hardware platforms. The PageSpace integrates these basic building blocks and thereby adds value to them. PageSpace uses Java as the implementation language for the platform, as well as the application programming language enhanced with a high level coordination support for distributed, concurrent agents to Java. The PageSpace adds value to the underlying building blocks by integrating them in a manner in which the extensive reuse and combination of existing and wide-spread complementary technologies leads to a platform that aims at supporting real-life applications. Our guideline is to add the coordinating glue to bind these technologies together, rather than extending them individually.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信