SAP Cloud Platform中同一应用程序的多个流程之间共享的变量

2020-09-12 22:14发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

当前,我已经实现了一个部署在SAP Cloud平台Neo环境上的Java servlet,该Java servlet调用SAP Mobile Services定期发送电子邮件。

我现在面临的问题是,如果我有多个正在运行的应用程序进程,我将收到同一应用程序的多封重复电子邮件。 例如 如果我在应用程序中配置了3个进程,则会收到3封重复的电子邮件,而我希望只有一封电子邮件。

您能否让我知道是否有任何方法可以控制它,所以无论应用程序正在运行多少个进程,我都只会收到一封电子邮件?

我不能再创建一个应用程序来发送电子邮件,因为这很难维护。

我正在寻找将在所有进程之间共享的任何变量,以便我可以在我的应用程序中编写一个逻辑,如果另一个进程使用此共享变量发送了电子邮件,则不发送电子邮件。

关于

Suhas R

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

当前,我已经实现了一个部署在SAP Cloud平台Neo环境上的Java servlet,该Java servlet调用SAP Mobile Services定期发送电子邮件。

我现在面临的问题是,如果我有多个正在运行的应用程序进程,我将收到同一应用程序的多封重复电子邮件。 例如 如果我在应用程序中配置了3个进程,则会收到3封重复的电子邮件,而我希望只有一封电子邮件。

您能否让我知道是否有任何方法可以控制它,所以无论应用程序正在运行多少个进程,我都只会收到一封电子邮件?

我不能再创建一个应用程序来发送电子邮件,因为这很难维护。

我正在寻找将在所有进程之间共享的任何变量,以便我可以在我的应用程序中编写一个逻辑,如果另一个进程使用此共享变量发送了电子邮件,则不发送电子邮件。

关于

Suhas R

付费偷看设置
发送
1条回答
浮生未央
1楼-- · 2020-09-12 22:22

嗨,Suhas,

AFAIK该SDK没有为您提供一种获取进程ID的方法-该方法可用于确定哪个人负责发送电子邮件。

但是,您可以调用监控API 在第一个应用程序实例启动之后。

 https://api.hana.ondemand.com/monitoring/v1/accounts//apps//metrics 

此API将在" processes [0] .process"下为您提供进程ID-这将是该进程的第一个实例。 id值是应用程序唯一标识符。 然后,您可以在一个临时变量中存储这是第一次执行,并且该实例应该是负责发送邮件的实例。 每当您启动应用程序的新实例时,相同的代码将在启动后执行。 该代码应检查进程列表是否已增加。 如果是这样,则您不会在瞬态变量中存储任何内容,这意味着出现的任何新进程都不会包含设置为true的瞬态变量。 考虑到这一点,您可能最终会遇到同一应用程序的多个实例,但是只有第一个实例会将瞬态变量设置为true。

无论何时运行代码发送邮件,您所需要做的就是在运行此临时变量之前对其进行检查。

最好的问候,
Ivan

一周热门 更多>