如何缓存来自hadoop的图像,以及如何隐藏url中给定的端口号

1sbrub3j  于 2021-06-03  发布在  Hadoop
关注(0)|答案(2)|浏览(367)

http://testing:50070/webhdfs/v1/Test/asaw4zds_ssdf4_ht35-9a1a-4a7b-9n.jpg?op=OPEN 我用webhdfs通过hadoop获取上面的图像我想在浏览器中缓存这个图像怎么做有什么机制来缓存来自hadoop的图像以及如何在这个url中隐藏端口号

flseospp

flseospp1#

我不熟悉 webhdfs 但如果它不支持缓存,则必须在客户端和webhdfs服务器之间放置一个缓存层。
好吧,你需要的是启用缓存功能的反向代理。有几种方法可以选择,但是您应该使用apache mod\u缓存或nginx反向代理缓存,这样就可以了。
所以,如果您想从url中隐藏端口,就必须在端口上启动webserver/proxy 80 . 然后,只需启用代理别名 /proxy 上下文并将请求重定向设置为 http://testing:50070/webhdfs . 启用缓存。最后你可以要求 webhdfs 通过缓存url上的代理 http://testing/proxy/v1/Test/asaw4zds_ssdf4_ht35-9a1a-4a7b-9n.jpg?op=OPEN 通信将如下所示:

Client 1:00PM <> Proxy (no cache) <> Webhdfs (asaw4zds_ssdf4_ht35-9a1a-4a7b-9n.jpg)
Client 2:00PM <> Proxy (asaw4zds_ssdf4_ht35-9a1a-4a7b-9n.jpg) expires in 1h
Client 2:45PM <> Proxy (asaw4zds_ssdf4_ht35-9a1a-4a7b-9n.jpg) expires in 15min
Client 4:00PM <> Proxy (asaw4zds_ssdf4_ht35-9a1a-4a7b-9n.jpg) expired!! <> Webhdfs (asaw4zds_ssdf4_ht35-9a1a-4a7b-9n.jpg)

我没有提供任何示例,但是您可以找到许多针对apache或nginx的示例。你自己选择。

yh2wf1be

yh2wf1be2#

我知道这是一个延迟响应,但是apacheknox是用于hadoop访问的restapi网关。它的一个具体目标是对使用者隐藏内部拓扑信息。Apache诺克斯

相关问题