当前位置: 首页 > 面试题库 >

Jvm需要很长时间才能解析localhost的IP地址

洪经义
2023-03-14
问题内容

升级到macOS Sierra之后,“ sbt测试”(包括查找本地主机名称/ IP地址)的性能似乎出现问题。在OS X的早期版本中,大约需要40-50秒才能完成。macOS Sierra时间远不止于此。我上次跑步大约是15分钟。编译时间与“ El Capitan”上的时间大致相同。

我是团队中唯一尝试使用此新macOS的人,因此我无法确定它是否仅在我的Mac上发生,还是普遍存在。

我的同事在Ubuntu上也有类似的问题,这与生成随机数有关,这减慢了测试的速度- 服务响应速度慢:Java SecureRandom和/ dev / random

不幸的是,这对我没有用。最初,我在JDK 8u54上进行了尝试,然后尝试更新至JDK 8u102,但这样做也没有帮助。

PS我正在运行Macbook Pro 2015年中的2.8GHz i7、16GB内存,1TB SSD。


问题答案:

我有同样的问题。升级后,Tomcat从15秒缩短到6分钟以初始化spring上下文…禁用csrutils不能为我解决问题。

我通过在/etc/hosts映射到该127.0.0.1地址的文件上添加我的Mac主机名(即Macbook.local或你的Mac称呼)来解决该问题,::1如下所示:

127.0.0.1   localhost mbpro.local
::1         localhost mbpro.local

如果你有兴趣,可以在这里找到有关该问题和解决方案的一些详细信息:https : //thoeni.io/post/macos-sierra-java/

在帖子中,我还链接到github项目,以帮助解决问题和验证解决方案。

问题(我相信)与本地名称解析的工作方式以及java.net.InetAddr类如何获取地址有关。我与几个同事进行了核实,显然升级到Sierra的每个人都不会遇到这种情况,但是我仍在调查这种变化的根源。

无论如何,解决方案与antid0te实施并立即生效的相同。



 类似资料:
  • 升级到macOS Sierra后,“sbt测试”(包括查找本地主机名/IP地址)的性能似乎有问题。在以前版本的OSX上,完成该操作大约需要40-50秒。macOS Sierra时间远高于此。我最后一次跑步大约15分钟。编译时间与“El Capitan”上的编译时间大致相同。 我是我团队中唯一一个尝试这款新苹果电脑的人,所以我不知道它是只发生在我的苹果电脑上,还是一个普遍的问题。 我的同事在Ubun

  • 问题内容: 我正在使用Hibernate 4.2,JPA 2.0和Postgres 9.2 代码卡在 在进一步调查中,我发现Hibernate调用了class 方法。此方法尝试加载有关每个数据库对象的元数据 的代码是Postgers的JDBC驱动程序的一部分,而确实是花费时间来执行该方法的驱动程序(我加载了驱动程序源并尝试了跟踪)。但是由于这个问题在Hibernate 3.3(我之前使用过)中没有

  • 此代码用于生成excel报告。有15列,如果记录数在1000左右,生成excel表需要近10-15分钟。上面的代码有什么问题吗?如何提高性能(Excel报告生成时间减少)?

  • 问题内容: 我有一个以datetime为参数的查询,我们观察到的是,如果通过变量提供datetime参数,则执行查询的时间比直接对参数进行硬编码要多2 -3倍,是否有任何原因或解决方案?对此 以下查询大约需要5分钟才能返回结果 虽然作为 它会在10到20秒内返回 我并不总是希望在列上使用索引进行搜索。 按照kevchadders的建议,我看到执行计划有很大的不同。使用日期变量的查询正在执行聚集索引

  • 我使用javamail通过IMAP协议从exchage帐户读取邮件。这些邮件是纯格式的,内容是XML。 几乎所有这些邮件的大小都很短(通常小于100Kb)。然而,有时我不得不处理大型邮件(大约10Mb-15Mb)。例如,昨天我收到一封13Mb大小的电子邮件。仅仅读它就花了50多分钟。这正常吗?有没有办法提高它的性能?代码是: 花费如此长时间的方法是。我做错了什么?有什么提示吗? 非常感谢,我的英语

  • 问题内容: 当使用请求库请求Web资源或网站或Web服务时,请求需要很长时间才能完成。该代码类似于以下内容: 此请求需要2分钟(恰好是2分钟10秒)才能完成!为什么这么慢,我该如何解决? 问题答案: 这个问题可以有多种可能的解决方案。关于StackOverflow的答案很多,因此,我将尝试将它们全部组合起来,以免您寻找它们的麻烦。 在搜索中,我发现了以下几层: 对于许多问题,激活日志记录可以帮助您