SAP CRM My Opportunity Fiori应用网络请求的详细分析

This roundtrip is used to render the navigation list when the Opportunity tile is clicked by launchpad. It is mandatory, could not be eliminated.

SAP CRM My Opportunity Fiori应用网络请求的详细分析2: #11: https://fiorilaunchpad-faasperf.dispatcher.neo.ondemand.com/sap/opu/odata/sap/CRM_OPPORTUNITY/


Once the top 20 opportunities are retrieved from backend, by default the FIRST item in the navigation list will be selected automatically, and its detail data will be displayed in the detail view ( technical name: S3.view.xml ). Thus the detailed data of this selected opportunity will be fetched via OData batch request (roundtrip marked with green in below picture - this is however the #13 roundtrip mentioned in the excel).

SAP CRM My Opportunity Fiori应用网络请求的详细分析

SAP CRM My Opportunity Fiori应用网络请求的详细分析

SAP CRM My Opportunity Fiori应用网络请求的详细分析

SAP CRM My Opportunity Fiori应用网络请求的详细分析

–batch_c9c9-beb3-1a6d

Content-Type: application/http

Content-Transfer-Encoding: binary


GET SalesStages HTTP/1.1

Accept-Language: en

Accept: application/json

MaxDataServiceVersion: 2.0

DataServiceVersion: 2.0


–batch_c9c9-beb3-1a6d

Content-Type: application/http

Content-Transfer-Encoding: binary


GET Priorities HTTP/1.1

Accept-Language: en

Accept: application/json

MaxDataServiceVersion: 2.0

DataServiceVersion: 2.0


–batch_c9c9-beb3-1a6d

Content-Type: application/http

Content-Transfer-Encoding: binary


GET UserStatuses HTTP/1.1

Accept-Language: en

Accept: application/json

MaxDataServiceVersion: 2.0

DataServiceVersion: 2.0


–batch_c9c9-beb3-1a6d

Content-Type: application/http

Content-Transfer-Encoding: binary


GET Currencies HTTP/1.1

Accept-Language: en

Accept: application/json

MaxDataServiceVersion: 2.0

DataServiceVersion: 2.0


–batch_c9c9-beb3-1a6d

Content-Type: application/http

Content-Transfer-Encoding: binary


GET Opportunities(guid’FA163EEF-573D-1ED4-BEC1-5BEA665821F3’)?$expand=ChangeDocs,Competitors,Products,OpportunityLogSet HTTP/1.1

Accept-Language: en

Accept: application/json

MaxDataServiceVersion: 2.0

DataServiceVersion: 2.0


–batch_c9c9-beb3-1a6d

Content-Type: application/http

Content-Transfer-Encoding: binary


GET RetrieveMaxHitSet HTTP/1.1

Accept-Language: en

Accept: application/json

MaxDataServiceVersion: 2.0

DataServiceVersion: 2.0


–batch_c9c9-beb3-1a6d–


Instance based.


4: #12 roundtrip https://fiorilaunchpad-faasperf.dispatcher.neo.ondemand.com/sap/opu/odata/sap/CRM_OPPORTUNITY/Opportunities(guid’3C9E5E12-ECCD-AE44-A46C-C3BB558EE9A3’)


This roundtrip is used to get ETAG:

SAP CRM My Opportunity Fiori应用网络请求的详细分析

SAP CRM My Opportunity Fiori应用网络请求的详细分析

Instance based.


5: #14 roundtrip: https://fiorilaunchpad-

faasperf.dispatcher.neo.ondemand.com/sap/opu/odata/sap/CRM_OPPORTUNITY/AccountCollection(‘3272’)?$expand=Logo


This roundtrip is responsible to retrieve the logo header information of a given account. Logo is maintained in CRM backend system via attachment.


#15 roundtrip: https://fiorilaunchpad-faasperf.dispatcher.neo.ondemand.com/sap/opu/odata/sap/CRM_OPPORTUNITY/AttachmentCollection(documentID=‘0090FA0D8ACA1EE39287D2CF99FACB4F’,documentClass=‘BDS_POC1’,businessPartnerID=‘3272’)/$value

The document id and document class are retrieved by the previous roundtrip, #14. Then the binary data of logo image is retrieved in this step.


The data retrieve for logo image binary data is expensive. Just checked in SAP internal system, for a small image with 16.8k, still more than 800ms is spent in backend handling.

SAP CRM My Opportunity Fiori应用网络请求的详细分析

上一篇:第5章—构建Spring Web应用程序—关于spring中的validate注解后台校验的解析


下一篇:.net core 中间件管道底层剖析