标签: solr

Java 中的 PermGen 错误,而内存使用率似乎很低

Java 应用程序不时因 PermGen 空间错误而死亡,但是当我查看内存使用情况时,我所知道的似乎很低。

它是一个 Tomcat 应用程序,加上运行着 SOLR 服务器(在同一个 tomcat 下)。

JVM 参数catalina.sh

-Xms1024m 
-Xmx2048m 
-XX:+HeapDumpOnOutOfMemoryError 
-XX:HeapDumpPath=/path/to/logs
Run Code Online (Sandbox Code Playgroud)

错误catalina.out

java.lang.OutOfMemoryError: PermGen space
Dumping heap to /path/to/logs/java_pid22335.hprof ...
Heap dump file created [107041478 bytes in 1.823 secs]
Exception in thread "pool-5-thread-1" java.lang.OutOfMemoryError: PermGen space
Run Code Online (Sandbox Code Playgroud)

现在第一个奇怪的是内存转储只有 100Mb,而堆限制是 2048Mb。当我曾经有“正确的”内存不足错误时,转储文件的大小接近堆限制。

第二件奇怪的事情是 显示的内存使用情况jmap -heap 22335似乎很正常(运行此命令时,java 应用程序仍处于关闭状态):

Attaching to process ID 22335, please wait...   
Debugger attached successfully.
Server compiler detected.
JVM version is 11.3-b02

using thread-local object allocation.
Parallel GC with …
Run Code Online (Sandbox Code Playgroud)

tomcat java permgen solr

5
推荐指数
1
解决办法
4668
查看次数

Solr 搜索 - 无法解析 java.util.Map$Entry

我运行了 Solr 3.6.2 并为 Magento Enterprise 站点的搜索提供支持,并且一切正常,启动时没有错误等。

但是,当尝试访问以下管理页面时:

  • /solr/admin/stats.jsp
  • /solr/admin/registry.jsp
  • /solr/admin/analysis.jsp
  • /solr/admin/distributiondump.jsp

我收到以下错误:

Problem accessing /solr/admin/stats.jsp. Reason:

PWC6033: Unable to compile class for JSP

PWC6197: An error occurred at line: 41 in the jsp file: /admin/stats.jsp
PWC6199: Generated servlet error:
The type java.util.Map$Entry cannot be resolved. It is indirectly referenced from required .class files



org.apache.jasper.JasperException: PWC6033: Unable to compile class for JSP

PWC6197: An error occurred at line: 41 in the jsp file: /admin/stats.jsp
PWC6199: Generated servlet error:
The type …
Run Code Online (Sandbox Code Playgroud)

java magento solr

5
推荐指数
1
解决办法
1221
查看次数

新贵重启命令不会加载新的更新作业配置 (solr)

这是我的 solr 新贵配置,它位于 /etc/init/solr.conf

# /etc/init/solr.conf

description "Starts Solr server"

respawn
start on startup solr_push

script
        echo "Starting solr server..."
        cd /opt/solr/solr-4.2.1/example
        exec java -Xms50M -Xmx80M -Djava.util.logging.config.file=/etc/solr/logging.properties -Dsolr.solr.home=/etc/solr -jar start.jar >> /var/log/solr/solr-console.log 2>&1
end script
Run Code Online (Sandbox Code Playgroud)

当我更新此新贵配置时,例如将 java 选项从-Xmx80Mto更改 为 -Xmx70M然后执行

sudo restart solr
ps aux | grep solr
Run Code Online (Sandbox Code Playgroud)

我仍然看到-Xm80M那边,即使 solr 进程是用新的进程 id 启动的。

当我这样做sudo stop solr然后sudo start solr手动 - 一切看起来都符合预期,我可以在ps aux.

我的印象是 upstart restart 确实在幕后停止和启动,但是为什么手动停止和启动的结果与重新启动不同?

请建议,也许我做错了什么?

upstart solr

4
推荐指数
1
解决办法
967
查看次数

什么是 Servlet 容器以及如何安装它?

我正准备从供应商处订购 VPS(虚拟专用服务器),我想我必须安装一些 Servlet 容器,对吗?

我即将使用 SOLR,我的网站基于 PHP MYSQL JAVASCRIPT。

servlet 容器的安装如何工作?.exe 文件?

我对servlet容器很陌生,所以请详细解释......

另外,我怎么知道我应该使用哪个 servlet 容器?

我将使用的 VPS 操作系统是 Linux。

谢谢

PS:不知道这是否属于ServerFault

linux java servlets solr

3
推荐指数
1
解决办法
8593
查看次数

如何在ubuntu中启用从网络访问端口?

当我 ” netstat -an | grep LISTEN

我有行:

tcp6       0      0 127.0.0.1:24030         :::*                    LISTEN     
Run Code Online (Sandbox Code Playgroud)

我希望它是

tcp6       0      0 ::24030         :::*                    LISTEN     
Run Code Online (Sandbox Code Playgroud)

换句话说,我想将此端口向整个局域网开放,现在只能从本地计算机访问

我该怎么做?

我在 ubuntu 10.04

ubuntu jetty port solr

3
推荐指数
1
解决办法
2万
查看次数

CentOS 上 Apache Solr 的正确 iptables 配置是什么?

我知道运行 iptables 会导致我的 Apache Solr 实例无法访问的事实。我怎么知道这个?因为我跑了:

/sbin/service iptables save && /sbin/service iptables stop
Run Code Online (Sandbox Code Playgroud)

一旦我这样做了,一切都完美无缺。

但是,我想继续使用我的防火墙,添加必要的规则似乎不起作用。我已经用尽了我认为可行的方法:

/sbin/service iptables start
/sbin/iptables -A RH-Firewall-1-INPUT -p tcp -s 127.0.0.1 --dport 8983 -j ACCEPT
/sbin/service iptables save
Run Code Online (Sandbox Code Playgroud)

还是行不通

/sbin/iptables -D RH-Firewall-1-INPUT -p tcp -s 127.0.0.1 --dport 8983 -j ACCEPT
/sbin/iptables -A RH-Firewall-1-INPUT -p tcp --dport 8983 -j ACCEPT
/sbin/service iptables save
Run Code Online (Sandbox Code Playgroud)

还是行不通

我什至尝试在 8983 端口上做一个通用的 ACCEPT:

/sbin/iptables -A INPUT -p tcp --dport 8983 -j ACCEPT
/sbin/service iptables save
Run Code Online (Sandbox Code Playgroud)

还是行不通!

想法?

**/sbin/iptables -L -n -v**

Chain …
Run Code Online (Sandbox Code Playgroud)

firewall iptables centos solr apache-2.2

3
推荐指数
1
解决办法
5549
查看次数

在生产中保护 Apache Solr

我正在设置 Apache Solr 4.1,它将用于为 Web 应用程序索引数据。只有 Web 应用程序才能访问 Solr。用户和其他客户端不会直接与 Solr 对话。

保护此类 Solr 设置的最佳实践有哪些?

(我们使用 Jetty 来运行 Solr)

search jetty web-server solr web-application-firewall

3
推荐指数
1
解决办法
6618
查看次数

如何检查IP地址是否是EC2实例

我们在配置文件中有一个IP地址(它托管一个接受特定端口请求的solr服务器)。在源代码的配置文件中添加该IP地址的开发人员已离开公司。我觉得它可能是一个 EC2 实例,但是当我登录 EC2 仪表板时,我没有看到任何具有该 IP 地址的实例。也许,我没有检查所有需要检查的地方。如何确定该 IP 地址是否是 EC2 实例。

amazon-ec2 solr

3
推荐指数
1
解决办法
4661
查看次数

org.apache.solr.common.SolrException:加载类“solr.VelocityResponseWriter”时出错

我已经按照http://pabloseminario.com/2011/02/22/installing-solr-on-debian-6-0/ 中的说明设置了 Apache Tomcat 6 服务器并安装了 Apache Solr 3.5.0 。

现在,在浏览器中打开 solr 应用程序会产生以下错误:

HTTP Status 500 - Severe errors in solr configuration. Check your log files for more detailed information on what may be wrong. If you want solr to continue after configuration errors, change: <abortOnConfigurationError>false</abortOnConfigurationError> in solr.xml
-------------------------------------------------------------
org.apache.solr.common.SolrException: Error loading class 'solr.VelocityResponseWriter'
at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:389)
at org.apache.solr.core.SolrCore.createInstance(SolrCore.java:425)
at org.apache.solr.core.SolrCore.createInitInstance(SolrCore.java:447)
Run Code Online (Sandbox Code Playgroud)

我的安装目前向公众开放以进行测试:

http://62.75.247.116:8080/solr/

我在 Debian 6 机器上运行它。

我做了一些谷歌搜索,但对于 Solr 3.5,几乎没有文档或任何关于此的内容;大多数信息适用于 1.4,不适用于 3.5。

注意:我以前在 Tomcat 和 Solr 方面都没有经验。

tomcat solr apache-2.2

2
推荐指数
1
解决办法
8513
查看次数

如何在 CentOS 机器上安装守护进程?

我基本上在寻找相当于:

sudo apt-get 安装守护进程

来自 Debian

我正在尝试按照此处概述的方式配置 Solr 守护程序/sf/answers/150562191/

daemon centos solr

2
推荐指数
1
解决办法
9129
查看次数

Solr 与“这个”词

solr 有一个小问题。当我尝试通过在搜索控制台中发出“this”来搜索包含“this”一词的文本时,solr 找不到任何内容。但是,其他词没有问题。它是保留字还是类似的东西?

search solr

1
推荐指数
1
解决办法
532
查看次数