Tag: amazon ec2

AWS EC2中的Java Google Glass入门项目映射

我坚持使用Google Glass Java Starter Project。 我已成功下载并使用mvn jetty:run在本地运行它。 它在我的机器上的localhost上运行得很漂亮。 我成功将其部署到Google App Engine,但我想为其添加更多function,因此我决定使用Java Quartz库向玻璃器皿发送预定通知。 不幸的是,石英库工作产生新的线程,GAE不允许我这样做。 我决定在一个单独的服务器(Amazon EC2)中运行它,我能够部署它,但我有一个servlet映射错误。 我得到的错误是: HTTP Status 404 – /oauth2callback type Status report message /oauth2callback description The requested resource (/oauth2callback) is not available. 我试图在每个url模式中添加“glass”部分,但这不起作用。 我知道这是一个servlet映射问题,但我不知道如何解决它。 这是我的web.xml 这是我的web.xml中的servlet部分 main com.google.glassware.MainServlet main /glass/main oauth2callback com.google.glassware.AuthServlet oauth2callback /glass/oauth2callback notify com.google.glassware.NotifyServlet notify /glass/notify attachmentproxy com.google.glassware.AttachmentProxyServlet attachmentproxy /glass/attachmentproxy index.jsp […]

无法使用Eclipse访问Amazon RDS

我刚刚使用它的向导在Amazon RDS中安装了MySQL。 我选择了我的EC2实例使用的相同安全组。 我试图通过Eclipse AWS工具包访问它。 我所做的是右键单击RDS实例并单击“Conenct”。 然后它询问密码并尝试连接,但最终出现以下错误。 Unable to connect to RDS database java.lang.reflect.InvocationTargetException 没有一个解决方案,我已经看到有关此事的数量。

使用托盘将java maven项目部署到ec2?

我想知道我将如何设置它。 我有一个普通的java / tomcat / mysql应用程序,我想部署到EC2。 我想使用托盘配置盒子,配置它,并在那里部署我的战争。 我希望我可以通过maven插件做到这一点? 我想我的另一个选择是创建一个lein项目并使用相对路径部署战争,但我希望maven插件…

从运行实例中获取弹性IP

从在EC2实例上运行的java应用程序,我想知道从管理控制台手动分配的我自己的弹性IP地址。 有没有办法为此查询EC2 API?

下载工件时,Maven构建会重置连接

我们有一个maven构建,在亚马逊ec2实例中的jenkins中运行。 总构建需要20-30分钟,并且大致每隔一次运行失败,因为它无法从maven中心下载工件。 这是日志的失败部分: [DEBUG] Lifecycle default -> [validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, generate-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integration-test, post-integration-test, verify, install, deploy] [DEBUG] Lifecycle clean -> [pre-clean, clean, post-clean] [DEBUG] Lifecycle site -> [pre-site, site, post-site, site-deploy] [DEBUG] Using transporter WagonTransporter with priority -1.0 for https://repo.maven.apache.org/maven2 [DEBUG] […]

Spark Local Mode – 所有作业仅使用一个CPU核心

我们使用在单个AWS EC2实例上以本地模式运行Spark Java “local[*]” 但是,使用New Relic工具进行性能分析和简单的“顶级”显示,我们已经编写了三个不同的Java spark工作,我们的16个核心机器中只有一个CPU核心用过(我们也尝试过不同的AWS实例,但只有一个核心永远使用)。 Runtime.getRuntime().availableProcessors()报告16个处理器, sparkContext.defaultParallelism()报告16个处理器。 我查看了各种Stackoverflow本地模式问题,但似乎没有解决问题。 任何建议都非常感谢。 谢谢 编辑:过程 1)使用sqlContext从光盘(S3)使用com.databricks.spark.csv读取gzip压缩的CSV文件1到DataFrame DF1。 2)使用sqlContext从光盘(S3)使用com.databricks.spark.csv将gzip压缩的CSV文件2读入DataFrame DF2。 3)使用DF1.toJavaRDD()。mapToPair(返回元组的新映射函数)RDD1 4)使用DF2.toJavaRDD()。mapToPair(返回元组的新映射函数)RDD2 5)在RDD上调用union 6)将联合RDD上的reduceByKey()调用为“按键合并”,因此具有仅具有特定键的一个实例的元组>(因为同一个键出现在RDD1和RDD2中)。 7)调用.values()。map(新映射函数,它迭代提供的List中的所有项目,并根据需要合并它们以返回相同或更小长度的List 8)调用.flatMap()来获取RDD 9)使用sqlContext从DomainClass类型的平面地图创建DataFrame 10)使用DF.coalease(1).write()将DF作为gzip压缩写入S3。

Jmeter java.lang.OutOfMemoryError:超出了GC开销限制

我正在使用Jmeter将工作负载注入部署在AWS EC2实例上的应用程序。 测试必须非常庞大:它持续10个小时,工作负载配置文件具有双峰形状,在5分钟内有大约2600个请求。 实际上我有一个m3.xlarge实例,其中部署了应用程序,8个m3.xlarge实例,每个实例运行一个jmeter实例。 使用python脚本,要注入的工作负载在8个客户端实例之间进行分割,因此在示例中,如果原始工作负载要注入800个请求,则每个jmeter实例将注入100个请求。 我所说的完整测试持续10个小时,分为每个5分钟的时间步长。 每5分钟应用一点工作负载变化。 实际上我从每个jmeter实例得到java.lang.OutOfMemoryError:GC开销限制在测试开始后立即超出了错误并且没有请求到达应用程序。 我在网上和stackoverflow上看了很多,我总结出可能的错误可能是: JMV堆大小太低 – >我解决了在每个jmeter实例的jmeter.bat文件中设置以下内容: 设置HEAP = -Xms4g -Xmx4g 设置NEW = -XX:NewSize = 4g -XX:MaxNewSize = 4g 代码中的一些错误导致继续无用的垃圾收集器。 所以我从测试中删除了所有的jmeter监听器。 特别是我使用的是TableVisualizer,ViewResultsFullVisualizer,StatVisualizer和GraphVisualizer。 无论如何问题仍然存在。 我真的不知道如何解决它。 我知道用2600音调请求进行10小时测试可能是一个非常繁重的测试,但我认为应该有一种方法来执行此操作。 我正在使用EC2 m3.xlarge实例,所以我甚至可以将堆大小提高到8G(如果它有用),或者将工作负载分成更多的客户端,因为我使用的是spot实例,所以我不会付出这么多,但是因为我已经将客户端实例的数量从4增加到8,以便解决问题并且不起作用我有点困惑,我想知道r建议,然后继续获得越来越多的资源。 非常感谢你提前。

如何使用Jconsole连接到EC2?

我在我的macbook上运行Jconsole并尝试连接到没有图形的ec2上的linux终端(只有命令行访问)。 我像这样运行我的代码: java -jar program.jar -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9005 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.remote.ssl=false 我在这里读到通过EC2访问时出现问题(连接后出现问题),解决方案似乎是’ java.rmi.server.hostname to the public hostname of the instance ‘ 我对如何做到这一点感到有点困惑。 我尝试了两件事,一件是将它直接放在我的代码中(在void static main部分中): System.setProperty( “java.rmi.server.hostname” , “external_EC2_address” ); //in my real code I have the correct address here 系统接受了它(当我创建/上传runnable jar时没有错误)。 我还在我的实例上打开防火墙以允许所有TCP流量。 没运气。 我也试过上述声明作为启动程序的标志,但仍然没有运气。 有什么想法怎么做? 更新:这将显示我在Java的绿色,我更进一步(仍然无法工作),但我意识到把java -jar filename.jar,然后选项没有给我与结果相同的结果-jar在命令的末尾。 我试过了,程序尝试连接,然后说连接失败(之前它只是在登录屏幕上说它)。

弹性负载均衡器和https

我正在使用Elastic Beanstalk,我在使用SSL配置时遇到了一些麻烦。 我现在有一个由Load Balancer和一个EC2实例组成的环境。 负载均衡器在端口443和80上有侦听器。环境中的EC2实例在端口80上运行tomcat。我在负载均衡器中有一个证书,我可以在端口443和80上访问该站点,一切都是工作得很好。 问题是我希望所有请求都被重定向到端口443,即使是端口80上的请求。我已经搜索了高低,以便在不改变我的安全配置的情况下执行此操作。 这是一个运行在Tomcat 7上的小型webapp,带有Spring安全性和MVC。 我试过用 但我有几个页面不属于filter链的一部分 这似乎可以在负载均衡器上解决,但我没有太多设置SSL的经验。 任何帮助表示赞赏。

VirtualMachine /云上的Sun Java实时系统

只是想知道是否有人可以在VMWare等虚拟机上运行/编译Sun Java Realtime系统JRE的应用程序,或者在Amazon EC2上的云上运行/编译应用程序? 我知道在虚拟化基础架构上运行Realtime java并不理想,但它使事情变得更容易。 (否则我只需要在物理硬件上安装SLES SP2。)