2010年2月5日星期五

停止思考,开始标记-标记语义从协作详细性中产生

也许你曾不时问自己“这些BibSonomy开发人员一整天在做什么?”“停止思考,开始标记-标记语义从协作详细性中出现”在今年的WWW会议在美国罗利!

正如你从标题中可以猜到的那样,本文主要关注的是涌现语义。这个术语通常用于描述在协作标记系统中以自下而上和不受控制的方式“增长”的语义结构。对于以下情况紧急标记语义这意味着,尽管人们可以自由选择任意标签(这导致了典型的语言相关现象,如同音异义、多义等),但人们可以从标记内容的聚合质量中成功提取有意义的标签关系。例如,不同的人可能会使用不同的标记来描述网络2.0范式,可能是“web2.0”、“web-2.0”、“webtwo”、“webs20”、“web 2.0”等。通过使用适当的标签相关性度量,可以识别这些情况并提取语义“概念”网络2.0所有这些用户都在谈论这一点。

到目前为止,没有什么太新的东西——我们当时问自己的问题是,单个用户的特征如何影响所学语义结构的质量。一种可能性是根据用户的标记动机来区分用户“分类程序”和“描述程序”-第一组使用一个小而系统的词汇表,而第二组使用大量不同的关键字进行注释。简单地说,描述者可以被视为“冗长”的用户,用许多关键字进行标记。因此,我们将整个folksonomy数据集分割为几个分区,其中包含来自分类程序和描述程序的不同混合物。我们发现了一件有趣的事:

在x轴上,您可以看到包含用户的百分比。y轴描述了推断出的语义标记关系的质量(根据同义词库进行测量;正如我们使用JCN距离,值越小表示质量越好)。绿线表示从完整数据集中获得的语义质量。有趣的是,现在已经有40%的“健谈”描述者,可以达到完整数据集的语义精度!70%的描述者的质量最好。因此,“质量重要”的说法仅部分成立——关键的一点似乎是质量由哪类用户组成。这个协作冗长描述者对涌现语义有积极的影响。在更一般的层面上,这显示了标记语用学之间的因果联系(怎样人物标签)和标签语义(什么标签表示)。如果您有兴趣了解更多细节,我们很乐意在WWW2010上与您讨论!

2010年1月29日星期五

本周特色:新Firefox-plugin发布!


几个星期以来,我们的第一个版本Bib经济版Firefox加载项可用于下载.
这项新功能将BibSonomy书签集成到Firefox浏览器中,因此无需访问BibSonomy帐户即可轻松使用和存储书签。您可能还想将本地书签列表与BibSonomy中的书签同步。
您只需开始使用新插件、用户名和API-key作为密码即可。
  • 蓝色星形按钮指示页面是否已添加书签。单击它将打开用于存储或更改当前网页书签的对话框。







  • 在导航栏的左侧,您可以找到指向BibSonomy页面的快速链接,以及侧边栏的隐藏/显示按钮。
    侧栏显示书签标记的云或列表以及标记关系。与BibSonomy中的书签很相似,可以通过单击其中一个标签或使用全文搜索来检索书签。


  • 我们的插件是完全可定制的,还允许从浏览器中删除标准的黄色Firefox-Star-按钮。此外,设置还提供了将Firefox书签导入BibSonomy的选项,反之亦然。

2010年1月20日星期三

新版本

昨天,我们部署了一个新版本,其中主要包含错误修复和底层数据库模块中的大清理。它已经包含了一些新功能的后端方法,例如收件箱。本周,我们还将尝试将全文搜索切换到Lucene。

添加的一个小的新功能是布局JSON提供有关可用JabRef布局的元数据(您可以在出口第页)。这将被我们的Typo3插件用来提供可用布局的选择。

2009年12月16日,星期三

本周特色:2009年回顾

2009年为BibSonomy带来了许多改进和新功能,但也带来了有趣的研究活动。在下周发布2010年展望之前,我们简要回顾了今年。
标签建议
作为ECML PKDD 2009年我们组织的会议发现挑战,参与者可以在BibSonomy数据集上测试他们的标签推荐方法。挑战中一个特别有趣的部分是在线评估这使得研究人员能够在运行系统中评估他们的方法,并实际向用户展示他们的建议。基础设施由我们的新标签推荐框架这被证明是非常有用的。它允许我们在世界各地的多台机器上分发标签推荐工作。例如胜利者的推荐人正在加拿大运行。
研究项目
今年,围绕BibSonomy启动了两个新项目:彪马,这将与卡塞尔大学图书馆、和信息2.0(德语),与公法研究所.
插件
我们发布了三个新插件,可以更好地将BibSonomy与其他工具集成。这个JabRef插件允许您将出版物引用与书目管理器同步与杰波瑞菲Typo3扩展将BibSomy的发布列表集成到内容管理系统中类型3。两周前刚刚发布,准备测试的是新的Firefox附加组件更好地将BibSonomy集成到Firefox浏览器web浏览器。我们将在下一个FOTW中引入此附加组件。
个性化
你现在明白了类似用户在你的侧边栏中,你可以点击在个性化排名中浏览他们的帖子。此外,您可以关注用户你会发现关注他们发布的内容很有意思。
数据集的转储
很长一段时间以来,我们以SQL转储的形式向感兴趣的人提供BibSonomy数据库的数据集,用于研究目的。A类网页现在介绍可用转储以及如何获取转储。最近,转储还包含用户的标记关系。
开发
在持续努力向公众开放BibSonomy源代码的过程中,我们释放中的一些核心模块公共Maven存储库例如,现在您可以访问我们的屏幕刮板,它允许您从60多个数字图书馆中提取出版物元数据。大多数模块都有GPL或LGPL许可证。

下周,我们将介绍我们目前的活动,并讨论2010年的计划。

2009年11月12日星期四

本周特辑:新版JabRef-plugin发布!

您会注意到,我们正在维护插件对于开源书目管理器与杰波瑞菲,可以轻松地从BibSonomy下载和上传条目。我们认为,这种方法很好地结合了维护本地BibTeX文件的优点,以及像BibSonomy这样的集中发布共享平台的舒适性和实用性。

我们刚刚发布了这个插件的新版本,它提供了一些很好的功能来简化两个集合的维护(本地+BibSonomy内)!过来看:

  • A类dded文档管理:在JabRef和BibSonomy中,可以将私人副本(PDF、PS…)附加到出版物条目。我们插件的新版本允许通过单击(第一张图片)下载BibSonomy中的所有私人文档。此外,您可以在设置菜单中控制本地文档在存储出版物时自动上载到BibSonomy(第二个图像)。












  • A类自动同步:一个典型的问题是保持两个集合(您的本地.bib文件和BibSonomy帐户)同步。我们很荣幸能够提供一个舒适的功能来自动执行此任务(右侧的第三个图像)。此功能会自动检查两个集合中是否存在相等的条目;如果有差异,您可以决定保留哪个版本。“diff-like”视图可以帮助您查看发生了什么变化(右侧的第四张图片)。




  • 全文搜索:在以前的版本中,只能通过标记从BibSomy检索帖子。现在,您还可以在个人集合或全局集合中执行全文搜索。
  • 进一步的小添加和错误修复:除了上述新功能外,我们还改进了界面,修复了一些错误,总体上使插件更稳定更好:)
你可以下载插件的最新版本在这里:可以通过以下方式访问更新的文档http://www.bibsonomy.org/help/doc/jabref-plugin/index.html。我们希望这个新版本能帮助您提高个人和共享出版物管理的效率-我们一如既往地对反馈、评论和建议感到高兴!!

最佳,
多米尼克

2009年10月6日,星期二

主服务器崩溃

今天我们的主机出了故障。我们花了一个小时才重新启动一切,因为已经很晚了,办公室里没有人。这就是BibSonomy不可用的原因。不幸的是,这是这台机器在4周内第三次崩溃。我们现在正在寻找原因,但目前我们没有任何线索,因为我们没有观察到任何特殊情况。这似乎是一些奇怪的硬件缺陷。让我们祈祷我们能很快解决这个问题。

2009年9月28日星期一

新版本

你们中那些最近试图删除帖子的人可能已经注意到了一个小但有用的变化:现在有一个对话框要求您确认。如果你不小心点击了“删除”链接,你现在有机会停止这个过程。如果您不喜欢此功能:只需在设置页面你又恢复了老习惯。

这只是新版本中包含的更改之一,但显然是最引人注目的更改。此外,我们更新了代码,从Delicious和Firefox导入书签,上传JabRef布局,并为篮子挑选/取消挑选帖子。该版本中还包含了几个较小的错误修复。

和往常一样,还有一个小提示:虽然我们测试了代码,但它可能包含我们没有发现的错误。因此,如果您认为您发现了错误,请随时联系我们!

2009年9月8日星期二

锦标赛标记

作为一个社交书签系统,为资源分配标签是BibSonomy最重要、最频繁的过程之一。一段时间以来,用户得到了一组推荐标签,如图1所示。



挑战


推荐系统正在进行积极的研究,并出现了不同的方法。在今年的背景下ECML PKDD发现挑战在过去的五周里,BibSomy的标签推荐由来自7个不同国家的10个不同研究团队的14个不同推荐系统提供。挑战包括三个任务,其中前两个任务处理从BibSonomy获取的固定数据集,而第三个任务的主题是向运行系统中的用户提供标签建议。

昨天,在ECML PKDD发现挑战研讨会,挑战赛的参与者展示了他们的推荐系统,并讨论了不同的方法,但他们仍然不知道第三项任务的获胜团队,该团队最终在晚上的会议开幕式上宣布。

对系统进行评级


标签推荐算法通常通过在“离线”设置中计算一些性能度量来进行评估,即通过迭代数据集中的帖子,该数据集源自社交书签系统,仅向推荐者系统呈现用户和资源。因此,对于每个帖子,建议的标签集可以与用户分配的标签进行比较。任务1和任务2的参与者是在这样的环境中进行评估的。

但是,这些“离线”设置不仅忽略了实际应用程序中的一些约束(例如cpu使用和内存消耗),还不能考虑向用户呈现一组推荐标签的效果。为了评估这些效果,我们设置了任务3,将推荐系统集成到BibSonomy中,并且推荐系统必须在超时时间1000毫秒.

为了评估不同的推荐系统(在离线设置和任务3中),我们计算了精度回忆对于每个系统。在精确测量的同时,召回会考虑足够的推荐标签数量,以及用户实际分配给推荐资源的标签数量。

图2显示了在线挑战的最终结果(可用在这里). 对于每个推荐系统,我们仅考虑前n个标签(n=1,2,…,5)并计算所有帖子的平均值,计算精确度和召回率。例如,顶部的蓝色图表显示,从相应的推荐者系统的五个推荐标签(非常正确的点)中,约18%是由用户选择的(精度0.18),约23%的用户最终分配给资源的标签是由推荐者“预测”的。



获胜团队包括:
  • 任务1:Marek Lipczak、Yeming Hu、Yael Kollet和Evangelos Milios(纸张)
  • 任务2:Steffen Rendle和Lars Schmidt-Thieme(纸张)
  • 任务3:Marek Lipczak、Yeming Hu、Yael Kollet和Evangelos Milios(纸张)


我们很高兴地说,这是一个有趣的挑战,它让我们深入了解了标签推荐任务的不同方法的性能。我们要感谢所有为这个挑战做出贡献的人——最后但并非最不重要的是BibSonomy的每个用户。

2009年8月26日星期三

PUMA-学术出版物管理项目于8月1日启动

BibSonomy技术将用于一个项目,该项目将促进开放存取运动,并更好地支持研究人员的出版物工作“PUMA-学术出版物管理”由德国研究基金会资助DFG公司已于2009年8月1日开工。PUMA是大学图书馆知识与数据工程组卡塞尔大学.

开放访问是一种发布模式,允许作者免费发布文章,用户可以自由访问。费用由提供机构存储库的机构承担。这种发布模式有几个原因。随着期刊预算的减少和成本的增加,许多大学图书馆再也无法支付所有相关期刊的订阅费用。此外,开放存取支持文章的及时发布和更广泛的可视性,以便研究结果能够被更多的研究人员更早地采用,从而缩短了科学结果的周转时间。

尽管许多研究人员原则上支持开放存取运动,但他们通常不会将其出版物贡献给大学的机构知识库。关键原因是,他们没有看到这一额外努力的直接好处,而且上传没有集成到他们的日常工作流程中。因此,PUMA的目标是实现一个集成解决方案,其中出版物的上传会自动更新个人和机构主页,在BibSonomy中创建条目,进入大学学术报告系统,并在机构存储库中发布。上传时,来自多个数据源的元数据(SHERPA/RoMEO清单,在线图书馆目录,Bibonomy)将自动收集,以支持用户。此外,PUMA旨在为所有研究人员和学生提供一个日常使用的出版物管理平台,这不仅减少了开放存取出版物的工作量,也减少了管理自己的出版物的工作量。

PUMA平台将基于BibSonomy技术,由大学图书馆托管;它将以Web2.0风格进行设置。该平台将包括BibSonomy的所有已知功能,如出版物标签、易用性、API和可扩展性。BibSonomy将继续由知识与数据工程集团运营。作为展示,PUMA将与开放存取存储库平台集成D空间,库系统PICA公司,的类型3内容管理系统,以及BibSonomy公司。该系统是开放的,可以适应其他标准系统。项目结果将作为开源软件发布。这意味着完整的BibSonomy源代码将在项目结束时根据开源许可证提供。

2009年7月24日星期五

本周特色:关注感兴趣的用户,随时关注感兴趣的内容

在BibSonomy中搜索感兴趣的资源时,一个很好的起点是其他具有类似兴趣的用户。在一个前职位,我们展示了BibSonomy如何帮助您发现这些类似用户。我们现在很高兴宣布一项新功能,它可以让您轻松跟踪这些人的有趣资源-您现在可以跟随他们!

基本思想是这样的:一旦你偶然发现一个看起来很有趣的用户,你可以在他的用户页面上使用以下链接将他添加到你的关注用户列表。将此列表视为与您兴趣相投的好友列表。以下是两个示例,您可以在其中找到此链接(在用户页面和上的个性化用户页面):

关注者页面,然后会找到您关注的所有用户的列表(以及关注您的所有用户:)。此页面汇总了您关注的所有用户最近的所有帖子,并为您进行了个人排名。因此,与您最相关的帖子显示在资源列表的顶部(我们根据您使用的标签计算相关性)。以下是此页面的外观:
您还可以在此页面上的关注用户列表中添加和删除用户。此外,您可以更改应用的排名算法的一些设置,并查看哪种方法最适合您查找最相关的帖子。

请随意使用此功能-我们希望它可以帮助您“挖掘”具有类似兴趣的用户的资源,并最终为您找到一些非常酷和相关的东西!

最佳,
多米尼克

2009年6月24日星期三

本周特色:“相关”

通常我们尝试每周写一份FOW,但最后一份是三周前的。我们目前很忙,因为有几件事正在进行。除了正在进行的改进BibEconomy的工作(修复错误和实现新功能)外,我们也在积极研究新的研究结果。此外,今年ECML PKDD发现挑战赛的最后期限即将到来,我们需要为此做一些准备。例如,我们能够非常好的价格。挑战仍在继续。。。但这只是附带评论。

回到本周的FOW:在2009年3月的发布中,我们引入了一个新的组功能,称为“相关”,组成员可以用它来标记帖子。为什么我们需要这个新的组功能?我们集团系统的实施遵循两个主要理念。一方面,它旨在提供访问权限,这意味着用户可以将帖子的访问权限限制为特定组的成员(只有组成员才能看到此帖子)。另一方面,它是一个收集组成员帖子的系统,允许聚合。由于许多支持请求,我们意识到这种组合不是很好
直观。因此,我们寻找一种方法来维护这两个部分,但将它们分开,使整个系统更易于使用。“相关”功能是我们解决此问题的解决方案。相应的页面旨在通过收集书签和专题出版物来支持团体,尤其是研究团体。由于可以选择多个与帖子相关的组,因此帖子可以专用于多个组。

让我解释一下它是如何工作的。我们实现此功能的方式是将其作为系统标记。这意味着什么?在发布对话框的右下角,您可以找到一个名为“relevant for”的表单,其中包含所有组的列表。你可以选择一个或多个你认为与文章相关的小组。如果这样做了,每个组的帖子都会用特殊标签“sys:relevantfor:groupname”进行注释,这些标签会像普通标签一样存储,用户也可以更改。我们正在研究一种机制,可以将这些系统标签从常用网站和标签云中隐藏起来,但目前该功能尚未完成。为了使系统标记有用,我们实现了一个特殊的页面“/relevantfor/group/groupname”,其中显示了使用该组的相应系统标记标记的所有帖子的集合。此功能是
独立于组的访问权限。只要用户有权查看帖子,他就会在相应的页面上看到帖子。

总结一下:小组不再只是访问权限,也是主题小组,如果有人有兴趣打开这样的小组,我们建议注册帐户,给我们发一封电子邮件,我们会将该帐户变成一个组,您可以使用它。

2009年5月29日星期五

发布的新功能:相似用户+个性化

今天我们发布了BibSonomy,其中包含了一些新的有趣功能,您可能会觉得很有帮助!第一个解决了以下常见问题寻找与自己兴趣相似的BibSonomy用户; 它们可能是有趣内容(如最近的出版物或最新的书签)的绝佳来源。在您的个人用户页面上(即“MyBibSonomy”区域),您会在侧边栏中找到一个新的“类似用户”列表:
我们使用了几种相似性度量来计算这些——当你点击“更多”时,你可以检查哪一个最适合你。当您单击其中一个用户名时,您将被引导到如下所示的个性化页面:
这种个性化背后的主要思想是帮助您找到这个用户感兴趣的内容;我们正在商量个性化排名,根据您的兴趣对该用户的帖子进行排序。标记云显示了此用户的标记,您可能对此感兴趣。

当您以“常用方式”在用户页面上浏览时,也可以使用此个性化功能-我们在那里提供了“个性化”-顶部的链接:
除此之外,此版本还包含一些小的修复和改进—如果您碰巧遇到任何异常,我们很高兴收到您的来信,以便我们能够修复问题。除此之外,我们还邀请您使用我们的新功能,充分利用BibSonomy!

最佳,
多米尼克

2009年5月26日星期二

BibSonomy的Typo3扩展可用

类型3是一个流行的开源内容管理系统,被大量私有和企业网站它提供了一个通用的扩展架构,使开发人员能够向基于Typo3的网站添加自定义功能。

对于学术背景下的许多网站(例如研究人员、大学、研究项目等的个人主页),一个重要的构建块是最新的出版物列表。手动维护这些列表是一项繁琐的任务;为了简化这个过程,我们开发了一种通用的BibSonomy Typo3扩展! 核心概念是将所有引用干净地存储在BibSonomy中(利用所有有用的BibSonomy功能,如从不同格式导入、刮取服务等),并根据此数据自动生成发布列表。看看它的样子:
为了使用BibSonomy Typo3插件创建如此漂亮的出版物列表,您需要遵循以下简单步骤:
  1. 将相关出版物存储在BibSonomy中
  2. 在Typo3安装中安装BibSonomy Typo3-插件(从这里下载)
  3. 配置插件(例如,选择要显示的条目、选择布局…)
  4. 完成了!:)
对于每个步骤,我们都编写了一个广泛的在线文档。我们的插件已经是卡塞尔大学! 我们提供了一些预定义的标准布局(哈佛、DIN1505…),用于格式化出版物列表;此外,还可以基于JabRef布局过滤器.

除了出版物列表外,该插件还可以显示标签云,这些标签云可以嵌入到网站中,以可视化群体或个人的研究兴趣。我们希望这个插件是使BibSonomy在以集成和统一的方式管理书目数据的过程中对您更有用的另一个步骤。BibSonomy团队当然也欢迎评论和建议!

最佳,
多米尼克

2009年4月9日,星期四

FOW:出版物详细信息

在前往韦瑟河(Weser river)小憩之前:-),我想让你注意一下用户的出版物详细信息.

包含了不同的功能,以使元数据更具代表性。在页面的开头,用户可以选择不同的引用格式(例如哈佛、DIN1505)来表示参考。



接下来的部分只做了轻微更改。您可以输入指向出版物提供者的链接,也可以在参考资料部分上传有问题的文档的私人副本。这个摘要私人票据部分允许您存储信息和个人信息。最后,可以在BibTex和Endnote记录字段中更改或增强元数据。

侧栏提供了编辑标签的选项。此外,还显示了与此出版物关联的标记。那些由您自己添加的标记带有下划线。要了解还有谁对本出版物感兴趣,请查看相关用户。

如果您希望包含特定的引文风格,错过了与出版物元数据相关的重要功能,或者对如何进一步组织此页面有一个绝妙的想法,
拜托联系我们.

复活节快乐!

贝亚特

2009年4月1日星期三

本周特色:新配色方案

由于用户不断抱怨BibSonomy的颜色选择,我们决定切换到新的中性色主题。

利用统计学、数据挖掘技术和线性优化,我们确定了一组颜色,以最小化与BibSonomy设计相关的邮件数量。由此产生的颜色集以令人愉悦的灰色为主,这应该符合每个人的需求。


由于养成的习惯,我们继续称BibSonomy为“蓝色社交书签和出版物共享系统”。

福克

2009年3月27日星期五

FOW:你最好把它保存为出版物。。。

Andreas的博客文章你已经知道了BibSonomy的刮削服务它使BibSonomy能够自动从中提取发布元数据一些网站.

在过去的一段时间里,该服务还会检查用户是否发布指向可剪切网站的书签,在这种情况下,用户会得到相应的提示:
我们现在扩展了此功能,用户在点击“postBookmark”按钮,也被选中。因此,如果您选择BibTeX并按“postBookmark”或DOI,则可能会发生这种情况,您会收到一条通知,建议您最好将其保存为出版物,而不是书签。

你现在可以自己尝试一下,选择其中一个文本片段,然后按“postBookmark”:
  • 10.1007/978-3-540-73681-3_21
  • ISBN-13:978-0201485417

2009年3月25日星期三

城市集市

去年11月,Mounir Errami联系了我们,他是MireSoft公司。他建议与我们合作。MireSoft有一款名为城市集市,这是一个引文软件。它很好地与Word集成,并在基于web的工具(如BibSonomy或Connotea)之间架起了一座桥梁。它简化了从web应用程序接管数据的方式,并且能够为用Word编写的文章生成各种格式的引用。这样,它可以方便地撰写科学文章,并支持研究人员的科学工作。这是一张截图:



我们支持这种合作关系,因为我们认为BibSonomy需要与尽可能多的工具联系起来。这拓宽了其社区,并使BibSonomy对其用户更有价值。总结:如果您正在使用BibSonomy,并且正在寻找一种使用Word的简单方法,那么我们绝对可以推荐CiteSmart。

2009年3月20日星期五

新版本

我们刚刚发布了BibSonomy的新版本,它修复了几个错误并引入了新功能。

关于已修复错误的简要概述:
  • 作者页面上对特定用户或特定年份的限制被打破,即。,/publ/author/Jäschke/sys:年份:2008+sys:用户:jaeschke没有结果。现在这又起作用了。
    请注意,要按年份排序页面,您需要添加一个附加参数“sortPage=年“如果您想在顶部显示最新文章,请另外输入参数”sortPageOrder=描述“。这是一项新功能,可以对页面上(几乎)任何BibTeX字段的帖子进行排序。您甚至可以使用组合字段”|“作为分隔符,例如,具有相同年份的帖子按作者姓名排序。
  • BibTeX字段“摘要“已导出为”bibtex摘要“在某些情况下。这导致一些使用此字段的工具中断。现在该字段中再次包含了摘要”摘要“。注意:在API XML中,此字段仍命名为”bibtex摘要“。我们将在未来看看如何修复此问题(尽管它在那里不是一个真正的错误)。


新功能包括:

其中一些更改大大改进了BibSomy的工作,我们将继续将页面传输到新的后端。如果您发现了有关新页面的错误或建议,请告诉我们!
我们将在本周即将推出的功能中更详细地介绍新功能。

2009年3月13日星期五

FOW:与内存泄漏作斗争

本周的今天专题更具技术性。您可能知道BibSonomy基于MySQL/Tomcat架构。BibSonomy通常运行得非常稳定,但Java虚拟机有时会停止运行,并显示“java.lang.OutOfMemoryError:PermGen空间“错误。这主要发生在Tomcat上重新部署BibSonomy项目之后。为什么会发生这种情况?简单的答案是:因为Java虚拟机没有足够的内存用于所谓的永久发电空间。此空间用于在主内存中保存Java类。一个简单的解决方案是给JVM更多的PermGen空间。但这并没有解决根本问题。通常JVM有足够的PermGen空间。提供更多内存的唯一结果是:错误将稍晚发生,而不是在重新部署后直接发生。

所以我们决定寻找内存泄漏的原因。很快我们发现,web应用程序中有一些类,类加载器无法删除因为它们被“链接”到由标准类加载器加载的类。可能有几个原因为此,以及使用正确的工具(来自JDK的jmap和jhat)加上一些小程序来查找参考链,我们发现了罪魁祸首:

*MySQL连接器/J(请参见http://bugs.mysql.com/bug.php?id=36565)
*iBatis公司(请参见https://issues.apache.org/jira/browse/IBATIS-540)
*与杰波瑞菲
*Tomcat公司(请参见https://issues.apache.org/bugzilla/show_bug.cgi?id=46221)
*我们可以通过将一些JAR移动到正确的位置(另请参见在这里在这里).

识别受试者是一项反复的任务——修复一个泄漏导致的下一个泄漏。。。我们不知道一开始有这么多候选人。我们可以通过切换到新版本来修复iBatis,MySQL、JabRef和Tomcat的修复有点困难。
对于JabRef,我们必须修改源代码,使其不会启动AWT。此外,Tomcat生命周期监听器杀死了java.util.参考。文件系统首选项webapp关闭后使用可怕的Java内省攻击:

final Class clazz=CleanupListener.Class.getClassLoader().loadClass(“java.util.prefs.FileSystemPreferences”);
final字段f=clazz.getDeclaredField(“syncTimer”);
f.setAccessible(真);
最终计时器计时器=(计时器)f.get(null);
timer.cancel();

为了修复MySQL错误,侦听器确保在启动web应用程序时,MySQL连接类在web应用程序之前加载,并由标准类加载器加载,这样取消计时器线程(这是泄漏的原因)不会阻止卸载web应用程序。Tomcat中StandardContext的记录器(无论出于何种原因,都是通过webapps类加载器加载的)也会被侦听器杀死。

经过几周的工作,我们得到了一个无泄漏的应用程序。糟糕的是,我们正在使用的每个库都可能导致泄漏,如果我们不小心,泄漏会很快恢复。不幸的是,我们没有意识到可以将一种方法放入Tomcat或应用程序中,该方法只检查内存泄漏。

希望你发现这个有趣,并祝你自己的应用程序好运。。。

2009年2月24日星期二

新BibSonomy在线发布

在这个博客中,我们通常会宣布BibSonomy的新功能,因为我们正在稳步改进我们的服务。有些改进更为明显,而其他改进则不那么明显——例如,当我们优化代码或服务器基础设施中的内容时。后者是我们在过去几周一直关注的问题——我们继续将旧代码部分迁移到新的web应用程序框架中,修复了错误,重构了部分代码,等等。

昨天(2009年2月23日,星期一),我们发布了这些“背景改进”的主要部分——在最佳情况下,您实际上不应该注意到太多(除了我们的服务变得更快、更可靠之外)。但是,作为开发人员,我们通常会变得有点“系统盲”,如果您在bibsonomy.org的日常工作中遇到异常或违规情况,我们将非常感谢您的任何反馈。

更具体地说,在发布过程中涉及了以下页面/功能:
无论如何,我们希望能为您提供更好的服务,并提前感谢您的任何反馈!顺颂商祺,
多米尼克

热门帖子