📄 201001.htm
字号:
<html><body><span id=Layer1><p><font size=2 color=#3c3c3c face=arial>什麽东西是建立一个有效的分散式环境之必要因素?要怎样将一群个别的电脑转换成一个可使用的、可管理的整体?在过去这几年,我们在电脑工业上对这个问题有许多的经验,或许我们学到最重要的事是:回答这些问题并不简单。分散式的环境引起许多困难的问题。</span><span id=Layer2></font></p><p><font size=2 color=#3c3c3c face=arial>建立一个有效的分散式环境并不简单</span><span id=Layer3></font></p><hr><font face=Arial Black color=#3e77d7 size=3><b></b></font><p><font size=2 color=#3c3c3c face=arial>建立一个有效的分散式环境并不简单</span><span id=Layer4></font></p><hr><p><font size=2 color=#3c3c3c face=arial>第一,分散式环境需要一些分散式的基础架构,需要完整的服务以便让环境变为可用。要如何让这个环境中使用者、电脑与应用程式相关资讯可以使用?分散式环境中的服务与资讯要如何让正确的使用者存取,而避免不该存取的使用者使用?第二,分散式环境应该可允许建立分散式的应用程式。要做好这件事需要解决一大堆困难的问题。举例来说,这些互异的软体该如何沟通呢?它们如何找到对方呢?一个可延展的应用程式要如何支援许多同时上线的使用者,使用Web或其它的东西?最後,一个有效的分散式环境暗喻着管理潜在的大量应用程式、电脑和使用者,横跨不同的建 物、学校或全世界。分散式管理带来了许多挑战,这些挑战必需解决以便建立一个可运作的环境。</span><span id=Layer5></font></p><p><font size=2 color=#3c3c3c face=arial>建立一个分散式的环境需要解决许多复杂的问题</span><span id=Layer6></font></p><hr><font face=Arial Black color=#3e77d7 size=3><b></b></font><p><font size=2 color=#3c3c3c face=arial>建立一个分散式的环境需要解决许多复杂的问题</span><span id=Layer7></font></p><hr><p><font size=2 color=#3c3c3c face=arial>成功地建立一个有效的分散式环境需要正确地使用分散式服务。Microsoft Windows 2000,它是Windows NT 4.0的下一个版本,已将一组功能强大的分散式服务包含在主流的作业系统。许多厂商提供了类似、行之多年的服务(包含Microsoft),Windows 2000的问市第一次将完整的服务成为系统标准的一部份。此外,以最简单的组态方式部署Windows 2000需要使用一些它包含的分散式服务。这本书的目的是协助你了解这些服务,这些服务提供的功能,以及如何将他们拼凑在一起。</span><span id=Layer8></font></p><p><font size=2 color=#3c3c3c face=arial>Windows 2000 中的分散式服务协助你建立一个有效的分散式环境</span><span id=Layer9></font></p><hr><font face=Arial Black color=#3e77d7 size=3><b></b></font><p><font size=2 color=#3c3c3c face=arial>Windows 2000 中的分散式服务协助你建立一个有效的分散式环境</span><span id=Layer10></font></p><hr><a name=201001><font color=#3e70d7 face=arial size=5><b>定义分散式服务</span><span id=Layer11></b></font><p><font size=2 color=#3c3c3c face=arial>什麽是分散式服务?回答这个问题需要先思考网路是如何组织的。几乎今日所有的网路都使用同时使用许多协定,将它们组织成许多层次,如图1-1。</span><span id=Layer12></font></p><p><font size=2 color=#3c3c3c face=arial>网路协定通常组织成许多层次</span><span id=Layer13></font></p><hr><font face=Arial Black color=#3e77d7 size=3><b></b></font><p><font size=2 color=#3c3c3c face=arial>网路协定通常组织成许多层次</span><span id=Layer14></font></p><hr><p><font size=2 color=#3c3c3c face=arial>现在还是很常使用七层的Open Systems Interconnection (OSI)模型来展示网路层,不过现在再也不是这麽回事了-这个模型已有二十多年历史,几乎要淘汰了。在此展示的层次结构是较为有用的,较适合今天的网路环境。</span><span id=Layer15></font></p><hr><font face=Arial Black color=#3e77d7 size=3><b>附注 </b></font><p><font size=2 color=#3c3c3c face=arial>现在还是很常使用七层的Open Systems Interconnection (OSI)模型来展示网路层,不过现在再也不是这麽回事了-这个模型已有二十多年历史,几乎要淘汰了。在此展示的层次结构是较为有用的,较适合今天的网路环境。</span><span id=Layer16></font></p><hr><p><font size=2 color=#3c3c3c face=arial>在图中显示,最底层包含许多类型的子网路(subnetwork),它是实际在机器之间移动位元组的方式。子网路的范例包含区域网路(local area network,LAN),如乙太网路(Ethernet),广域网路(wide area networks,WAN)如讯框传送(Frame Relay)网路,以及许多点对点连线如T-1与T-3线路。</span><span id=Layer17></font></p><br><center><a target=_new href=imagesh/1-1.gif><img border=0 src='imagesl/1-1.gif'></a></center></span><span id=Layer18><center><table border=0 ><td align=center><font color=#3c3c3c face=arial size=2><font size=2 face=arial color=#3e80d7><b> 图1-1</span><span id=Layer19> </b></font>一个在今天典型的网路将它的协定组织成许多层次。</span><span id=Layer20></td></table></font></center><p><font size=2 color=#3c3c3c face=arial>大部份的公司组织使用许多类型的子网路,因此在堆叠图中下一层有一个协定可用来在不同的子网路之间传送资料。这个功能通常称做internetworking,目前这类协定中最广泛使用的是Internet Protocol (IP)。不过IP,和大部份的internetworking协定一样,是不可靠的它,可能会遗漏传送的某些资料。另外,其上的传输层协定(transport layer protocol)可以增加可靠性,确保传送的资料能够毫无遗漏地到达目的地。但并非每一种应用程式都需要这种可靠性,因此也存在着不确保正确传送的简单传输层协定。今天可靠的传输协定最常见的选择是Transmission Control Protocol (TCP),而不可靠的传输协定最流行的选择是User Datagram Protocol (UDP)。</span><span id=Layer21></font></p><p><font size=2 color=#3c3c3c face=arial>TCP IP、TCP与UDP是今日最常见的中间层协定</span><span id=Layer22></font></p><hr><font face=Arial Black color=#3e77d7 size=3><b></b></font><p><font size=2 color=#3c3c3c face=arial>TCP IP、TCP与UDP是今日最常见的中间层协定</span><span id=Layer23></font></p><hr><p><font size=2 color=#3c3c3c face=arial>到目前为止讨论的协定提供一个方法可在连结到任何子网路的电脑之间来移动位元组(或许是可靠地移动)。如果你是个被虐待狂,你可以使用这些协定提供的服务来建立基础的分散式环境。举例来说,可以建立一个分散式应用程式,透过socket这个应用程式化介面(application programming interface,API)直接存取传输协定的服务。在Microsoft环境中,这个API称为Windows Sockets或只称为Winsock。以Winsock为基础的应用程式可能很简单效能很好,也普遍地存在。</span><span id=Layer24></font></p><p><font size=2 color=#3c3c3c face=arial>你可以直接在传输协定你可以直接在传输协定上建立服务</span><span id=Layer25></font></p><hr><font face=Arial Black color=#3e77d7 size=3><b></b></font><p><font size=2 color=#3c3c3c face=arial>你可以直接在传输协定你可以直接在传输协定上建立服务</span><span id=Layer26></font></p><hr><p><font size=2 color=#3c3c3c face=arial>不过,直接在传输层建立一个应用程式有一点点挑战-所有的开发者必须在上面建立一个机制以在不同机器之间移动位元组。企图建立一个真正的分散式环境而只传输位元组的基本服务并不是个好主意。分散式服务是建构在某些传输协定之上,而在应用程式之下的,提供分散式环境的基础架构。因为分散式服务是实作在分散式应用程式与传输层之间(也就是在中间),因此有时也被称为中介层(middleware)。不管它们的名称是什麽,一组功能强大的服务协助你建立一个有效地分散式环境。</span><span id=Layer27></font></p><p><font size=2 color=#3c3c3c face=arial>建立公用的分散式服务比直接在传输协定建立服务较有意义</span><span id=Layer28></font></p><hr><font face=Arial Black color=#3e77d7 size=3><b></b></font><p><font size=2 color=#3c3c3c face=arial>建立公用的分散式服务比直接在传输协定建立服务较有意义</span><span id=Layer29></font></p><hr><p><font size=2 color=#3c3c3c face=arial>该有哪些分散式服务?有理智的人可能对答案会有争论,不过思考基本的分散式服务有时是很有用的,大约分为两大类:</span><span id=Layer30></font></p><font size=2 color=#3c3c3c face=arial><ul><font size=2 face=arial color=#3c3c3c><li><font size=2 face=arial color=#3e80d7><b> 基础架构服务</span><span id=Layer31> </b></font>这类服务包含目录服务,让分散式环境中的资源更容易找寻,以及安全性服务,控制这个环境中的对资料与服务的存取。你可能会争辩还有许多的服务是属於这一类,不过为了要让这本书讨论的深度一致,我挑选了专注在目录服与与安全性服务。</span><span id=Layer32></li><br></font><font size=2 face=arial color=#3c3c3c><li><font size=2 face=arial color=#3e80d7><b> 应用程式支援的服务</span><span id=Layer33> </b></font>在这个类别中的一组服务可支援分散式应用程式的建立,利用的协定包含:remote procedure call (RPC)、讯息伫列,或透过Hypertext Transfer Protocol (HTTP)从Web存取。这个类别还包含许多服务,以便更容易地建立更具延展性、更正确的分散式应用程式,如执行牵涉到多个资料库的交易服务。</span><span id=Layer34></li><br></font></ul></font><p><font size=2 color=#3c3c3c face=arial>在Windows 2000中某些分散式服务也是前版Windows NT的服务之一部份,而在这个版本中又加了许多新的服务。不管起源为何,这些服务组织在一起成为一组功能强大的服务以提供建立分散式计算环境的稳固基础。</span>
</body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -