云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

分布式存储_关系型数据库mysql_企业0元试用

小七 141 0

Odata服务的软状态支持•索引

样本服务详情配置软状态的步骤技术实施步骤在浏览器中测试软状态响应时间比较实施注意事项

1.样品服务详情:-服务名称:ZCOE\u SV\u SOFT\u STATE测试URI:https://***/opu/odata/sap/ZCOE\u SV\u SOFT\u STATE\u SRV/ProductSe

2.配置SOFT STATE的步骤

1。在集线器系统上成功注册服务后,进入服务维护,按下"软状态"按钮激活软状态,然后执行后续步骤

2。配置会话超时。在屏幕左下角,单击ICF节点–>配置(SICF)

3.在SICF树中双击您的服务条目。从菜单中选择Service–>Change(1)并输入大于零的会话超时,例如10秒。如果超过配置为会话超时的时间,系统将从数据库获取数据。

保存更改(2)并导航回服务维护屏幕。一旦此会话超时,系统将从数据库中获取新数据,否则将使用应用服务器上可用的数据。

3.技术实现步骤

服务名称:ZCOE\u SV\u SOFT\u STATE类名:ZCL\u ZCOE\u SV\u SOFT\u STATE\u DPC\u EXT

a.在DPC扩展类中创建属性'MV\u IS\u SOFTSTATE'作为当前软状态会话的标志指示符。同时创建全局静态属性以包含软状态会话期间的数据,例如,在本例中,GI\u头将包含整个软状态会话期间的所有产品数据。

b.重新定义以下方法,

./IWBEP/IF\u MGW\u SOST\u SRV\u RUNTIME~ OPERATION\u START

Method OPERATION\u START检查可能仍在会话中可用的数据应用程序缓冲区,或者加载相应的资源,即,用处理所需的数据填充缓存。代码:

这里我们设置了软状态变量,以后可以在DPC Ext方法中使用。

/IWBEP/IF\u MGW\u SOST\u SRV\u RUNTIME~ OPERATION\u END方法操作\u END应该确保/清除所有可能得到的资源如果当前会话关闭,则会丢失。

此处不需要任何代码,只需重新定义此方法并激活。

注意:如果不重新定义上述方法,则会获得如下转储。

c.获取实体集我使用了product get entity set(表:SNWD\u PD)。这里我们使用了变量mv\u is\u softstate(当soft state处于活动状态时,此变量始终设置为abap true)。

如果此变量为abap\u true,并且我们的实体集合表为initial,则表示其第一次命中。所以这里我们将访问数据库并获取数据。如果mv\ u is\ u softstate is set and Entity set table is not initial,这意味着我们在应用服务器上有可用的数据。我们可以使用相同的数据。因此,在这里我们可以保存数据库命中,从而为后续请求提供良好的性能。如果配置的会话超时超过(即我们在上文第3点"如何配置软状态"的配置中设置的10),系统将从数据库中获取新的数据。

代码:

4.在浏览器中测试软状态a.在浏览器中调用服务,https://*****/sap/opu/odata/sap/ZCOE\u SV\u SOFT\u STATE\u SRV/ProductSet

作为第一个调用,系统将从数据库中获取数据。我们可以在下面的图片中看到mv\ u是\ u softstate是'X'并且实体集合表格(GI_HEADER和ET_ENTITYSET)为空

数据填充如下,

b.当我们按刷新(10秒前)或会话以某种方式中断或浏览器关闭时,使用来自应用服务器的数据。在下图中,您可以看到,内部表GIU头保存着数据。

所以我们不点击这里的数据库,而是使用应用服务器上可用的数据。

如果我们一直按刷新,直到没有超过配置为会话超时的时间,系统将继续使用应用层可用的数据。如果超过配置为会话超时的时间,系统将从数据库中获取新的数据。

c.现在我们将等待一段时间,这样配置的会话超时就超过了。

这里我们可以看到表gi\ U头是空的,即应用层没有数据。系统将从数据库中获取新的数据。

请注意:当您等待的时间比SICF中配置为会话超时的时间长时,系统将从数据库中获取新数据。此外,随着配置的会话超时,淘客家园,还会有额外的延迟,因此我们可能需要等待更长的时间,否则我们可以单击刷新以结束会话。

5.响应时间比较

使用软状态或不使用软状态时的行为可以通过性能跟踪很好地检查。这可以使用事务/IWFND/TRACES启动。

a.软状态激活。

我们可以在上图中看到2个条目,第一个请求在从数据库获取数据时需要更多的时间,返利机器人怎么做,但如果我们检查第二个请求,性能会有很大的提高。对于每个后续请求,应用程序数据提供者的响应时间为零,GW框架开销减少了7.32亿秒。我们可以看到第一个请求的处理时间是900ms,应用时间是672ms,财务大数据,第二个请求的处理时间是168和0。因此,软状态将提高后续请求的性能。

b.软状态不活动。

这里的前3个条目是软状态不活动时的条目。如果我们比较两种情况的时间,我们可以看到显著的性能改善。

时间比较:

处理时间:

申请时间: