服务器有一个任务要执行,可能要分布到每台计算机 假设有1,2,3...j....n台
每一台都有自执行模块, 相当程序里的Function他们之间是配合工作的,每台计算机都有优先级的,分别是1,2,3,4...i.....m
执行从1开始,到m,如果要执行i必保证i-1执行成功,如果不成功的话,就不能执行.但又不能保证n台计算机都同行开机工作, 如果到j台突然关机, 程序得不到执行,但值还有, 当用户开机后, 这台机器开始运行, 并把值传给下一台机子, 直到m任务...还有就是监视状态,服务器可以检查到哪台机子不能运行有记录,可以让用户知道程序执行到哪了...!!
每一台都有自执行模块, 相当程序里的Function他们之间是配合工作的,每台计算机都有优先级的,分别是1,2,3,4...i.....m
执行从1开始,到m,如果要执行i必保证i-1执行成功,如果不成功的话,就不能执行.但又不能保证n台计算机都同行开机工作, 如果到j台突然关机, 程序得不到执行,但值还有, 当用户开机后, 这台机器开始运行, 并把值传给下一台机子, 直到m任务...还有就是监视状态,服务器可以检查到哪台机子不能运行有记录,可以让用户知道程序执行到哪了...!!
BTW:问题很大,不过标题还是显得太大了,呵呵。
稍微繁了一点,但也不至于让所有CSDN程序员都来才能解决。呵呵,太小看了吧。
把其中一台服务器拿出来做总的服务器,然后分配任务,并监听子服务器信息。每台子服务器执行任务,并定时向总服务器反馈信息。比如第i台执行成功,发回信息到总服务器,则第i+1台开始执行。如果i台突然关机,则总服务器会发现i台任务执行失败,把i台的任务交给i+1台,当i台重启了,那服务器收到i台信息,就继续分配给i台执行了。
打个很简单的比喻用类似于客户/服务器模式就可以解决这个问题了。
还有很重要一点,多服务器工作,他们之间必须有一台负责分配任务的,还有它们自己是定期进行通讯联络的,就行网络的路由器一样,是定期发信息联络来维护网络链路表,以此判断网络的最新状况!
把其中一台服务器拿出来做总的服务器,然后分配任务,并监听子服务器信息。每台子服务器执行任务,并定时向总服务器反馈信息。比如第i台执行成功,发回信息到总服务器,则第i+1台开始执行。如果i台突然关机,则总服务器会发现i台任务执行失败,把i台的任务交给i+1台,当i台重启了,那服务器收到i台信息,就继续分配给i台执行了。
打个很简单的比喻用类似于客户/服务器模式就可以解决这个问题了。
还有很重要一点,多服务器工作,他们之间必须有一台负责分配任务的,还有它们自己是定期进行通讯联络的,就行网络的路由器一样,是定期发信息联络来维护网络链路表,以此判断网络的最新状况!