问题描述
我有一个分布式程序,例如,它有十个进程,并且它们全部将执行某个作业,所有作业信息将存储到同一MysqL数据库中。同时,数据库中有很多正在运行的工作,它们属于不同的进程。当一个进程崩溃时,如何在新进程中恢复正在运行的作业信息。
顺便说一下,我的环境中有MysqL和Zookeeper。
解决方法
您应该为每个正在运行的进程设置一个ID
您应该为每个正在运行的作业设置一个ID
您应该将代码处理放入try ... catch ... finally中,以了解已破坏哪个ID
您应该管理进程ID及其ID作业之间的关系