🎈 九年了,感谢大家 🎏 订阅全年送一年,续订或重订送两年。 立即订阅

博客

Netflix:用户按了播放或下载按钮后发生了什么

最近在研究后端应用架构相关的东西,微服务、事件驱动、CQRS、Event Souring ...  打算实践之后给大家提供一套可实施的方法。(11/11 —— 11/17 可以参加宁皓网的后端应用架构训练,理解微服务、GraphQL、CQRS 在 Node.js 中的实现方法。)

了解 CQRS 与 Event Souring 的时候,找到了 Netflix 分享的一个相关案例,在他们的播放授权服务中用到了 Event Souring 这种模式的事件驱动架构。Netflix 提供影视流媒体订阅服务,全球有 1.5 亿订阅用户。

本来 Netflix 只提供在线的流媒体播放,2016 年初的时候,有团队提出是否可以允许用户下载视频实现离线播放,团队花了 9 个月的时间上线了这个下载离线播放功能。用 Event Sourcing 模式的架构开发了一个灵活,可靠,可扩展,可调试的新服务。

下面我们先理解一下,用户在 Netflix 上按了播放按钮与下载按钮之后都发生了什么。

完成这几组应用架构的训练,今年就值了

2019/11/11 —— 2019/11/17,宁皓网会做一次关于应用架构的线上训练(之前参加过 NNC2019 的同学可以免费参加这次训练)。训练内容主要以后端应用架构为主,这将为你以后创建更灵活的,可扩展性更强的企业级应用提供帮助。

训练都以实践为主,概念也全部都融入到实践当中。也就是通过训练你不但可以学到概念,还能亲自手写每一行代码,验证这些概念的实际应用。这也是我目前觉得最有效的学习方式。

应用的架构决定了开发出来的应用的很多特性,是否更容易被测试,更灵活,更容易维护,可扩展性更强。我们会介绍与实践微服务架构,事件驱动的应用架构,学会创建用 GraphQL 创建应用的接口。一共 7 组训练,每组训练都以一个全新的项目开始,用极其简单的例子,理解复杂的概念与工具。

在 Node.js 生态里,Nest.js 现在是最受欢迎的后端应用框架,这也是我目前用过的最好用的应用框架。所有训练内容全都通过这套框架来实现,训练中需要用到这套框架的基础知识,你可以参考宁皓网的 Nest.js 课程包

在训练过程中,我会在线为您解决所有的障碍与疑惑。

一起到杭州参加 ngChina 开发者大会吧?

ng-China 2019 是第二次中国的 Angular 前端开发者大会,将于 11 月 23 与 24 日在杭州阿里巴巴创新中心(杭州下沙)举行。到时候会有很多谷歌开发者专家与阿里的工程师们跟大家分享前端开发技术,Nest.js 框架的作者 Kamil 也会到场。

我也是前两天偶然发现这个事儿的,因为以后打算长期使用 Angular 与 Nest.js,一看 Nest.js 的作者也要来(11.04,最近得知 Kamil 的行程有变,20 号会在波兰参加 Ng 大会,所以无法参加这次的 ngChina),就自己先报了个名(¥799 )。后来为了确定是否报上了名,加了负责人的微信。因为很喜欢 Angular 与 Nest.js,所以就想写点文字跟大伙说一下这次活动,也厚着脸皮给大家要了两个贵宾名额。如果你有兴趣参加这次开发者大会,可以留言或加我的微信(wanghao_8088)说一下。

带你到新疆去

两年前,我们就计划要去新疆看一看,没有去成是因为当时小孩还小。后来我跟小雪都喜欢来自新疆的一位说唱歌手叫艾热,他有一首歌这样唱:我要回新疆去,带你到新疆去。我们对新疆有好感,多半也是因为艾热。宁皓网的同学里,也有来自新疆的,有一位也叫艾热:)

新疆太远了,我们都不太了解它,但好像每个人又对这个地方都有自己的一个映像。至少会想到很多关键词,天山,雪莲,乌鲁木齐,哈密瓜,葡萄干,吐鲁番,阿凡提。脑子里的画面可能是一片沙漠,加上一片葡萄园,维族大叔唱着歌,跳着舞。

我开始意识到新疆是个美丽的地方,是从一个德国小伙子那里听说的,他说我们家乡很美,但没有像新疆那种壮观的景像。我决定有机会也要去看看。随着新疆开始推广自己的旅游业,会有越来越多的人到这个地方,了解这个地方。

小孩子明年就要上小学了,我跟小雪商量一下,要出去走走,就去新疆吧。小雪其实有点担心,我其实也没什么谱,因为太远了。整天放着那首艾热的,“我要回新疆去,带你到新疆去”,小雪开始浏览了一些新疆的游记,可能也是看到新疆实在太美了,看着看着就把行程定下了。

最近值得学的几样东西

后面我们规划的几个系列课程,需要您提前做一点预习工作。课程会以实际的应用为主,包含前端、移动端还有服务端应用的开发。下面是几个需要您提前完成的训练课程。

TypeScript

(语言)

TypeScript 是增强版的 JavaScript,我们要做的基于 Node.js 的服务端与前端应用的开发都需要用到这门语言。当然 TypeScript 的核心还是 JavaScript 语言本身,所以学习 TypeScript 并不是难事,只需要理解它,熟悉使用它提供的类型系统。

TypeScript 的类型系统可以帮我们检查出一些错误,在编辑器里编写代码的时候也会更智能一些。TypeScript 最终都是要被编译成普通的 JavaScript 语言,这样才能被 Node.js 或者浏览器的 JavaScript 引擎认识。

https://ninghao.net/package/typescript

Nest.js 应用案例与部署

后面我们会一起做一个应用案例,包括 Flutter 移动端应用、Angular 前端案例等等。这需要一个真实的服务端应用,我打算用之前在 Nest.js 的课程里做的那个项目。先用几节课介绍如何在本地启动这个项目,项目的源代码管理的操作方法与基础流程,了解项目的开发工作流程,修复一些小 Bug ,最后再了解一下怎么把它部署到真实的生产环境上。

有了服务端基础以后,在做其它案例的时候,就可以根据需求,去实现需要的服务端功能。

正在制作中 ...

《电商网站案例》已完结:搭建电商网站,集成支付宝与微信支付

在《电商网站案例》里面,我们介绍了一套基于 WordPress 与 WooCommerce 搭建电商网站的方法。课程里面有一部分开发内容,主要是通过自定义 WordPress 的插件,在系统中集成了支付宝与微信支付。

搭建电商网站

如果你有东西要在网上销售,需要快速搭建一个独立的电商网站,WordPress + WooCommerce 是个不错的组合。WordPress 本身是一个内容管理系统,你可以通过它搭建一个内容发布平台。

WooCommerce 是用在 WordPress 系统上的一个电商插件,安装了这个插件的 WordPress 就会拥有电商功能了。WooCommerce 被 WordPress 的母公司 Automattic 收购了,所以它会持续得到支持。

开始计划 Flutter 移动应用案例

今年承诺大家要基于 Flutter 框架,开发一个应用的案例课程。现在开始计划制作,大家可以提些建议,比如特别需要的功能,应用的想法等等。

去年我们发布了一套 Flutter 课程,介绍了这个框架的用法。它是 Google 推出的一个移动应用框架,可以用来创建跨平台的移动应用。

今年 Google 大会,展示出了 Flutter 的野心,它不仅想做移动应用,还要占领 Web 与桌面端。Flutter 框架被 Google 作为战略产品在国内推广,在我们同学中,有一位就来自 Google 中国办公室,他的工作就是推广这套框架在国内的使用。

案例的想法

案例我想还是以传达方法为主,一开始尽量保持简单,不加入复杂的东西,渐近增强,需要的时候再去寻找问题的解决方案。

Flutter 做的是应用的界面,应用的服务需要单独搭建,我打算用最近完结的《Nest.js 应用框架》课程里做的一个服务端应用,作为 Flutter 案例的服务端。

部署 Angular 前端应用到生产环境的基本流程(基于 Docker)

把前端应用相关的资源(js,css,html 文件)扔到一台安装了 Web 服务器的机器上,这其实就是前端应用部署了。原理是这么回事,但是实际的操作过程还是会涉及到很多东西。

下面介绍一个基本的部署前端应用的流程,整个过程都是手动的,为你提供一些思路,每个步骤都可以扩展与改进。部署指的就是把本地开发的应用交付给应用最终的用户去使用。现在我们开发的应用都会分离成客户端与服务端,所以部署也是要分开做的。前端应用就是客户端的一种,用户主要通过浏览器使用它。

我们部署的是一个基于 Angular 前端应用框架做的应用,对这个框架有兴趣可以订阅宁皓网,后面会推出 Angular 的相关课程,也可以参加 9 月初的前端训练营(Ng-Camp)。

2019 前端训练营(09/01 - 09/10)

Angular 又回来了,这款强悍的前端应用框架由 Google 内部团队开发维护,诞生的目的就是为了创建庞大复杂的前端应用程序。这次前端应用开发训练营的主角就是 Angular。



微信好友

用微信扫描二维码,
加我好友。



微信公众号

用微信扫描二维码,
订阅宁皓网公众号。



240746680

用 QQ 扫描二维码,
加入宁皓网 QQ 群。

统计

12798
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点