Domino开发及系统性能优化
- 格式:ppt
- 大小:507.00 KB
- 文档页数:24
如何提高Domino服务器性能如何提高Domino服务器性能通过性能监测和分析,您可以知道服务器的运行状况,即在当前的工作负载下服务器是否出色运行。
正如网络中的瓶颈一样,它可以帮助您找到服务器配置中的限制因素。
通过下面十个步骤,您可以最大限度地提高Domino服务器的性能:(一)了解您的配置Domino管理员应该知道所支持的服务器的配置。
任何一个服务器的主要元件有内存、CPU、磁盘(包括逻辑的和物理的),其它元件诸如在线缓冲内存以及磁盘控制器的数量等,也是比较重要的。
下面是一些附加的注意事项,可以使您避免发生配置相关的问题:1)使用尽可能快的磁盘(例如10,000 RPMs)。
2)在软件RAID上使用硬件RAID,这样速度更快,并且可以减少CPU的负载。
3)一个充足的磁盘子系统可以减少内存需求,因为较少的临时I/O来占用内存。
4)对于Windows NT平台,整理磁盘碎片能充分提高性能。
建议每周整理磁盘碎片一次。
5)确保服务器即使是在最大负载时,也至少有4MB内存可用(10 到20MB 更好)。
要注意的是,平台的缓存策略有可能会起阻碍作用。
6)标准的服务器配置对于Domino服务器不一定是最优的,重要的事情是足够的磁盘和控制器。
您可以使用硬件销售商的NotesBench基准数据作为指导。
(二)通过物理磁盘来分配I/O通常物理的和逻辑的磁盘结构是人们经常忽略的系统资源,是最经常过载使用的。
在很多Domino服务器上提高性能的最好办法是通过不同的物理磁盘来分配I/O。
理想的情况是,将下面与I/O相关的文件放在不同的物理磁盘上:1)不同平台的页面文件2)您的NSF文件3)Domino R5 事务日志如果您能将它们放在不同的控制器上,那是最好的。
这个方法是通过在总线、控制器、端口和磁盘上分发负载来提高I/O吞吐量。
因此,最好是使用几个小磁盘,而不是一个容量大的磁盘。
特别地,您将R5 事务日志与其它磁盘活动隔离地越开,您的服务器性能就越好。
Lotus Domino 各版本特点介绍Lotus Domino作为协同办公的基础平台,在协同办公领域一直处于主导地位。
Domino产品线在IBM公司的大力推动下已发展至最新的R8.5的版本。
以下分别对R5至R8.5的特点进行介绍。
1、Lotus Domino各版本特点介绍1.1Lotus Domino R5Lotus Domino R5是实现web编程的重要里程碑式的版本,但也是面向web编程的第一代系统,在编程脚本支持、服务器性能支持等方面存在很多有待完善的功能弱点。
1.2Lotus Domino R6Domino R6是在2002年10月开发完成的,相比于Domino R5,它具有以下优势:●表现得最好――Domino 5 和Domino 6 的比较表明了Domino 6 在所有类别中表现得最好。
●使用现有服务器支持更多用户――每用户的CPU 需求减少了23% 之多,使得服务器能够满足更多用户的需要。
●提高消息传送速度――网络压缩能够减少34% 至52% 的网络流量,使得消息传送更快速。
●节省数据存储空间――数据压缩把消息尺寸减小了45% 至65%,从而节省宝贵的存储空间,并且支持更快速的备份。
1●支持更快速的消息更新――流式复制对消息更新的复制速度提高了36%至45%。
●使管理员的工作更容易――更好的监控和管理工具提高了管理员的生产率。
●更快地传输数据――通过结合使用附件压缩、网络压缩和流模式复制,数据传输速度最大可提高50%。
●能够提高客户满意度――通过高达30% 的响应时间改善来实现。
●更好地利用服务器――支持相同服务器上的多种版本或者分区,以及支持多种语言,从而能够支持服务器合并。
●保持用户在线时间更长――自动重启和恢复功能提高了服务器可用性。
●帮助平衡工作负载――使用从活动趋势分析和Tivoli analyzer 获得的统计数据来实现。
1.3Lotus Domino R7Domino R7.x于2005年9月份正式发布。
LotusNotesDomino7应用程序性能:第2部分:优化数据库视图-电脑资料在“Lotus Notes/Domino 7 应用程序性能,第 1 部分” 中,我们探讨了如何通过有效地使用数据库属性和文档集合而改善Lotus Notes/Domino 7 应用程序的性能,。
在第 2 部分中,我们将解释如何构建高性能的视图。
与第 1 部分中一样,本文也提供了许多代码片段,您可以重用和加以修改,从而满足自己的需要。
通过很多年对应用程序性能问题的分析,我们发现问题和解决方案都经常涉及到视图。
通常,视图索引就是问题。
本文解释这如何会发生,以及您可以采取什么措施来诊断和解决这种类型的问题。
但是过去几年里出现得更频繁的是另一种类型的视图性能问题。
这涉及到显示读者访问受控文档(reader access controlled document)的视图。
这些视图中出现的性能问题通常与索引无关,所以我们要花点时间来分别讨论这些问题。
本文假设您是一位有经验的 Notes/Domino 应用程序开发人员。
理解视图索引(Update 任务)在诊断涉及视图索引的性能问题之前,您必须知道的第一件事是,索引过程是如何工作的。
索引一般由Update 任务来完成,该任务每15 分钟在Domino 服务器上运行一次。
技术上说,可以调整这个间隔,但是这涉及到重命名文件,所以实际上很少这么做。
当Update 任务运行时,它查找服务器上每个在Update 任务最近一次运行之后进行了修改的数据库。
然后它会刷新这些数据库中的视图。
根据我们的经验,假定刷新生产环境中生产数据库中的一个普通视图要花大约 100 毫秒是合理的。
要问的逻辑问题是,“什么标志着视图需要更新?” 每当下面任何一种情况出现时,视图就需要更新:副本发送一个文档修改到数据库。
用户保存或删除一个文档(并退出数据库)。
路由器传递一个文档。
在如何确定视图是否需要更新方面,Update 任务非常灵活。
Domino开发要点编码语言以及代码优化分析3. 开发要点编码语言以及代码优化分析3.1 编码语言的选择在具体的开发过程中,根据需求性质,DOMINO可以有多种编码语言的选择。
主要有公式、lotusscript、java、javascript语言,比较起来,特别简单的功能和逻辑,用公式实现比较快;复杂的功能和逻辑,用lotusscript比较快。
java语言可以实现多线程,完全面向对象,处理大量文档时,如果程序利用到多线程,比不能利用多线程的lotusscript快。
另外针对于底层开发,LOTUS还有专门的Toolkits支持:按Lotus产品系列来分,Lotus提供下列产品的工具包: Notes/Domino 、Sametime 、QuickPlace 、Discovery Server 、Other。
其中,Notes/Domino和Sametime的工具包比较多,C、C++、Java语言的都有,其他产品的则很少。
从这个角度,也可以看出文档数据处理、协同工作是Lotus系列产品的核心价值所在。
其中,Notes/Domino的工具包有:Lotus C API toolkit Lotus C++ API toolkitLotus Domino Toolkit for Java/CORBA Lotus and Notes Toolkit for COM Lotus Domino Driver for JDBC (简称LDDJ) NotesSQLLotus XML Toolkit(简称DXL) Custom Tag Converion kit(简称DCT)LotusScript Extensions toolkit(简称LSX)在Domino/Notes的Toolkit中,C API的功能最为强大:可以操纵notes数据库中几乎所有的数据对象:数据库及ACL、文档和域、表单、视图和文件夹、代理、可以为Notes客户端的增加附加菜单、可以用来创建附加的Domino服务任务、可以用来扩展Domino/Notes的事件管理。
DominoR5-R7升级建议书(IBM官方文件)1.DominoR5-R7基本升级步骤1.1. 应用测试(Application Testing)●测试内容所有Domino应用,主要做黑盒测试如果定制过pubnames.ntf,需要合并新版本和pubnames.ntf和定制的内容,然后进行测试如果定制过邮箱模板,测试邮箱模板●重点测试Java和C/C++ API程序复杂的表格和排版控制基于R4.5/4.6开发的Web应用通过压力软件测试应用性能●工作结果应用兼容性评估书升级操作计划书(包括回退方案)1.2. 试点(Pilot)参与试点建议试点分两批进行,第一批选择总部,第二批选择3-5个省公司建议包含所有类型的服务器:邮件、应用、SMTP、Hub等建议包含所有应用场景:Cluster、不同时区(如果有海外的服务器)、复制等试点工作重点测试应用测试不同版本并存的兼容性问题总行第一批试点建议作1个月以上的监控,完善升级计划,积累升级经验。
第二批试点为验证性试点,主要验证总行试点方案的完备性,为全行部署做准备。
工作结果升级操作计划书1.3. 全局部署(Production)按照试点升级验证的计划,在全集团范围内迅速实施。
1.4. 建议的升级顺序建议升级顺序:管理客户端->Domino目录-> 服务器端-> 客户端-> 邮件模板更新-> 应用服务器升级顺序:Hub服务器->邮件服务器-> SMTP 服务器-> Web服务器-> OA应用服务器-> 其它服务器2.升级计划考虑到XXX Domino系统服务器和用户数量大,系统架构复杂,为了确保Domino/Notes系统能安全、平滑、稳定地升级到新的版本,最大限度地减少对最终用户的影响,需要制定升级计划、设计升级方案、验证升级方案并进行升级试点和技术培训,以稳妥的方式升级到R7。
本章节覆盖了升级计划的制定及升级到Domino R7需要考虑的问题。
根据许多资深的Domino管理员和咨询人员的经验,我们对Domino系统管理员们提出了一些建议,以帮助他们维护Domino系统的正常运行。
这些建议是针对Domino R5的,而且只涉及到最基本的维护工作,每个系统管理员还需要根据自己系统的特殊要求进行进一步的维护工作。
在提出这些建议之前,必需强调一点:《Domino 5 管理员帮助》应当是所有维护任务的出发点,管理员在进行维护工作之前一定要查阅管理员帮助中相应的主题,以确保操作步骤的正确。
1. 保存验证者ID文件及其口令验证者标识符文件(cert.id及所有组织单元的ID文件)是Domino系统中最重要的的文件。
特别是cert.id,所有其它的ID 文件都是由它创建的。
如果丢失了这个文件或忘记了它的口令,就无法在创建新的服务器和用户了。
因此,从系统建立之初就要注意保存验证者ID文件及其口令。
一定要将它保存在安全的地方并作备份,不要将它放在共享的网络驱动器上;将口令记录下来,但不要将口令告诉无关的人员。
注意不要将口令设为“password”或其它易猜的单词。
2. 定期运行Compact、Fixup和Updall任务Compact、Fixup和Updall任务是服务器自身的维护性任务。
Compact用于释放数据库中的无用空间;Fixup检测无效的文档和损坏的数据库,并尝试修复它们;Updall重建视图索引和全文索引。
这三个任务至少每周要运行一次。
可以按以下步骤设置它们的运行时间。
1). 在Domino管理员客户端中打开要管理的服务器2). 在“配置”标签下,展开“服务器”-“程序”,点击“添加程序”3). 在“基本”标签下,“程序名”中输入任务的名称,即Compact、Fixup或Updall“命令行”中输入所需的命令行选项“运行的服务器”中输入运行此任务的服务器的层次名4). 在“日程安排”标签下,将日程安排设为“启用”,并按需要设置任务启动的时间如果到了Compact、Updall和Fixup所安排的运行时间,而系统正在执行其它任务,这三个任务可能不被执行。