zoukankan      html  css  js  c++  java
  • Rendertron:谷歌 Chrome 新的 headless 模式又贡献了一个新的技巧

    摘自:https://zhuanlan.zhihu.com/p/31670033

    Rendertron:JavaScript Web 富应用的一个老问题是如何使这些页面的动态渲染部分可供搜索引擎检索。为此开发人员采用了各种各样的技巧,包括使用 React.js 的服务端渲染,外部服务或预渲染内容。现在谷歌 Chrome 新的 headless 模式又贡献了一个新的技巧—— Rendertron,即 Chrome的headless 渲染解决方案。它在一个 Docker 容器中封装了一个 headless 的 Chrome 实例,可以作为独立的HTTP服务器来部署。无法渲染JavaScript的爬虫机器人可以被路由到此服务器来进行渲染。 虽然开发人员也可以部署自己的 headless Chrome代理并配置相关的路由机制,但 Rendertron 简化了配置和部署过程,并提供了令爬虫机器人进行检测和路由的中间件示例代码。

    谷歌 Chrome 新的 headless 模式:

    有一个业务,就是服务器端抓图(把一件事简单做出来容易,把一件事做到极致真不容易):

    有两种思路:

    用Selenium启动FireFox(Chrome),要想处理多用户并发问题,解决办法就是用Selenium Grid,阿里云端加机器,就会增加成本。现在可以考虑启动多个无头模式的Chrome,来提高一些效率了。

    也可以改造F2Test这个方案,但是需要熟悉NodeJs,并且需要做大量的改造工作,时间成本较高。

  • 相关阅读:
    HDU 1059 Dividing(多重背包)
    新华网,要厚道
    js与DOM初步:访问html元素
    Hacker News网站的文章排名算法工作原理
    做技术,是个精益求精的事情
    百度贴吧客户端(Android)网络通信行为分析
    Storm同时接收多个源(spout和bolt)
    各种流处理系统的比较
    Kafka学习
    关联规则推荐及Apriori算法
  • 原文地址:https://www.cnblogs.com/rgqancy/p/8085008.html
Copyright © 2011-2022 走看看