香港带宽_华为云服务数据中心_稳定性好

时间:2022-01-15 17:40       来源: 微辰云

香港带宽_华为云服务数据中心_稳定性好

在这个博客里,我将分享我在最近的两个SAPUI5和Fiori实现项目中,在NetWeaver Gateway和Web Dispatcher中启用HTTP/2特性后,在大用户体验改进方面的经验

HTTP vs HTTP/2

如果你做过任何网页/站点/应用程序的设计和开发,你一定知道HTTP 1.1协议。这是浏览器和web服务器之间的通信协议。浏览器向web服务器发送一个资源请求,然后web服务器将请求的资源返回给浏览器。所以,一般来说,一次对一个资源的请求,静态内容(图像、JavaScript、CSS、音频/视频等)就会缓存到用户的计算机光盘中,以缩短打开网页时的等待时间,因为一次往返只能请求一个文件。

HTTP/2(又名h2或HTTP 2.0)是HTTP通信协议的第二个主要版本。该协议于2015年获得IETF(互联网工程任务组)的批准,并被所有主要网站和浏览器(如Firefox、Chrome、Safari等)广泛采用。有关更多详细信息,淘客联盟,请查看RFC 7540。新版本与以前的版本相比有很多改进,企业管理应用,其中一个新特性叫做"多路复用",它帮助浏览器在单个HTTP/2连接中并行发送多个资源请求。请看下图以快速了解这一点。

上图说明在HTTP/2下,浏览器可以在一个TCP连接内并行发送多个资源请求。这种改进带来了更少的等待时间,更快的响应,云购,用户从您的解决方案中获得更好的用户体验。

如何在NetWeaver网关和Web Dispatcher中启用HTTP/2?

NetWeaver网关版本7.51、Web Dispatcher 7.49都支持HTTP/2(请交叉检查博客)https://blogs.sap.com/2016/10/19/connectivity-news-abap-7.51/).

在系统配置文件中添加配置文件参数icm/HTTP/support\u http2=true.

在HTTP/2下运行通信有一个先决条件,它必须是至少TLS 1.2加密的HTTPS。尽管在ietfrfc7540中,它没有提到HTTP/2必须在HTTPS下运行,但事实是所有浏览器供应商只在通信处于加密模式时才使其工作。除此之外,如果您想使用TLS 1.1或更高版本,则需要COMMONCRYPTOLIB 8.4.31或更高版本。

请注意与Fiori/SAPUI5项目的区别

下面的屏幕截图显示了Chrome中的Fiori启动板加载历史。浏览器通过SAP Web Dispatcher 7.49从Internet连接到Fiori启动板。您可以看到"Protocol"列显示了浏览器用于请求资源的协议。h2表示HTTP/2。在第一个请求之后的5个JavaScript资源请求FioriLaunchpad.html文件请求都是并行运行的,因为您可以在"瀑布"列中看到它们同时启动。总之,从第一个请求到Launchpad显示完成,它传输了2.3MB、27个web请求,只花了1.59秒。其他浏览器(IE11、Edge、FireFox)也有类似的结果。

下面的截图是用HTTP/1.1从同一服务器plus上截取的。28个HTTP请求,传输了相同数量的数据,但用了9.78秒完成了Fiori启动板加载。比在HTTP/2下运行长6倍。这是一个巨大的差异,我的客户对这个小小的变化感到非常惊讶,但却带来了很好的体验。

总结

如果您使用Apache或IIS作为您的一线代理服务器。没关系,互联网上有很多关于如何支持HTTP/2的信息。你只需要知道你是否需要更新服务器或做一些更改来启用它。

我被一些客户告知,他们觉得他们的Fiori解决方案运行有点慢,搭建大数据平台,尤其是在打开应用程序时。我最初的猜测是因为那是浏览器下载SAPUI5库文件的时间。但是,返现app,我必须说,应用程序运行缓慢可能是多种原因造成的。可能是开发人员没有创建组件-预加载.js,可能是编程不好,可能是OData服务出现性能问题。如果该应用程序是按照SAP设计指南开发的,并在SAPUI5:HTML5+HTTP/2的UI开发工具包中教授,那么您的用户不会问您为什么打开该应用程序这么慢。

参考

HTTP/2支持https://blogs.sap.com/2016/10/19/connectivity-news-abap-7.51/超文本传输协议版本2(HTTP/2)2092630–在作为ABAP和JAVA的SAP NETWEAVER上以及在SAP HANA XS上关闭SSLv3