Lotus Notes 连接器 运行 IIOP 连接后来自副本的代理

Lotus Notes Connector run the agent from replica after IIOP connection

我确实有以下情况:

我想做的是:

有时,视情况而定,我想运行 Agent "Worker" 从副本。例如,我想 运行 代理 "Worker"DominoServer2DominoServer3.

问题:

由于通过 IIOP 连接到 Notes 数据库是静态的,我总是连接到 DominoServer1 上的数据库 "ScheduledJobs.nsf"

问题:

在副本上的这个 IIOP 连接之后,我可以 运行 代理 "Worker" 吗?


已编辑

我的代码 "RunWorkerOn2"

Dim agent As NotesAgent
Dim sess As New NotesSession    
Dim db As NotesDatabase
Dim doc As NotesDocument    
Dim item As NotesItem

Set db = sess.CurrentDatabase   
Set agent = sess.CurrentAgent

Call db.Open( "DominoServer2/ORGANIZATION", "ScheduledJobs.nsf" )
Set agent = db.GetAgent("Worker")

// Reason why im using 'run' insted of RunOnServer:
// https://www-01.ibm.com/support/docview.wss?uid=swg1LO42549
If agent.Run() = 0 Then
    Print "SUCCESS"
Else
    Print "FAILED"
End If

您可以间接执行此操作。

在包含 "Worker" 的 ScheduledJobs 数据库中,添加两个新代理:"RunWorkerOn2" 和 "RunWorkerOn3"。

在RunWorkerOn2代理的代码中,添加代码在DominoServer2上打开ScheduledJobs.nsf并使用NotesDatabase.GetAgent("Worker")。然后调用 NotesAgent.RunOnServer 到 Dominoserver2 上的 运行 Worker。

同样,在RunWorkerOn3代理的代码中,在DominoServer3上打开ScheduledJobs.nsf,使用NotesDatabas.GetAgent("Worker")。然后调用 NotesAgent.RunOnserver 到 DominoServer3 上的 运行 Worker。

这样一来,您的连接器仍然连接到 DominoServer1,并且它 运行 在 DominoServer1 上进行所有代理,但这些代理又会 运行 DominoServer2 和 DominoServer3 上的代理。