开发工具分享
  • 首页
  • 计算科学
  • 文化旅游
  • 项目和网站
    • OSSEZ 计算技术
    • USRealEstate 社区
    • 地区文化
    • CWIKI.US
    • BUG.OSSEZ.COM
    • RSS.OSSEZ.COM
Computer Science
Confluence

Confluence 6 垃圾收集性能问题

这个文章与 Oracle 的 Hotspot JVM 虚拟机的内存管理为参照的。这些建议是我们在对大的 Confluence 安装实例用户进行咨询服务的时候得到的最佳配置方案。 请不要在 Confluence 中使用 Concurrent Mark Sweep (CMS) ,除非你得到了 Atlassian 支持小组的明确说明。这个需要额外的手工调整和测试,通常这个会降低系统的性能。 使用一个小的 heap 在不出现 OutOfMemory 错误的情况下,保持你的 heap 尽可能的小。当你遇到了 OutOfMemory 错误,需要增加 heap 的时候,我们推荐你按照 512MB 到 1 GB 的顺序进行增加。如果你还持续的获得 OutOfMemory 错误,那么你可以考虑再继续增加 512 MB 或者 1GB。你可以持续进行增加,直到你不再出现 OutOfMemory 错误。不要尝试一次增加到位,这样可能会导致垃圾收集时间的增长。 删除所有老的收集参数 只有在完全的 GC 后,JVM 将会重新定义 Eden, Survivor 等参数的大小,这个大小是基于 GC 处理来确定的。这个将会保证 GC 处理程序能够处理真实的垃圾情况和垃圾对象。在绝大部分情况下,能够保证 JVM 为你提供更好的性能。 如果你的 JVM 中添加了参数,当在垃圾收集的时候遇到了困难。那么我们建议你删除掉你在 GC 前添加的参数,除非你添加的这些参数是为了解决一些特定的问题。你现在应该考虑如何避免在 GC 中出现的问题,而不是导致其他的问题。 检查你的虚拟机(VM)资源 如果你运行 Confluence 在一个 VM 上的话,检查这个 VM 没有使用 swap 文件。 如果这个 VM 了使用了 swap 文件,那么当 JVM 进行垃圾收集的时候,将会把这些 swap 文件载入到内存后清理他们,这个将会导致垃圾清理进程的长时间暂停。为了避免使用 swapping, ballooning 和 bursting,将这些信息载入到 VM 的内存中。 手动清理 如果你按照上面的说明进行了操作后还遇到了一些困难,但是你还是希望能够提高系统的性能,我们推荐你使用Garbage Collection (GC) Tuning Guide 页面提供的方法。这个页面将会知道你如何达到你自己期望的性能指标(throughput/footprint/latency)和如何进行调整。 查看你的垃圾收集日志 How to Enable Garbage Collection (GC) Logging 和使用类似  Chewiebug's GCViewer 工具来查看结果的日志。 https://www.cwiki.us/display/CONF6ZH/Garbage+Collector+Performance+Issuese

2018年10月08日 0Comments 922Browse 0Like Read more
Confluence

Confluence 6 启用 HTTP 压缩

在屏幕的右上角单击 控制台按钮 ,然后选择 基本配置(General Configuration) 链接。 在左侧的面板中选择 通用配置(General Configuration)。 启用 HTTP 响应压缩(Compress HTTP Responses)。 你可以配置那些内容在传输的时候被压缩,这些配置是在 Confluence 中的。在默认的情况下,下面的 mime 类型将会被压缩: text/htmltext javascript text/css text/plain application/x-javascript application/javascript 如果你希望修改压缩内容的类型,添加一个替代的 urlrewrite-gzip-default.xml 文件到  WEB-INF/classes/com/atlassian/gzipfilter/ 目录中。这个目录在你的 Confluence 安装目录中。一示例文件如下面链接中的内容:https://confluence.atlassian.com/doc/files/13204/149258252/1/1206408412991/urlrewrite-gzip-default.xml。这个并不代表你需要修改这个文件。 https://www.cwiki.us/display/CONF6ZH/Compressing+an+HTTP+Response+within+Confluence

2018年10月07日 0Comments 887Browse 0Like Read more
Confluence

在 Confluence 中启用 HTTP 响应压缩

Confluence 能够支持 HTTP 的 GZip 传输编码。这个意味着 Confluence 将可以把数据压缩后传输给用户,这种配置能够针对不稳定的互联网状态下的传输速度缓慢和不稳定并且能够降低 Confluence 服务器的带宽的消耗。 当你有下面的情况的时候,你可以考虑打开 Confluence 的 GZip 编码: 用户正在使用互联网访问 Confluence ,或者一个 WAN 的连接带宽有限。 你希望降低在 Confluence 和客户端直接的传输数据量。 如果你是使用本地局域网,或者你的 WAN 的带宽足够,速度也比较快的话。你就可以考虑关闭 Confluence 的 GZip 编码了。如果网络带宽已经足够快,并且在 Confluence 和客户端之间并不存在显著的带宽问题,你就没有必要打开这个功能了,因为对数据进行压缩需要额外的 CPU 资源,并且还有可能降低每次 Confluence 请求的响应。   https://www.cwiki.us/display/CONF6ZH/Compressing+an+HTTP+Response+within+Confluence

2018年10月07日 0Comments 836Browse 0Like Read more
Confluence

Confluence 6 识别慢性能的宏

Page Profiling 给你了有关页面在载入的时候操作缓慢的邪教,你可以将下面的内容添加到调试(debug)级别: Version 3.1 及其后续版本 设置包名字为 com.atlassian.renderer.v2.components.MacroRendererComponent 到 DEBUG 级别。你可以在 管理(Administration) >> Logging and Profiling 中进行设置。 3.1 之前的版本 下载 WikiMarkupParser.class,你可以在 attachments to this page 页面中找到,生成的日志结果如下: 2009-04-23 10:27:54,789 DEBUG [http-8080-1] [atlassian.renderer.v2.WikiMarkupParser] parse Entering macro rendering. Processed text: {spaces} 2009-04-23 10:27:55,768 DEBUG [http-8080-1] [atlassian.renderer.v2.WikiMarkupParser] parse Exiting macro text rendering. Total time: 979ms 2009-04-23 10:27:55,785 DEBUG [http-8080-1] [atlassian.renderer.v2.WikiMarkupParser] parse Entering macro rendering. Processed text: {create-space-button} 2009-04-23 10:27:55,857 DEBUG [http-8080-1] [atlassian.renderer.v2.WikiMarkupParser] parse Exiting macro text rendering. Total time: 72ms 2009-04-23 10:27:55,862 DEBUG [http-8080-1] [atlassian.renderer.v2.WikiMarkupParser] parse Entering macro rendering. Processed text: {recently-updated-dashboard:dashboard|showProfilePic=true} 2009-04-23 10:27:56,704 DEBUG [http-8080-1] [atlassian.renderer.v2.WikiMarkupParser] parse Exiting macro text rendering. Total time: 842ms 2009-04-23 10:27:56,707 DEBUG [http-8080-1] [atlassian.renderer.v2.WikiMarkupParser] parse Entering macro rendering. Processed text: {favpages:maxResults=10} 2009-04-23 10:27:56,889 DEBUG [http-8080-1] [atlassian.renderer.v2.WikiMarkupParser] parse Exiting macro text rendering. Total time: 182ms 希望添加类: 添加下面的行到文件 <confluence-install>/confluence/WEB-INF/classes/log4j.properties 中: log4j.logger.com.atlassian.renderer=DEBUG 添加正确的 WikiMarkupParser.class 到 /confluence/WEB-INF/classes/com/atlassian/renderer/v2。你需要手动创建 renderer 和 v2 文件夹。 在页面属性合并中,这个配置应该能够给你在页面载入的时候那些插件消耗了最多的世界。你也可以使用这个工具来找到你的 Confluence 使用了那些宏: How to Search Confluence for Uses of a Macro。 结论 结合 performance tuning 页面中提供的技巧,或者打开指定宏的提高请求。在一些情况下,可能没有系统性能的结论 —— 你需要避免对过多的宏进行日志。 https://www.cwiki.us/display/CONF6ZH/Identifying+Slow+Performing+Macros

2018年09月19日 0Comments 1218Browse 0Like Read more
Confluence

在启用属性的情况下启动 Confluence 6

在一些情况下,你可以希望 Confluence 在系统启动的时候就对属性文件进行打印。如果你的 Confluence 经常进行重启,并且你可能忘记来启动针对系统诊断的属性文件日志开关。 编辑 CONFLUENCE_HOME\confluence\WEB-INF\web.xml 文件。你应该可以在文件中看到与下面输出内容类似的行。设置 autostart 参数为 true: <filter> <filter-name>profiling</filter-name> <filter-class>com.atlassian.confluence.util.profiling.ConfluenceProfilingFilter</filter-class> <init-param> <!-- specify the which HTTP parameter to use to turn the filter on or off --> <!-- if not specified - defaults to "profile.filter" --> <param-name>activate.param</param-name> <param-value>profile</param-value> </init-param> <init-param> <!-- specify the whether to start the filter automatically --> <!-- if not specified - defaults to "true" --> <param-name>autostart</param-name> <param-value>true</param-value> </init-param> </filter> 如果你希望 Confluence 在重启的时候不记录属性日志或者你的属性日志过大的话,你可以将这个参数重新设置为  false 。   https://www.cwiki.us/display/CONF6ZH/Troubleshooting+Slow+Performance+Using+Page+Request+Profiling

2018年09月19日 0Comments 1009Browse 0Like Read more
Confluence

Confluence 6 属性的一个示例

下面是有关 Confluence 页面被调用的前几行的访问概述。 [344ms] - /display/ds/Confluence+Overview [313ms] - SiteMesh: parsePage: http://localhost:8080/display/ds/Confluence+Overview [313ms] - XW Interceptor: Before defaultStack: /pages/viewpage.action (ViewPageAction.execute()) [0ms] - SpaceAwareInterceptor.intercept() [16ms] - PageAwareInterceptor.intercept() [0ms] - AOP: PageManager.getPage() [16ms] - AOP: PermissionManager.hasPermission() [0ms] - AOP: SpacePermissionManager.hasPermission() [16ms] - AOP: SpacePermissionManager.hasPermission() [0ms] - AOP: SpacePermissionManager.hasPermission() [0ms] - AOP: SpacePermissionManager.hasPermission() [281ms] - XW Interceptor: After defaultStack: /pages/viewpage.action (ViewPageAction.execute()) [281ms] - XW Interceptor: After validatingStack: /pages/viewpage.action (ViewPageAction.execute()) ...  注意,每一个缩进的行表示的是上一个调用下面的子调用。上面的示例中,Confluence Overview 页面调用完成耗费了 344ms。在这个 344ms 中,313ms 消耗在了 sitemesh 上。   https://www.cwiki.us/display/CONF6ZH/Troubleshooting+Slow+Performance+Using+Page+Request+Profiling

2018年09月19日 0Comments 940Browse 0Like Read more
Confluence

Confluence 6 属性的一个活动

为了启用属性,使用上面描述的方法。 针对所有的用户,属性每一个访问的页面,将会在你的应用服务器中进行记录,直到你对 Confluence 进行重启。请注意每次用户访问一个链接,一个单一的属性将会被打印出来。 确定属性已经被写入到 Confluence 的日志文件中 —— 请参考 Working with Confluence Logs 页面中的内容,来对写入的日志文件和细节进行定位。 对不正常的访问缓慢确定这个问题出现的时间。 拷贝属性中的操作。为了确定哪些属性日志需要进行拷贝的时候,查找相应时间过长的链接。如果一个单一页面访问缓慢的话,那么只有这个页面的属性日志是需要的。如果 Confluence 表现的是间歇性访问缓慢或者整体访问缓慢的话,拷贝所有属性日志文件,直到对可能的访问日志完全包含。 如果 Atlassian  技术支持小组需要你对你的系统进行属性日志进行提交,你可以将你的属性日志全部提交给 Atlassian  支持小组。 使用上面提供的方法,关闭你的属性日志收集。 确定你的属性日志不再打印到 Confluence 的日志文件中了。   https://www.cwiki.us/display/CONF6ZH/Troubleshooting+Slow+Performance+Using+Page+Request+Profiling

2018年09月19日 0Comments 980Browse 0Like Read more
Confluence

Confluence 6 使用页面请求属性来对慢性能进行问题解决

这个页面告诉你如何启用页面请求属性。当这个属性启用以后,你可以查看在 Confluence 任何页面完成的一个记录消耗的时间(毫秒)。如果 Confluence 反应缓慢的话,一个关于慢页面请求的内部请求时间来帮助你识别在页面中是哪些资源导致的页面载入缓慢。 你需要访问 Confluence 服务器来查看一个属性。 启用页面请求属性 如果只希望查看慢性能宏,请参考 Identifying Slow Performing Macros 页面中的内容。  你需要具有系统管理员权限才能启用和禁用属性。 希望启用页面属性: 在屏幕的右上角单击 控制台按钮 ,然后选择 General Configuration链接。 在左侧的面板中选择 日志和属性(Logging and Profiling)。 在显示的 日志和属性(Logging and Profiling)界面中。选择 启用属性(Enable Profiling)。  如属性已经被启用了,那么这个按钮将会被标记为 禁用属性(Disable Profiling)。 希望禁用页面属性: 在屏幕的右上角单击 控制台按钮 ,然后选择 General Configuration链接。 在左侧的面板中选择 日志和属性(Logging and Profiling)。 在显示的 日志和属性(Logging and Profiling)界面中。选择 禁用属性(Disable Profiling)。  如属性已经被禁用了,那么这个按钮将会被标记为 启用属性(Enable Profiling)。 屏幕截图:修改日志级别和属性 https://www.cwiki.us/display/CONF6ZH/Troubleshooting+Slow+Performance+Using+Page+Request+Profiling

2018年09月19日 0Comments 983Browse 0Like Read more
Confluence

Confluence 6 访问日志脚本

日志访问脚本在连接:https://confluence.atlassian.com/download/attachments/133267635/Atlassian-accessLogScripts.7z?version=1&modificationDate=1203314309606&api=v2 中。希望使用这个脚本: 使用 7Zip 解压 7z 文件。 拷贝所有的访问日志到一个叫做 logs 的文件夹中。 运行 Atlassian-processDailyLog.rb。这个命令将会创建一个 csv 文件,这个 csv 文件被命名为 summary.csv 同时还会创建一些目录,这些目录为日志包含的每一个用户的操作。 运行脚本 Atlassian-processDailyLog-hourly.rb <admin/comment/create/edit/search/rss>。每一个脚本将会创建不同的 csv 文件。例如,Atlassian-processDailyLog-hourly.rb admin 将会处理处理第 3 步骤中的 admin 日志。 导入 csv 文件到 www-log-Analysis.xls (summary.csv 到 'raw stats - daily' 列表和 admin.csv 到 'admin -hours' 列表等)来创建负载属性和图形。你需要为已经创建的列表修改行的数量,这个基于日志的大小。 Note 所有的脚本是使用 Ruby 写的,同时假定日志文件包含有字符串 'confluence.atlassian.com-access.log'。如果你使用了不同的文件名,那么这个脚本也需要进行一些修改。修改行:filenameRegexp = Regexp.new('confluence.atlassian.com-access.log') 中的内容。 https://www.cwiki.us/display/CONF6ZH/Access+Log+Scripts

2018年09月17日 0Comments 1017Browse 0Like Read more
Confluence

Confluence 6 高级性能诊断

请在你的系统服务请求中包括下面所有的信息,如果可能的话,你也可以在请求中包括你认为最有可能出现的问题。这样的话,可以避免我们进一步对你系统的问题进行询问。 系统信息 Confluence 服务器 你系统信息的屏幕截图 Confluence's Administration → System Information (或者将页面保存为 HTML 文件) 系统缓存状态的屏幕截图 Confluence's Administration → Cache Statistics (或者将页面保存为 HTML 文件) 找到你 Confluence 运行服务器的硬件配置信息 有几个 CPUs?CPU 的型号是什么,有多少 MHz? 你的服务器上装了多少内存? 在 Confluence 的 JVM 使用了多少服务器的内存?(例如在 JVM 中 -Xmx 和 -Xms 的设置) 在同样的服务器上,你还运行了一些其他的什么服务? Confluence 内容 在你的 Confluence 中有多少注册用户? 在通常的情况下,你的用户会属于多少用户组? 在你的 Confluence 服务器中有多少空间(全局和个人用户)? 平均来说对一个用户可以查看到多少空间? 在i的 Confluence 中有多少页面(你可以在你的数据库中执行下面的 SQL 来进行查看:'select count(*) from content where prevver is null and contenttype = 'PAGE') 在 Bandana  中存储了多少数据(通常被插件来使用存储数据)?(你可以在你的数据库中执行下面的 SQL 来进行查看:'select count(*), sum(length(bandanavalue)) from bandana') 数据库 你 Confluence 服务器使用的数据库的版本? 你 Confluence 访问数据库服务器使用的 JDBC 版本?(针对一些数据库,数据库驱动的 JRA 中中版本的版本号) 你的数据库与 Confluence 服务器是否在同一个服务器上? 如果数据库服务器和 Confluence 服务器在不同的服务器上,那么网络配置是怎么样的? 有关数据库连接细节是什么?数据库的连接池有多大?如果你使用的是标准配置,你可以在 _cfg.xml 文件中找到这个配置信息。如果你使用的是数据源信息,那么这个信息将会存储在你应用服务器上的配置文件中。请获得这些配置信息。 用户管理 你当前正在使用的用户管理或授权?(例如,Jira 或者 LDAP 用户目录或者单点登录) 如果你使用的是外部 JIRA 用户管理,那么在 Confluence 和 JIRA 之间的数据库是如何进行配置的? 如果你使用的是 LDAP 管理: 有关 LDAP 服务器的版本是什么? LDAP 服务器和你的 Confluence 应用之间的配置是什么样的? 诊断 观察到的问题 那个页面存在载入缓慢? 如果是一个特定的 WIKI 页面,请将这个 WIKI 页面中的源代码也同时提交 这个页面总是载入缓慢还是偶尔载入缓慢? 监控数据 在进入发现一个单独的问题的时候,对理解多个性能问题会有所帮助。我们将会处理突然的的高负载,或者缓慢增加的负载,或者有可能是某一种特定情况下的负载情况(每天,每周,甚至每个月),这些请求的增加将会对系统性能造成多大的影响?对系统进行一些持续的监控将有助于你对系统的负载情况进行更多的了解。 下面是一些有关 confluence.atlassian.com 系统的负载情况,显示如下 负载 这个图片显示了连续 2 天中的系统负载情况。这个图片显示了正常的系统负载,这个负载的产生通常是因为用户的活动而产生的,这个没有显示出系统目前没有遇到主要的问题。 增加数据库连接的线程 Java 活动线程数量 有 2 个图片将会显示应用服务器中线程活动数量(第一个图片)和数据库中连接池的大小(第二个图片)。你可以看到突然的系统线程增加将会导致数据库服务器的连接的增加。 数据库连接池大小 数据库连接池的最高值已经超过了 112。这个已经超过了默认的数据库的连接配置(100)。当这个情况出现时候,你在使用 Confluence 的时候出现一些访问的缓慢就不奇怪了。一些用户可能会遇到系统崩溃的信息,因为一些用户的请求不能获得数据库连接。 我们可以通过这些图片很容易的找到我们系统配置的一些问题。这些问题不是非常重要的问题,因为你可以通过简单的增加数据库连接来解决。 我们对 Confluence 进行一些持续的监控(我们使用 Hyperic),如果你在遇到问题的时候能够同时发送你系统的一些监控信息,这个将更有助于帮我们找到你的问题。 访问日志 How to Enable User Access Logging,包括有了如何将日志导出为一个独立文件的相关信息。 你可以将这些对这些文件进行分析,例如 AWStats,或者手动查看那些页面在载入的时候存在载入缓慢。 属性和日志 启用 Confluence 的自带的属性和性能分析,请参考页面 Troubleshooting Slow Performance Using Page Request Profiling 中的内容。 如果只是一个单一的页面相应缓慢,你应该对这个页面进行一系列的请求 如果性能问题是间歇性的出现,或者只是直观的感觉到了系统相应缓慢,你可以使性能监控功能保留监控 30 分钟到一个小时来获得更多有关的信息。 找到 Confluence 的标准输出日志(在日志中将会保留上面的数据)。将整个日志目录进行压缩。 在系统出现反应缓慢的时候进行 Take a thread dump。 CPU 负载 如果你遇到了 CPU 的负载率很高的话,请 install the YourKit profile 然后将 CPU 进行监控的时候附加上 2 个 profiler 的导出。如果 CPU 的查看足够长的话,请间歇 30 到 60 秒进行 profiles。最通常的的 CPU spikes 应该是操作系统的虚拟机。 如果 CPU 的使用率高达 100%,请尝试使用 Live Monitoring Using the JMX Interface,在一些情况下也可以使用 Top threads plugin。 站点指标和脚本 对你安装实例了解用户的访问和使用也是非常重要的。请使用 Access Log Scripts 和 sql scripts 来为你的示例创建状态情况。 下一步 在 https://support.atlassian.com 中打开问题提交请求,然后将你收集的所有数据添加到你需要的请求中。这个将会给我们对你系统进行诊断所需要的足够信息,我们可以根据你提交的信息对你的系统性能进行诊断。当你创建完成问题后,请对你创建的问题进行跟踪。   https://www.cwiki.us/display/CONF6ZH/Requesting+Performance+Support

2018年09月17日 0Comments 1662Browse 0Like Read more
1…185186187188189…240
Archives
  • November 2026
  • October 2026
  • September 2026
  • August 2026
  • July 2026
  • June 2026
  • May 2026
  • April 2026
  • March 2026
  • February 2026
  • January 2026
  • December 2025
  • November 2025
  • October 2025
  • September 2025
  • August 2025
  • July 2025
  • June 2025
  • May 2025
  • April 2025
  • March 2025
  • February 2025
  • January 2025
  • December 2024
  • November 2024
  • October 2024
  • September 2024
  • August 2024
  • July 2024
  • June 2024
  • May 2024
  • April 2024
  • March 2024
  • February 2024
  • January 2024
  • December 2023
  • November 2023
  • October 2023
  • September 2023
  • August 2023
  • July 2023
  • June 2023
  • May 2023
  • April 2023
  • December 2022
  • November 2022
  • October 2022
  • September 2022
  • August 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • January 2022
  • December 2021
  • November 2021
  • October 2021
  • September 2021
  • August 2021
  • July 2021
  • June 2021
  • May 2021
  • April 2021
  • March 2021
  • February 2021
  • January 2021
  • December 2020
  • November 2020
  • October 2020
  • September 2020
  • August 2020
  • July 2020
  • June 2020
  • May 2020
  • April 2020
  • March 2020
  • February 2020
  • January 2020
  • December 2019
  • November 2019
  • October 2019
  • September 2019
  • August 2019
  • July 2019
  • June 2019
  • May 2019
  • April 2019
  • March 2019
  • February 2019
  • January 2019
  • December 2018
  • November 2018
  • October 2018
  • September 2018
  • August 2018
  • July 2018
  • June 2018
  • May 2018
  • April 2018
  • March 2018
Categories
  • Computer Science (2,398)
    • Confluence (663)
    • Gradle (12)
  • U.S. (593)
  • 文化旅游 (146)

COPYRIGHT © 2020 CWIKIUS. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS

湘ICP备2020018253号-1