成功的管理分布地域的开发

发表于:2007-8-22 14:49

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Rational Edge    来源:网络转载

分享:

2.3 VOB和视图大小的影响

        VOB维护着所有基于源代码的修改信息,随着时间推移,它的大小将变得相当大。控制VOB物理存储空间大小的机制是在VOB服务器上设置的。VOB服务器地设置主要集中在开发和Build过程上,因为在这里能收集到最多的用来Build的数据。合适的配置、调整以及VOB服务器的可用性,这些都是ClearCase产品环境的基本原则。

        旧的不再使用的VOB不需要保存,以便充分节约空间。主要问题在于是应该拥有一个大的VOB还是几个小的VOB,关键在于性能与易管理性的平衡。在下面的情况下,大的VOB将带来性能的瓶颈:

  • 大的VOB通常由很多开发人员使用,它将很可能在VOB服务器上带来网络争用问题。
  • 在VOB中保持大量的文件也将带来磁盘I/O资源的争用问题,因为多个视图都需要访问VOB文件用来Build或者把它们放到cleartext pool中。
  • VOB增大后ClearCase将消耗更多的内存和CPU资源。

        一般来说,你应该考虑把一个大的VOB按照有明确意义的方式分为几个小的VOB。如果VOB只有很少的使用率,那么它的大小不应该成为问题。另一方面,如果系统管理员的资源比较缺乏,而且只有少量的开发人员,这时使用大的VOB是有利的。

        从2002版本开始,ClearCase VOB在其数据库中不再有记录数的限制。但是当VOB数据库的大小达到接近于两倍的VOB服务器的内存大小时,VOB的访问性能将开始显著下降。

3 ClearCase期望的硬件特性

        选择硬盘配置和ClearCase平台时,需要考虑很多因素。例如开发组的大小、网络拓扑、地理位置分布等等,这些都将对硬件解决方案产生很大的影响。

        在具体的部署建议之外,其它一些因素也是很重要的:

  • 高性能: 为了稳定的、可预测的时间响应。
  • 可靠性和可用性: 为了最大的正常运行时间。
  • 可测量性: 为了评估将来增长的需求
  • 有效的支持组织: 为了支持用户采用ClearCase。

图 3: ClearCase环境的系统组件
图 3: ClearCase环境的系统组件

3.1 VOB 服务器的规格

        如果用户为ClearCase准备一个强大的专门的服务器,将更有可能成功安装ClearCase。虽然从技术上并没有什么能够阻止用户在ClearCase服务器上安装第三方的软件,但这已经证明不是一个好的选择。

        VOB服务器定义为一台专门为了ClearCase的VOB服务的机器。在一个网络中可能有多台VOB服务器。为了最理想的性能,VOB服务器应该具有以下特点:

3.1.1 专门的机器

        VOB服务器应该只完成ClearCase任务:

  • 不要在VOB服务器上进行编译、Build和测试工作。
  • 不要在VOB服务器上运行ClearCase 视图。
  • ClearCase视图与VOB竞争同样的资源;为了管理需要,可以在VOB服务器上拥有少量的视图。
  • 不要在VOB服务器上运行其它的第三方软件 (如DB2或者 Informix)。
  • VOB服务器不应该作为:
    • 网关服务器或者 UUCP/Internet 代理服务器。
    • NFS 服务器,除为ClearCase VOB使用之外 (没有邮件功能,没有用户根目录功能)。
    • NIS/DCE/AFS 主服务器或者 Windows 域服务器。
    • Web服务器。
  • VOB服务器上不允许直接用户登陆。

        然而,VOB服务器可以同时作为License服务器而不会产生明显的性能问题。在有一个VOB服务器的地方,把VOB服务器同时用作ClearCase注册服务器和License服务器是有意义的,这样可以降低系统失败点。

3.1.2 足够的内存

        为获得较好的性能,在多数情况下建议全部VOB数据库的一半容量驻留在服务器的物理内存中。这是由于把VOB读到内存中可以充分降低对磁盘访问的需求,从而对增加性能有利。因此,一个只有256M内存的服务器只能支持很小的开发组的VOB。这个假定基于服务器上每个VOB的数据库信息都被同时访问,因此这是一个保守的估计。有可能VOB拥有大量的单元,这些单元与关联的小数据库相关。相对于其它需要更多的强烈的读/写操作(或者参与大的audited build)的VOB,这些处于只读状态的VOB(或者没有audited build)不需要那么多的资源。

3.1.3 快速的磁盘 I/O

        对于经常处于日常更新状态如每晚的Build或者每日的开发工作的VOB来说,一个高性能的I/O子系统是必要的。下面这些点强调了对于ClearCase服务器有一个快速的磁盘I/O的必要性:

  • 足够的磁盘控制器
    • 对于频繁读写的VOB来说,建议在SCSI总线上,一个硬盘对应一个控制器。
    • 磁盘阵列以及硬件的RAID系统也可以增加性能。
    • 在一个通道上用菊花链连接几个硬盘将导致严重的性能降低。
    • 如果磁盘控制器为多于一个的硬盘服务的话,它最好支持多个通道。但最好的性能是每个硬盘有专门的控制器和通道。
  • 不要把VOB放在一个硬盘分区上,使用多个硬盘以平衡负载。
  • 保存在硬盘上的VOB的最小建议容量是2G。
    • 依赖于项目产生多少代码,这个数据可以变化。
    • 更大的项目可以考虑使用IBM ESS等的需求。
  • RAID
    • ClearCase可以在任何RAID配置下工作,但硬件RAID是首选的。
    • 基于软件的RAID将显著地降低 ClearCase的性能 (特别是在Build时)。
    • 相对于RAID 5 ,更加建议使用RAID 0+1 (镜像和带区)。
    • RAID配置的细节可以参考 此定义
  • SAN
    • ClearCase 支持SAN,它支持的NAS解决方案由 Network Appliance, Inc 提供。
    • 在大多数部署情况下,推荐的SAN方案是ESS。
    • 使用 GSA作为NAS设备也可以被评估。
  • 足够的网络带宽
    • ClearCase 视图和VOB的主机应该在同一个子网,从一个机器访问另一个不需要使用路由。
    • 如果现有的LAN已经过于饱和,你可以考虑为ClearCase 机器加一个子网(例如,在VOB服务器和配置View的机器上加一块附加网卡)
    • 最好的解决方案是对于VOB服务器和视图客户端使用100MB的网络或者更高(FDDI, CDDI, ATM, 快速以太网,等等)。
    • 在交换网络环境中使用ClearCase 时,支持10/100 baseT 的交换机通常已经足够了。

3.1.4 服务器资源优先级

        在规划 ClearCase环境时,上面提到的因素都对ClearCase能工作得多好产生重要的影响(与项目大小相关)。机器资源影响的优先级顺序如下:

  1. 内存
  2. 磁盘 I/O (非常接近于内存)
  3. 网络
  4. CPU

3.2 视图服务器规格

        在一个地方可以选择使用一个或者多个视图服务器。视图服务器并不总是最优性能的,但是有很多因素指导着为什么采用这样的选择:

  • 开发者没有支持ClearCase的机器。
  • 开发者的主目录在他们本地没有备份,或者他们没有本地硬盘空间。
  • 管理和备份单个的机器比多台分布的机器要容易。
  • 由于NIS的安全原因

        视图服务器与VOB服务器有很多类似的地方,因为视图也是一个本地数据库。视图服务器也应该是一台专门的服务器,但是他的内存和磁盘I/O的容量由下面因素决定:视图服务器上要呈现多少个视图,以及视图使用的方式 (开发、Build、测试、发布等等)。

        如果开发者登陆到他自己的视图服务器工作的话,对视图服务器的资源需求并不是那么高。建议开发者工作在支持 ClearCase的桌面平台,使用本地视图多于使用视图服务器。在进行每晚的Build或者发布工作时,需要好的磁盘I/O。在视图服务器和相应VOB服务器之间不应该有路由。

52/5<12345>
2023测试行业从业人员调查问卷已开启,千元大奖正在等你~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2023
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号