Articles of java

Java进程吃CPU; 为什么?

我有一个Linux服务器,我已经安装了Java。 有时候,只有当大量访问者访问我的网站时,网站才会挂起。 当我打开terminal并input“top”命令来查看发生了什么事情时,我可以看到“ Java ”进程正在吃掉CPU! 400%。 我也试过ps aux命令,可以看到这个命令来自usr / bin / java 我几乎没有什么经验来解决这类问题,所以我转向你们寻求帮助。 我有一个Java容器安装( Jetty ),我必须有使用SOLR (search引擎),这是集成到我的网站。 我可以通过以下方式启动和停止SOLR: etc/init.d/solr stop 但是这并没有从“Top”命令中删除java进程。 Java仍然吃着400%的CPU。 有其他的方法来重新启动Java只? 这发生了两次给我,每次我现在重新启动我的整个服务器,一切都很好。 如果你需要更多的input,让我知道!

Java直接下载链接

是否有直接下载链接到JDK和JRE? 也许甚至可以连接到最新的JDK? 我需要在命令行下载Java,不想点击Oracle主页。

Java和Tomcat – 在哪里放jar子?

我想了解在Java和Tomcat环境中做什么被认为是很好的做法。 1)当我运行我的Ant脚本时,ant中的编译任务需要机器类path来设置jar文件的位置。 在Java安装目录下,应该放置像servlet jar或者其他库jar这样的附加jar吗? 即使在一般的Java安装目录下,/ jar / lib / bin目录似乎也有很多变种。 2)在Tomcat中,我经常看到2个lib目录。 1)在/ tomcat / lib下。 我应该把自己的应用程序的jar子放在那里吗? 2)在/ tomcat / webapps / myapp / lib / – 为什么我会复制所有的jar文件? 只是为了能够将应用程序打包到任何地方而不是在我的机器上运行?

Java似乎没有使用两个以上的cpus

在我目前的设置(debian squeeze x64,6 cpu)中,java和apache似乎都不能充分利用服务器的潜力。 慕尼黑监测显示,CPU使用率从未超过200%。 我们运行了几次压力testing,将服务器负载提高到了80,但是CPU使用率一直很低。 有任何想法吗?

如何在ubuntu启动时设置JAVA_HOME

我想在Ubuntu启动时进行设置。 目前我必须在启动后手动设置它。

如此多的发布…如何select(Tomcat,JDK等)?

当决定在Linux CentOS 6.2服务器上安装Tomcat时,我面临着各种版本的select。 在这里举个例子。 关于JDK版本,也有多种可供select的(请参阅此处 )。 这引起了一个问题…应该通常select最新的稳定版本(例如,Tomcat 7.0.25和JDK SE 7更新2)? 或者,是否应该安装最后一个版本的最新版本(例如Tomcat 6.0.35,JDK SE 6最新更新)? 人们在做出这个决定时所经历的思考过程是什么?

Linux在VPS上的内存不足

在我的VPS(CentOS)4GB内存(2 + 2需要时dynamic分配),我有以下选项运行的Tomcat JAVA_OPTS =“ – Xms256m -Xmx2048m -XX:MaxPermSize = 256m”。 现在,当我尝试启动其他基于Java的应用程序(如哈德森服务器),我得到以下错误: Java运行时环境没有足够的内存来继续。 本地内存分配(malloc)未能为Chunk :: new分配664080个字节 包含更多信息的错误报告文件保存为: /server/hs_err_pid26476.log 似乎系统不能分配650KB的内存,但它应该有1.2 GB的免费。 免费-m caching总共使用的空闲共享缓冲区 Mem:4096 2816 1279 0 0 0 – / + buffers / cache:2816 1279 交换:0 0 0 我发现我应该也检查/ proc / user_beancounters,显示privvmpages failcnt。 我不知道这是什么意思(供应商提供4GB的内存吗?还是他在作弊?) #cat / proc / user_beancounters 版本:2.5 uid资源占用maxhold barrier limit failcnt 70692271:kmemsize […]

混合使用AWS S3和EC2的静态和dynamic内容站点

我们正在运行Tomcat的EC2中安装Java Web应用程序。 该应用程序使用用户图片(静态内容)的文件夹 – > www.example.com/PICTURES 我们使用mod_jk从服务path/ PICTURES中排除Tomcat,所以它是Apache服务的。 我们正计划将/ PICTURES移至S3并从我们的存储桶中提供服务。 在我们的代码中,我们使用短url,例如,用户图片被定义为:/PICTURES/1.jpg 我们希望将每个来自www.example.com/PICTURES/*的电话redirect到我们的存储桶 – > example.com.s3-website-us-east-1.amazonaws.com/PICTURES 我们一直在寻找最好的策略,但似乎并不是一个统一的解决scheme。 据我所知,我们应该使用: a)mod_rewrite:为每个静态内容创build正则expression式,我们将redirect到你的存储桶 b)代理:作为S3的代理人工作 有没有其他解决scheme? 优缺点都有什么?

在Java 7.13+中禁用更新

我的用户不能安装他们自己的软件。 我正在使用GPO和.mst来在属性下使用以下选项自定义和部署Java 7: AUTOUPDATECHECK = 0 EULA = 1 IEXPLORER = 1 JAVAUPDATE = 0 JU = 0 REBOOTYESNO = NO WEB_JAVA_SECURITY_LEVEL = M 但是,Oracle最近部署了Java 7.15,我的所有用户突然被redirect到java.com,每个人都失败了。 他们不能使用这个应用程序,因为Java坚持把它们带到java.com进行更新,而且他们不能自己做更新。 我怎样才能完全阻止Java检查更新?

负载平衡MongoDB

我有一个用java写的应用程序,我准备开始扩展生产。 据我了解,我不应该使用负载平衡器与MongoDB路由器实例,因为它可能会导致问题。 但是,我知道在某些时候我需要多个Mongo路由器。 什么是最好的方式去做这件事? 我能想到的唯一方法是运行Tomcat服务器的多个副本,使用负载平衡器将stream量路由到其中一个Tomcat,并且将每个Tomcat预configuration为使用特定的MongoDB路由器。 但是,我不认为这将工作得很好,就好像一个mongodb路由器出现故障,然后可能会出现错误,如果一个tomcat崩溃,那么我正在浪费一个mongodb路由器。