小编obe*_*ker的帖子

Spring Scheduler意外停止

我们在Tomcat 6上有一个Spring 3 Web应用程序,它通过多个预定服务@Scheduled(主要用于每晚运行的作业).现在似乎有时(很少,也许在两个月左右)调度程序线程停止工作,因此在第二天晚上不会执行任何作业.我们的日志文件中没有异常或日志记录条目.

有人知道为什么会这样吗?或者如何获得有关此问题的更多信息?

有没有办法在应用程序中检测这种情况并重新启动调度程序?

目前,我们通过每5分钟运行一次日志记录作业并创建日志条目来解决此问题.如果日志文件停止更新(由nagios监视),我们知道是时候重启tomcat了.在没有完全重启服务器的情况下重启作业会很不错.

java spring tomcat scheduled-tasks

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

蝗虫:获得0响应status_code和无内容

我使用Locust(http://locust.io)编写了一个简单的负载测试.

现在我注意到有时候(使用更高的负载)我从post调用得到的响应有一个status_code为0和一个None内容.0状态代码不会自动识别为Locust中的故障,因此我必须手动测试它.

我的代码片段是这样的:

with self.client.get(path, catch_response=True) as response:
    if response.status_code != 200:
        response.failure(path + ": returned " + str(response.status_code))
    elif check not in response.content:
        response.failure(path + ": wrong response, missing '" + check + "'")
Run Code Online (Sandbox Code Playgroud)

注意:check是预期响应内容的一部分的变量.

问题是:这是预期的行为吗?这是Locust(或Python)的问题还是在测试应用程序中出现故障?

python http locust

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

cloudfoundry:使用较旧的buildpack版本

Cloundfoundry最近将其Java buildpack更新为2.5版(包括java 8和tomcat 8).我仍然想使用2.4版本,因为我的应用还没有升级到java 8.最简单的方法是什么?

我可以使用推送应用程序

cf push app -b https://github.com/cloudfoundry/java-buildpack
Run Code Online (Sandbox Code Playgroud)

但是如何指定使用版本2.4(https://github.com/cloudfoundry/java-buildpack/releases/tag/v2.4)?显然指定标记URL不起作用.

java cloud-foundry buildpack

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

Spring:使用 Spring Security 配置执行器端点的安全性

是否可以使用 Spring Security 以通用方式为 Spring 应用程序的执行器端点配置安全性?

根据https://github.com/spring-projects/spring-boot/issues/8646,我需要在自定义 Spring Security 配置中执行此操作。

但是假设我/info在我的应用程序中(在端口 8080 上)有一个自定义请求映射,并且在端口 8081 上启用了执行器信息端点。我如何在 Spring Security 中区分这两个?

java spring spring-security spring-boot-actuator

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

Thymeleaf:我可以在表达式内使用消息吗

我在Spring Boot应用程序中使用Thymeleaf 3。目前,我要在EL表达式(Spring EL)中使用消息表达式。

第一个用例:修剪消息

data:title="${#{message.key}.trim()}
Run Code Online (Sandbox Code Playgroud)

第二个用例:有条件地创建一个属性,并以消息作为其值

data:title="${condition ? #{message.key} : ''}
Run Code Online (Sandbox Code Playgroud)

这两个示例都将产生语法错误,因为#{不允许使用表达式的开头。

有什么想法可以实现我想要的吗?

spring el thymeleaf

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