打算做一个 SPA 在线渲染服务,类似 prerender.io

2018-06-11 11:47:57 +08:00
 zhandi

之前在 v2 问了一下 SPA 的搜索引擎收录问题,同时也自己进行了测试。 发现百度蜘蛛和谷歌并不能很好的收录单页(spa)应用。 自己也尝试用过 ssr 的方案,ssr 方案的问题有几个: 1.需要改动原有代码 2.服务器需要跑 node 3.负载比较高

在谷歌相关解决方案的时候,发现国外有不少做 SPA 渲染服务的 原理是这样的: 在 http 请求来的时候,判断 ua,如果是爬虫,就反代到 spa 渲染服务接口,spa 渲染服务会使用无头浏览器进行访问,并输出渲染后的页面。

看国内并没有提供类似服务的,想自己搞一个。 (目前手里有资源能扛较高的并发)

V 油给点建议?

1866 次点击
所在节点    程序员
16 条回复
wswuai
2018-06-11 11:54:28 +08:00
Splash / phantomjs 了解一下
zhandi
2018-06-11 11:57:35 +08:00
我打算做的服务就是用 phantomjs 作为无头浏览器进行渲染,只是把它服务化,让生产服务器不再承担这个任务,由第三方去做
xylitolLin
2018-06-11 12:00:35 +08:00
PhantomJS 的性能实在是... 我公司也用 PhantomJS 做专门的 SEO 的,现在都逐步重构为 SSR 了
mdluo
2018-06-11 12:00:41 +08:00
Puppeteer as a service:
https://pptraas.com
zhandi
2018-06-11 12:07:51 +08:00
@xylitolLin 是的,PhantomJS 的性能确实...,但是 ssr 我感觉也不太好。所以我想做一个国内的 SPA 渲染服务,刚好手里有一批资源可以用来跑 PhantomJS。
zhandi
2018-06-11 12:09:23 +08:00
@mdluo 是的,我想做的就是这个,再加入页面缓存之类的。
Cynic222
2018-06-11 12:10:10 +08:00
现在都转到 puppeteer 了
zhandi
2018-06-11 12:19:39 +08:00
@Cynic222 puppeteer 也有测试,可能是因为肩负太多其他任务,也或者是我优化不到位,puppeteer 渲染速度还没 PhantomJS 快。
mdluo
2018-06-11 12:26:52 +08:00
@zhandi #6 渲染静态网页技术上一点难度都没有,但是难在怎么把这个东西包装成 SaaS 平台并且运营起来并且拉到客户来用并且愿意付钱,这和仅仅开发几个功能就完全是两个概念了
tingyunsay
2018-06-11 12:47:59 +08:00
楼主看看这个有木有你提到的这种服务: https://scrapinghub.com/ ,而且我觉得首先你要做成云服务,别人把 url 丢到你这边渲染,再返回,传输的时间就消耗有点多;而且这个需求一般是研发人员会在意的,如果是这样研发基本都能自己搭建集群,splash / puppeteer/ phantomjs 这种类似,那客户群体都有哪些呢?;还有一点,如果你全部用自己的机器去渲染,如果遇上 ip 之类的反爬(你这边也需要解决吧),对于用户是不是还需要另外收费呢?提点自己的想法,楼主加油~~
caviar
2018-06-11 12:56:56 +08:00
zhandi
2018-06-11 14:18:40 +08:00
@mdluo
@tingyunsay
是的,确实技术壁垒不高,主要问题在于如何商业化,能有资金回流解决生存问题。
zhandi
2018-06-11 14:19:53 +08:00
@caviar 是的,SaaS 的在线渲染服务,但是专注于 html 渲染,为 seo 助力
yrj
2018-06-11 16:51:58 +08:00
@zhandi 我之前也用 Puppeteer 做了一個,感覺也是沒有 phantomjs 快,但是可以解析 vue 等 mvvm 框架的網頁。
zhandi
2018-06-11 21:23:55 +08:00
@yrj Puppeteer 和 phantomjs 都没问题,只是 phantomjs 好像对 es6 支持不如 Puppeteer 好
wzhndd2
2018-06-12 10:24:31 +08:00
headless 了解一下

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/462105

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX