java - 调度模式下的多个微服务

标签 java spring spring-boot docker microservices

我们有许多基于 Spring Boot 的微服务正在运行。其中大多数都是预定的,需要以每天一次或每周一次的模式运行。我们将每个微服务部署在单独的 Docker 容器中。我们没有使用任何容器编排技术,例如 kubernetes。

由于进程始终处于运行状态,因此即使不执行任何操作也不会释放内存。这实际上会给同一主机中运行的其他微服务带来问题。

有什么方法可以让这些微服务或容器按计划运行并在完成后释放资源?任何帮助将不胜感激。

最佳答案

您只需使用 cron 按计划启动容器即可(假设是类 Unix 系统)或类似 Windows Scheduler 的系统。

然后让作业进程在作业完成后退出。 (退出主进程将停止容器)。然后cron将在下一个计划时间再次重新启动容器。

更多 cron 教程:

关于java - 调度模式下的多个微服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56157210/

相关文章:

java - 使用 Spring Security 基于角色的授权

java - 使用 @EnableWebMvc 和 WebMvcConfigurerAdapter 进行静态资源定位的 Spring MVC 配置导致 "forward:"和 "redirect:"出现问题

java - SpringBoot上传Excel并读取为JSON

java - JCombobox1与json数据转换静态变量

java - 如何为使用 WorkbookFactory 创建的工作簿创建 CellStyle?

Spring Boot RestEndpoint 重定向到 Angular 路由

java - @Transactional,方法内方法

java - 如何在响应正文中返回 ConstraintViolationException 消息?

java - 为什么我的 FTP 客户端无法连接到服务器?

java - 验证 java 版本兼容性