首页> 外文期刊>Journal of Functional Programming >A theory of RPC calculi for client–server model
【24h】

A theory of RPC calculi for client–server model

机译:客户-服务器模型的RPC计算理论

获取原文
获取原文并翻译 | 示例
           

摘要

With multi-tier programming languages, programmers can specify the locations of code to run in order to reduce development efforts for the web-based client-server model where programmers write client and server programs separately and test the multiple programs together. The RPC calculus, one of the foundations of those languages by Cooper and Wadler, has the feature of symmetric communication in programmer's writing arbitrarily deep nested client-server interactions. The feature of the calculus is fully implemented by asymmetric communication in trampolined style suitable for the client-server model. However, the existing research only considers a stateless server strategy in which all server states are encoded for transmission to the client so that server states do not need to be stored in the server. It cannot always correctly handle all stateful operations involving disks or databases. To resolve this problem, we first propose new stateful calculi that fully support both symmetric communication from the programmer's viewpoint and asymmetric communication in its implementation using trampolined style. All the existing calculi either provide only the feature of asymmetric communication or propose only symmetric implementation suitable for the peer-to-peer model, rather than the client-server model. Second, the method used to design our stateful server strategy is based on a new locative type system which paves the way for a theory of RPC calculi for the client-server model. Besides proposing the new stateful calculi, this theory can improve the existing stateless server strategy to construct new state-encoding calculi that eliminate runtime checks on remote procedure calls present in the existing strategy, and it enables us to design a new mixed strategy that combines the benefits of both kinds of strategies. As far as we know, there are no typed multi-tier calculi that offer programmers the feature of symmetric communication with the implementation of asymmetric communication under the three strategies together.
机译:使用多层编程语言,程序员可以指定要运行的代码的位置,以减少基于Web的客户机/服务器模型的开发工作,在该模型中,程序员分别编写客户机和服务器程序,并一起测试多个程序。 RPC演算是Cooper和Wadler编写的那些语言的基础之一,它在程序员编写任意深层嵌套的客户端-服务器交互时具有对称通信的功能。微积分的功能完全通过适用于客户端-服务器模型的不对称通信完全实现。但是,现有研究仅考虑无状态服务器策略,在该策略中,所有服务器状态都经过编码以传输到客户端,因此不需要将服务器状态存储在服务器中。它不能总是正确地处理涉及磁盘或数据库的所有有状态操作。为了解决这个问题,我们首先提出了新的有状态计算,该状态计算既从程序员的角度完全支持对称通信,又在使用trampolined样式的实现中完全支持非对称通信。所有现有的演算要么仅提供不对称通信的功能,要么仅提出适用于对等模型而不是客户端-服务器模型的对称实现。其次,用于设计我们的有状态服务器策略的方法基于一种新的定位类型系统,该系统为客户-服务器模型的RPC计算理论铺平了道路。除了提出新的有状态计算之外,该理论还可以改进现有的无状态服务器策略,以构造新的状态编码计算,从而消除对现有策略中存在的远程过程调用的运行时检查,并使我们能够设计一种新的混合策略,将两种策略的好处。据我们所知,在这三种策略下,没有类型化的多层计算可以为程序员提供对称通信的功能,并且可以实现非对称通信。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号