huenchao / questions

每天想到的问题,都放在issue中。
6 stars 2 forks source link

puppeteer服务模版工具链研发 #25

Open huenchao opened 4 years ago

huenchao commented 4 years ago

puppeteer是什么:

puppeteer是一款google开源的nodejs库,它提供了高阶API来控制chromium内核的浏览器。

puppeteer能做什么:

  1. 可以生成页面快照或者pdf。
  2. 可以做网站爬虫。
  3. 可以做预渲染、SSR等。
  4. 可以做e2e测试、性能测试、兼容性测试、谷歌插件测试等。

现状:

现有的成果:我们在b端的业务需求中,几乎把puppeteer能做的事情全都做了。 现有的困难:虽然它功能很强大,使用很便捷,但使用它的过程中,我们总会遇到一些问题或者说考虑以下问题(当然不仅限只有以下几个点):

现状与需求碰撞在一起后:

就拿用puppeteer爬虫举例,我们其实就想利用这个工具模拟浏览页面,把需要的页面内容copy下来,但是每次开发都要去写一套服务代码,而且几乎每次需求都可能又遇到未知的坑:

怎么提高开发体验、效率、减少心智负担?

讨论&&目标:

PS:设定讨论范围,我个人认为我们是要设计或者说是整合出一套针对puppeteer应用的框架。所以,对于存储、会话管理、安全等等不是重点讨论范围,但框架模版的设计,要很好的兼容这些场景的接入。

目标就是让开发只关注puppeteer能做什么?尽最大可能的让开发和部署保持一致性,你可以理解它几乎是一个小FasS平台,让交付保持一致性。

huenchao commented 4 years ago

周二(今天)16:00~18:00 23楼6号会议室,大家有时间针对这个主题进行一次简短的讨论吗?

讨论的主要内容是:

  1. 以puppeteer为解决方案的nodejs模版建设,目标让开发测尽量少考虑需求以外的事情。

  2. cli的建设,目标是让开发更标准化,不仅限于(代码覆盖率、单元测试、e2e、常见问题提示、依赖升降级)

  3. 公司现有的监控平台有哪些?监控手段有哪些? 能不能复用或者抽取部分功能设计成容易帮我们定位pptr服务的。我们监控的重点在于内存+网络,因为docker可以保证交付的一致性,但是底层依赖的宿主环境线上和本地还是有差别的。我们如何通过内存+网络的数据结合错误堆栈,分析、过滤、总结问题发送的来源。

  4. 本次讨论内容限定在45分钟内,内容结果和过程将会以RFC的形式,记录在issue中。

huenchao commented 4 years ago
WeChat840bcc52004ba4edcf3e4b4c2a0effc5