Java 웹 프로젝트인 경우 백그라운드에서 서블릿을 시작합니다. 예를 들어 <servlet><servlet-name>servlet的名字</servlet-name><servlet-class>servlet所在的包的路径</servlet-class> <load-on-startup>1</load-on-startup></servlet>
그리고 백그라운드에서 스레드 풀을 유지하고, 지연되어야 하는 요청을 스레드 풀에 추가하고, 후속 검사를 위해 각 스레드에 타임스탬프를 추가합니다. 서블릿은 정기적으로 스레드 풀에서 스레드를 꺼내어 처리해야 하는지 확인합니다. 실행 조건이 충족되면 실행됩니다. 충족되지 않으면 스레드가 스레드 풀에 다시 배치됩니다. 웹 프로젝트가 아닌 경우 Java의 Timer를 사용하는 동시에 스레드 풀을 유지하고 Timer를 사용하여 정기적으로 확인할 수 있습니다.
예약 프레임워크 quartz를 사용할 수 있습니다
1. 받은 데이터를 데이터베이스에 기록합니다
2. Linux에서는 crond를 사용하여 예약된 작업을 확인하고 java에서 제공하는 트리거 작업 인터페이스를 호출할 수 있습니다.
3. Redis에 작업을 추가하고 예약된 처리를 위해 Java를 사용합니다.요청을 받으면 스레드를 생성하고 ScheduledThreadPoolExecutor 메서드를 사용하여 고정된 지연 후에 스레드를 실행합니다.
SpringMVC의 Quartz는 여러 예약된 작업을 자유롭게 구성할 수 있습니다
Java 웹 프로젝트인 경우 백그라운드에서 서블릿을 시작합니다.
예를 들어
<servlet><servlet-name>servlet的名字</servlet-name><servlet-class>servlet所在的包的路径</servlet-class> <load-on-startup>1</load-on-startup></servlet>
그리고 백그라운드에서 스레드 풀을 유지하고, 지연되어야 하는 요청을 스레드 풀에 추가하고, 후속 검사를 위해 각 스레드에 타임스탬프를 추가합니다. 서블릿은 정기적으로 스레드 풀에서 스레드를 꺼내어 처리해야 하는지 확인합니다. 실행 조건이 충족되면 실행됩니다. 충족되지 않으면 스레드가 스레드 풀에 다시 배치됩니다. 웹 프로젝트가 아닌 경우 Java의 Timer를 사용하는 동시에 스레드 풀을 유지하고 Timer를 사용하여 정기적으로 확인할 수 있습니다.