导航:首页 > 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,看一下定时器执行逻辑,什么情况会导致执行不了,找一下日志,确认问题在哪

与服务器定时器相关的知识