導航:首頁 > IDC知識 > 伺服器定時器

伺服器定時器

發布時間:2020-11-08 10:44:46

1、有java高手么,用過定時器quartZ的,為什麼本地eclipse可以執行,放伺服器上就不執行

我估計是本地時間和伺服器時間不一致導致的。
當在本地eclipse運行時,伺服器在本地,假如定時器是要在五點做點什麼,
伺服器(也就是你本地了,也就是你電腦時間)到五點的時候,就開始運行,不會有偏差。
當你部署到別的地方時,當本地時間五點了,但是伺服器時間(就是部署代碼的那台電腦時間)才
四點五十九,所以就沒運行。

2、java做一個定時器,兩台伺服器,同一個時間執行,但我只要執行一次,要怎樣做?

網頁鏈接遇到過,自己寫了具體實施個方案

3、更改了系統時間,已經啟動Spring定時器,就不執行任務了,暫停了!!!

樓主這個問題解決了嗎?我今天也遇到這個問題了,有解決方案嗎?我是直接用java寫的quartz,沒有結合spring

4、如何在伺服器端實現一個定時器,可以定時向網路的某個埠廣播信息

HTTP協議使用TCP協議傳輸的,因此在傳輸數據之前採用三次握手建立TCP連接。第4個包就是內HTTP請求,然後是HTTP應答容。你的問題是伺服器的應答包沒有收到,那太簡單了。首先是超時定時器到期提示網路無響應。然後可以重新連接即可。

5、C#中基於C/S模式,掛在虛擬伺服器上,做一個定時器,每天11點執行一個方法。

用線程。

很簡單,用線程,每隔一段時間判斷當前時間是否為某個時間點,

如果是則執行代碼;內

如果不是則線容程休息一段時間;

while (true)
{
DateTime exTime=....;//執行時間
DateTime nowTime=DateTime.Now;//當前時間
if(nowTime>exTime)
{
//執行某代碼
}
else
{
Thread.Sleep(1000*60);//停止1分鍾
}
}

上面是線程執行的代碼,停止的時間及判斷的時間按需要自己控制。

6、如何運行的Grails在伺服器啟動時的調度/定時器

1.如果你需要的不僅僅是一個你的quartz插件更多的靈活性,並配置一個cron作業:
class MyTimerJob {
static triggers = {
// cron trigger for every 5 minutes
cron name: 'myCronTrigger', cronExpression: '0 */5 * * * ?'
}
def execute = {
// perform task
}
}

要在應用程序啟動時啟動quartz(如賈里德說:不是在Tomcat啟動),請確保您的grails-app/conf/QuartzConfig.groovy有以下內容:
quartz {
autoStartup = true
}

autoStartup = true是默認的,所以你可能並不需要有任何改變。
使用這個插件將保存您不必自己處理的邏輯。
2.
您無法啟動Tomcat的類開始時,因為它不會訪問您的Grails應用程序使用它需要執行所有相關的數據。您可以在您的Grails應用程序通過將必要的代碼,在conf /目錄BootStrap.groovy中,雖然開始啟動

7、quartz定時器在本地能正常運行,部署到伺服器上不運行,求解答

你需要確定這一個小時中具體是怎麼執行的 ,執行幾次?
0 30 10,11 * * ?
以上表示每天10:30和11:30執行2次

8、java timertask定時器為什麼部署到伺服器上方法會執行兩邊

web.xml監聽配置

Java code?

1
2
3
4

<!-- 定時監聽 -->
<listener>
<listener-class>com.numenzq.mc.service.impl.TimerListener</listener-class>
</listener>

TimerListener類

Java code?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

public class TimerListener implements ServletContextListener {
private Timer timer;
private TimerTaskSelf task;
/**
* @see 銷毀
*/
@Override
public void contextDestroyed(ServletContextEvent arg0) {
timer.cancel();
}

/**
* @see 創建
*/
@Override
public void contextInitialized(ServletContextEvent event) {
timer = new java.util.Timer(true);
task = new TimerTaskSelf(event.getServletContext());
//執行任務指定間隔
timer.scheleAtFixedRate(task, 0, 1000*60*50);

9、java做一個定時器,兩台伺服器,為什麼只有一台執行?

我覺得你去排查日誌會更有幫助點

1,定時任務設置本身有問題嗎
2,部署2個應用會不會任務本身沖突,比如資源競爭導致一個掛了
3,看一下定時器執行邏輯,什麼情況會導致執行不了,找一下日誌,確認問題在哪

與伺服器定時器相關的知識