以前对分布式系统透明性特征的理解比较模糊,甚至相左。现在来重新理解、陈述地总结一下。首先,我们对透明性做一个通俗的解释。透明性是把事物复杂的细节和特点进行隐藏,也可以简单地理解为通过抽象化或封装的手段对用户和开发人员隐蔽系统或服务的复杂性等,而并非是把细节暴露的意思。
下面我们列出ANSA参考手册和国际标准化组织定义的八种开放分布式处理参考模型的透明性。
-
Access transparency enables local and remote resources to be accessed using
identical operations.
访问透明性:用相同的操作访问本地资源和远程资源。 -
Location transparency enables resources to be accessed without knowledge of their physical or network location (for example, which building or IP address).
位置透明性:不需要知道资源的物理或网络位置(例如,哪个建筑物或IP地址)就能够访问它们。 -
Concurrency transparency enables several processes to operate concurrently using
shared resources without interference between them.
并发透明性:几个进程能并发地使用共享资源进行操作且互不干扰。 -
Replication transparency enables multiple instances of resources to be used to
increase reliability and performance without knowledge of the replicas by users or
application programmers.
使用资源的多个实例提升可靠性和性能,而用户和应用程序员无须知道副本的相关信息。 -
Failure transparency enables the concealment of faults, allowing users and
application programs to complete their tasks despite the failure of hardware or
software components.
故障透明性:屏蔽错误,不论是硬件组件故障还是软件故障,用户和程序员都能过完成他们的任务。 -
Mobility transparency allows the movement of resources and clients within a system
without affecting the operation of users or programs.
移动透明性:资源和客户能够在系统内移动而不会影响用户或程序的操作。 -
Performance transparency allows the system to be reconfigured to improve
performance as loads vary.
性能透明性:当负载变化时,系统能重新配置以提高性能。 -
Scaling transparency allows the system and applications to expand in scale without change to the system structure or the application algorithms.
伸缩透明性:系统和应用能够进行拓展而不改变系统结构或应用算法。
The two most important transparencies are access and location transparency; their presence or absence most strongly affects the utilization of distributed resources. They are sometimes referred to together as network transparency.
References
分布式系统:概念与设计 第五版