2020-08-19 02:18发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
如果外部系统在指定时间内没有响应,我需要从SAP取消对外部系统的呼叫。
这是场景: SAP系统正在调用外部供应商系统,我的要求是,如果外部系统在200毫秒内没有响应,则SAP系统需要引发异常。
任何人都可以指导处理此超时时间方案。
谢谢。
克里希纳。
cl_http_client-> send方法的超时参数以秒为单位。
您可以将其与SM59 http连接的设置进行比较,还可以设置以秒为单位的最大超时 p>
因此,对于您的用例,当外部系统在200ms以上响应时,您将不得不寻找其他解决方案来引发异常。
例如,您可以测量整个send语句的时间并估算内部计算时间,该时间应该平均较低。 而且,如果您的内部系统在某些情况下运行缓慢,那么我肯定会发出警报,如果确实始终要求它快于〜200ms。
设置运行时时钟分辨率很高 。 "可选,请查阅文档(!) 获取运行时字段数据(rt_start)。 进行几次检查,请使用CL_ABAP_RUNTIME 呼叫方法lr_http_client->发送 出口 超时= 1"最小可能值(以秒为单位) 例外情况 http_communication_failure = 1 http_invalid_state = 2 http_processing_failed = 3 http_invalid_timeout = 4 其他= 5。 如果sy-subrc <> 0。 "处理异常 其他。 获取运行时字段数据(rt_end)。 DATA(runtime_ms)= rt_end-rt_start。 如果runtime_ms>200。"加上内部性能(?) "处理异常 万一。 万一。
我没有使用SM59进行连接设置。 我正在使用cl_http_client类调用外部api。
亲爱的克里希纳
如果您正在调用外部api(不带sm59),请使用
调用方法 http_client->发送 出口 超时= ip_timeout 例外情况 http_communication_failure = 1 http_invalid_state = 2。
然后在sy-subrc ne为0的情况下处理异常。
但是,任何不使用SM59的原因。?
注意事项, p>
Venkat
克里希纳·耶拉姆的意思是通过以下方式使用RFC目标
cl_http_client => create_by_destination(...)。
我认为在SM59中对所有HTTP访问使用HTTP目标是最佳做法。
克里希纳·伊拉姆(Krishna Yerram),请继续回答您的公开问题。
WAIT 对于异步任务[消息发布渠道],直到log_exp [最多几秒钟]。
最多设置5个标签!
cl_http_client-> send方法的超时参数以秒为单位。
您可以将其与SM59 http连接的设置进行比较,还可以设置以秒为单位的最大超时 p>
因此,对于您的用例,当外部系统在200ms以上响应时,您将不得不寻找其他解决方案来引发异常。
例如,您可以测量整个send语句的时间并估算内部计算时间,该时间应该平均较低。 而且,如果您的内部系统在某些情况下运行缓慢,那么我肯定会发出警报,如果确实始终要求它快于〜200ms。
我没有使用SM59进行连接设置。 我正在使用cl_http_client类调用外部api。
亲爱的克里希纳
如果您正在调用外部api(不带sm59),请使用
然后在sy-subrc ne为0的情况下处理异常。
但是,任何不使用SM59的原因。?
注意事项, p>
Venkat
克里希纳·耶拉姆的意思是通过以下方式使用RFC目标
我认为在SM59中对所有HTTP访问使用HTTP目标是最佳做法。
克里希纳·伊拉姆(Krishna Yerram),请继续回答您的公开问题。
一周热门 更多>