消息服务器相关操作说明070808

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

消息服务器相关操作说明

消息队列使用结构可以简单划分为消息发送端、服务器端和消息订阅端。首先在所有的模块启动时都会向消息服务器端进行消息订阅,告诉服务器需要订阅哪种类型的消息,之后如果某个模块需要向其它模块发送消息,这个模块就会将消息发送到服务器端,服务器端会根据各个模块订阅消息的类型,将这个消息转发打相应某块的本地消息队列中去,之后订阅端的模块就会从本地的队列中获取这个消息并进行相应的处理。

消息队列是用来实现播出软件不同模块之间进行通信的,目前的软件中在以下几个流程中应用了消息队列:

a 编单软件发送节目单后播出软件立即接到并显示发单信息;(备注:该流程中,编单软件先将消息发送到消息服务器的消息队列中(队列名称在系统配置工具中进行配置),消息服务器端在检测到自己的队列中有了新的消息后,就会根据该消息的类型和消息订阅情况,判断出播出工作站的队列订阅了这个消息,所以将该消息转发到到播出模块的本地消息队列中(默认为dbsap_local_mag),播出软件在检测到本地队列中有了新的消息后,处理该消息并弹出窗口提示有新的节目单已经被发送了)

b 在播出软件中添加边播出边上载任务以及延时播出上载任务后,上载软件可以立即添加相应的上载任务;(备注:该流程中,播出软件先将消息发送到消息服务器的消息队列中,消息服务器端在检测到自己的队列中有了新的消息后,就会根据该消息的类型和消息订阅情况,判断出上载工作站的队列订阅了这个消息,所以将该消息转发到到上载工作站模块的本地消息队列中(默认为uploadmsgqueue),上载软件在检测到本地队列中有了新的消息后,处理该消息并从数据库中读取对应地边播边载任务或延时播出任务添加到上载任务列表中)

c 在素材管理器中添加素材同步相关任务,或者选择重新执行某个失败的素材管理任务后,素材同步服务器可以立即获取并执行相关任务。

(备注:该流程中,素材管理器先将消息发送到消息服务器的消息队列中,消息服务器端在检测到自己的队列中有了新的消息后,就会根据该消息的类型和消息订阅情况,判断出素材同步服务器的队列订阅了这个消息,所以将该消息转发到到素材同步服务器的本地消息队列中(队列名称是在系统配置工具中配置的),素材同步服务在检测到本地队列中有了新的消息后,处理该消息并从数据库中读取对应同步任务添加到执行列表中)

d 在素材管理器中选择改变同步迁移任务的执行优先级。

(备注:该流程中,素材管理器先将消息发送到消息服务器的消息队列中,消息服务器端在检测到自己的队列中有了新的消息后,就会根据该消息的类型和消息订阅情况,判断出素材同步服务器的队列订阅了这个消息,所以将该消息转发到到素材同步服务器的本地消息队列中(队列名称是在系统配置工具中配置的),素材同步服务在检测到本地队列中有了新的消息后,处理该消息并改变对应任务的优先级)

e 在素材管理器中更新了某些素材的信息后,在播出软件中弹出对话框提示素材更新信息。

(备注:该流程中,素材管理器先将消息发送到消息服务器的消息队列中,

消息服务器端在检测到自己的队列中有了新的消息后,就会根据该消息的类型和消息订阅情况,判断出播出软件的队列订阅了这个消息,所以将该消息转发到到播出软件的本地消息队列中(默认队列名称为:dbsap_local_msg),播出软件在检测到本地队列中有了新的消息后,处理该消息并弹出对话框提示某条素材信息已经更新。)

F同步任务失败后,提交任务的工作站端素材管理器会弹出提示对话框,提示某条素材任务失败。(备注:该流程中,同步服务器先将消息发送到消息服务器的消息队列中,消息服务器端在检测到自己的队列中有了新的消息后,就会根据该消息的类型和消息订阅情况,判断出各个工作站素材管理器的队列订阅了这个消息,所以将该消息转发到到各个工作站素材管理器的本地消息队列中(队列名称是在系统配置工具中配置的),素材管理器在检测到本地队列中有了新的消息后,处理该消息,如果取人消息中通知的任务是本工作站提交的,则弹出对话框提示)

如果在上述的应用流程中消息队列没有起到作用,可以通过下列方法来判断问题原因:

a 首先确认发送端和接收端使用的本地消息队列是否存在且可以正常访问(可以对队列进行读写操作,具体访问消息队列的方法参考附录一),消息服务器也是正常运行的(消息服务器的启动和查看,参考附录二)

b 退出消息服务器软件和接收端应用程序,

c 在发送端软件执行一个可以发送消息的动作(参考前面提到的应用流程),然后到服务器端的消息队列中查看消息是否发送过去,如果可以看到新发送的消息,说名消息发送端的工作正常。否则,有可能是消息发送端软件问题,并没有向服务器端发送消息,或者是系统配置错误,没有指定正确的消息服务器地址,或者是发送端和服务器端的网络通讯存在问题,导致消息无法送达,最后可能就是服务器端的消息队列有问题,无法接收消息。对于最后两种情况,可以使用其它消息队列的测试软件进行确认(比如在消息服务器的目录下的,该软件具体的使用方法参考附录三)。

d 如果服务器端的队列中已经正常收到了消息,可以启动消息服务器软件,然后去接收端的消息队列中查看消息是否被转发到本地队列中,如果可以正常转发,说明消息服务器和订阅信息都是正确的。否则可能是接受端没有在服务器端正确订阅消息造成(关于消息的订阅情况,可以查看消息服务器所在机器C盘根目录的文件,关于该文件的查看方法,请参考附录四),或者是接收端的消息队列不正常造成的。

e 如果消息已经被转发到了接收端的队列中,启动接收端的软件,观察是否可以正确处理接收到的消息,如果没有正确处理,说明接收端的软件在处理消息队列时存在问题。

备注:如何知道软件模块的所使用的消息队列名称,请参考附录五。

经过上述测试流程后,就可以定位出问题出在哪里,并进行相应的处理。

对于消息队列中无法收到消息时,可以首先判断以下网络是否连通,测试方法切记不要使用ping的方式,而应该在命令行输入如下命令:nbtstat –A IP地址

注意“-A”应该为大写字母。

相关文档
最新文档