【问题标题】:Can't connect to Solr running Jetty on Ubuntu 10无法连接到在 Ubuntu 10 上运行 Jetty 的 Solr
【发布时间】:2023-04-04 19:36:01
【问题描述】:

我正在尝试在运行 Ubuntu 10 LTS 的 Linode 上设置 Solr。我们还没有此服务器的域,所以我只是通过我在其他项目中使用 Solr 的 IP 地址进行连接,没有任何问题。我试图让 solr (1.4) 从包中同时运行 jetty 和 tomcat,但收效甚微。服务器启动,但我无法在浏览器中连接到它们。我还从 apache 网站下载了 solr (3.5) 示例 tar,它不会一路启动。我有一种直觉,这与缺少域名有关,但它似乎很奇怪,它不能仅通过 IP 地址解析。

我希望有人能给我一些关于我的配置可能有问题的想法。

TIA

【问题讨论】:

  • 你能ping通它的ip吗? Solr 正在运行吗?你能在日志文件中看到错误吗?
  • 我可以作证。我在 Linode 上的 Ubuntu 10.04 服务器可以以xyz.members.linode.com:8080/solr 的身份访问 Solr(在 Solr 被防火墙访问公共世界之前)。你能做一个curl http://localhost:1234/solr
  • 我可以卷曲 loclahost 但无法访问 xyz.members.linode.com:8080。我应该查看哪个日志文件以查找错误?我不是java人;是否有记录所有错误的日志文件?

标签: tomcat solr jetty ubuntu-10.04


【解决方案1】:

您正在运行 Oracle Java 吗?从 Oracle 网站下载 Oracle Java JRE 并安装它。从您的服务器中删除任何其他 Java 版本,然后重试。

听起来可能是 RAM 问题。您是否将大量文件放入其中?在执行此操作时,您是否使用top 监视它(按 M 键按内存使用情况排序)?如果您的 RAM 不足,这可能是问题的根源。

SOLR 将其索引完全保存在 RAM 中。您需要为整个索引留出足够的 RAM,并为缓存查询留出一些额外的空间。我有一个 9G 的数据库运行在具有 12G RAM 的机器上,如果我对 100 万行运行像 : 这样的查询,那么我的 RAM 就会用完并崩溃。这是因为当 SOLR 缓存查询时,它会将所选文档的所有未索引字段加载到 RAM 中。

您无法在小型 LINODE 服务器上有效地运行 SOLR。你需要得到最大的尺寸。实际上,如果您的数据适合小型 LINODE 服务器的 RAM,那么您不妨构建自己的 RAM 索引,因为您不会从 SOLR 中获得太多好处。

【讨论】:

  • 我刚刚安装了 Oracle Java 7,下载的运行 jetty 的 Solr 示例仍然挂起。我以前从来没有遇到过这个问题。
  • 您是说您从 Apache.org 下载了 SOLR 压缩包并在 http://localhost:8983/solr/admin/ 运行示例服务器?您是否从控制台提示符运行服务器? java -jar start.jar 2>logfile 然后你可以检查日志文件,看看有没有异常。此外,您可以尝试使用 Java 6。 SOLR 是在 Java 7 中遇到问题的众多应用程序之一。
  • 正确,我只是使用从控制台启动的示例服务器。我一直在关注输出,没有任何迹象表明它为什么会停止。我尝试了几种不同的 java 环境,包括 OpenJDK 1.6。由于我已经在 debian 服务器上进行了此操作,因此我将对其进行尝试。
  • 我能够在安装 debian 的几分钟内启动并运行它。 Ram 与该问题无关,因为它的文档数量相对较少。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-10-31
  • 2016-10-14
相关资源
最近更新 更多