🦄 2024 独立开发者训练营,一起创业!(早鸟优惠在5天后结束)查看介绍 / 立即报名 →

博客

重构日记:全部视频上传并处理完成

所有训练视频现在都已经上传并且处理好了,直接通过阿里云的控制台上传的视频,然后通过回调接口,在应用的数据仓库里存储所有相关的视频数据。注意上传视频之前先买几个转换包,这样会便宜一些,我买了两个 2 万分钟的转码包,一个包是 200 多块钱,一共 4 万分钟,转码完成以后还剩 12237 分钟。

因为这个转码包是针对标清尺寸定的,高清,超清还有 2k 都要基于这个标清尺寸按一定比例增加转码时长,比如 2k 应该是 1:6,也就是转1分钟的 2k 视频要消耗掉转码包里的 6 分钟的时长。

阿里的这个统计好像有点问题,因为我并没有设置要转码 4k 视频。我设置了三种尺寸,分别是 2k(2560宽),超清(1920宽),还有高清(1280宽)。在高清屏幕上,播放 2k 视频明显会清晰很多,普通屏幕播放 1920 或 1280 宽的视频就足够清晰了。

重构日记:用阿里云的视频点播服务搭建新宁皓的流媒体服务

虽然工期紧张,还是忍不住想跟大家分享一下我在搭建新宁皓的视频播放服务的痛苦经历,现在想想,简单的像是在夏天里吃根冰棍。

宁皓网现在用的视频播放服务就是直接把压缩好的视频上传到服务器上,我在阿里云买了一块 NAS 存储服务,这样多台服务器可以共用这块存储,也就是都可以在同一个地方读取视频文件。这次重构我打算试一下视频点播服务,虽然咱们是个小网站,不过还是会有一些在国外的用户,我希望可以用内容分发服务更快速的把视频内容交给大家。

这回让我痛苦不堪的就是在学习阿里云的视频点播服务的时候,总体来说,阿里云的开发文档还是值得肯定的,只要花些时间就可以在文档里找到自己想要的东西,即使找不到阿里云的工程师们也能即时帮我们解决掉任何的疑问。

阿里云的文档表达的比较官方与正式,对我这种习惯白话的人来讲有点不太适应,再加上文档里掺杂着一些陌生的技术词汇,还有就是复杂的流程图,这不能怪阿里云画的不好,我真的是看不懂流程图,看着看着就迷了路。

这个视频点播服务还是有些复杂的,文档里出现的一些东西也比较容易混淆,有时候难以判断在文档里提到的东西到底是服务本身提供的,还是需要我们开发者自己要做的。客户这个词在阿里云的文档里指的应该是我们,但是在我们心里客户指的是我们应用的用户,或者客户端的应用。

重构日记:应用架构选哪种?

最近重构应用,设计应用架构的时候,给新宁皓选择的是一种流式架构,感觉很好,一切都规规矩矩,整整齐齐,可扩展性也更强了。这种流式架构主要使用了 CQRS(命令与查询责任分离) 这种模式。

使用这种构架,在应用要去做一些事情,可以执行一个命令(Command),每个命令都有跟自己对应的处理器,应用里发生了什么事情,可以发布一个事件(Event), 事件都有对应的处理器。另外还有一种叫 Saga 的东西,它会监听应用里发生的所有的事情,我们可以在 Saga 里面继续处理事件,事件流是 Observable,所以可以使用 Rxjs 提供的各种操作员帮忙来处理。

比如应用要创建一个新的用户,可以触发一个创建用户命令(CreateUser),在命令对应的处理器那里可以去完成一些处理,比如把用户数据存储在数据仓库里,然后可以再发布一个用户已被创建(UserCreated)的事件,在对应的事件处理器那里可以对这个事件做出反应,比如在某个数据仓库里记录一下这个事件。另外在应用里还可以再定义一个 Saga,过滤出 UserCreated 事件,可以在这个 Saga 里继续处理这个事件,比如执行一个新的命令给用户发送一封欢迎邮件之类的。

独立开发之旅,准备出发 ~

这次独立开发之旅所需要的视频内容已经全部准备好了,全长约 52 小时,目的是掌握一套系统的开发工具与方法,能够根据具体需求,独立设计与实现所需应用。

我们会从头开始独立开发一个应用,应用分成服务端与客户端两个部分,它们其实是两个独立的应用,用户通过浏览器可以使用客户端应用,服务端应用会在服务器上运行,这也就是现在流行的所谓前端分离的 Web 应用。

这次我们不仅要学习某种开发语言或者框架,更主要的目的就是要开发一个系统,一个应用,我们要把很多东西整合在一起,让他们变得有意义。所以这一路不但要掌握应用框架的用法,还要解决很多具体问题,比如在用户用微信客户端扫码以后,如何在应用界面上实时地做出反应?如何让用户使用微信登录?怎么简化支付流程,在不离开当前页面的情况下就可以完成支付?

不仅如此,我们还给这个应用设计了一个经过验证的商业模型,就是订阅会员与商用许可。用户通过付费订阅,在一定期限内可以使用应用提供的增值服务,比如无限次下载原版照片。用户也可以单独购买某张照片的商用许可,付费以后可以下载原版照片。这两种商业模式都是经过验证可行的(比如融资 3 亿的 Artlist)。你可以基于我们开发的应用,做些修改,在线销售其它类型的服务与数字资源,比如音频,视频,或者文字。

Dribbble:一个没融过资的设计师平台

如果查 Dribbble 网站的融资历史,你会发现它之前真的没有融过资,在一次演讲中,其中一位创始人也给出了不要接受融资的建议。网站有两位创始人,他们是好朋友,在 2008 年的时候上线了这个网站,十年之后他们把网站的大部分卖给了 Tiny 这家公司,后来创始人也选择离开,开始去做其它的事情。

Dribbble 是设计师分享作品用的一个平台,模式很简单,就是设计师们可以在网站上展示自己的作品,然后得到工作机会。这家网站现在每个月大概有 600 万的活跃用户,网站一直是盈利的,主要是靠工作板、广告还有订阅会员的收入。

宁皓老友记:山城产品经理用 HTML 与 CSS 挖到宝

前不久 DZ 在群里分享了他在闲鱼做任务的经历,今天大家又聊起了这件事,我觉得特别有趣,下面就跟大家分享一下我们的对话。

DZ 是山城一家做姨妈巾的上市公司里的一名产品经理,他平时戏称自己是在公司里打杂的,在咱们群里(QQ 群:240746680)的昵称也是 重庆-打杂的,所以我们平时叫简称他为 DZ。每天早上他都会在群里发一张动图遛一遛,图里的这位小朋友跟 DZ 小时候还有点像。

我:@重庆-打杂的 dz 最近在闲鱼上接到新的任务了吗?

DZ:有单没接,五一出门玩了,不在家,全都拒绝了。

我:主要都是一些什么任务啊,用户都是学生吗?

DZ: 什么样的人都有吧,学生一般那种直接发一大篇作业要求让你做项目,这种我不接,我都是接比较短时间的需求明确的。

我:太花时间了是吧。

宁皓老友记:从魔都到江城再退到武当山旁的自由职业者

源泉是宁皓网的老友,可以追溯到 13 年,毕业后在魔都闯荡了几年,又到江城做了两年调整,最终回到武当山旁(湖北十堰)老家成为一名全职的自由职业者与独立开发者

最近跟他约了个稿子,跟大家分享一下他的自由职业经历。比如怎么找到客户,维护客户关系,计算收入,调整心态等等。此文充满诚意,干货满满。

  • 标题:以退为进自由职业超越一线收益之前端打字员
  • 作者:源泉

作为一个前端打字员,忙忙碌碌又是一年,不知不觉已经自由职业近 2 年了。终于也在自由职业之路上摸索出了一条适合自己的路。

故事与背景

自由职业之前,我在魔都待了 4 年。在去魔都之前,也曾尝试过在老家做自由职业,因为当时处于刚毕业阶段,稍微会一点 CSSJavaScript。然后就以为可以自学很多东西,至少能帮助别人做一些企业站来糊口。

宁皓老友记:连夜奔袭千里只为过来给我打打气

“所以,我过来就是为了给你打打气,你能把我吸引过来已经赢了。” 这是我跟强哥聊天印象最深的一句话。4 月 12 日,晚饭过后收到一条微信,“王老师,你现在忙吧”,我:“在”。“我在上海,准备去济南”,我:“好啊,哈哈,我在济南”。“专程找你,聊一聊再次创业的故事” 。我:“好来,到时候见”。

当晚我们又聊了几句,强哥没有买到高铁,所以就买了一张从上海到济南的绿皮火车票,晚上十点多坐上了火车,第二天早上十点多到达济南。

我跟老婆(小雪)说,明天有位朋友从上海来济南找我聊聊天,小雪半开玩笑说: “不是来害你的吧。”,我媳妇胆子特别小,看起来她在是开玩笑,但实际她真的是在担心。我说那这个杀手厉害了,提前两年订阅我们的会员布好局,伪装成技术狂人,又连夜坐绿皮卧铺来干掉我,这一定是顶级杀人,所以不管怎么样我也得见见。

Behance:巴塞罗那小马哥的创业故事

喜欢设计的朋友应该都听说过 Behance 这个网站吧,做摄影的,搞印刷的,做产品的,搞界面设计的,都会在上面面分享自己的作品。咱们搞开发的也应该经常到这个网站里边熏陶一下,给自己的产品找点灵感。我很早以前就关注了这个网站,因为咱不也是搞过一段设计吗,后来才转的开发。

寻找技术内容联合创作者

一起联合创作一个《小白的开发之路》系列图书吧! 我们可以联合推出一个各种不同技术组合的系列开发与设计图书,现在寻找有意向的联合创作者。

我现在写完了《小白的开发之路 — Node.js 服务端应用开发》,设计这本书的结构与内容我用了太多精力与时间,但结果是值得的,能完成书中所有练习的同学都会有很实在的收获。

后面我打算把它翻成几种不同的技术组合版本,各种后端技术与数据服务的组合,比如 《小白的开发之路 - Deno 服务端应用开发》。还要给这个服务端应用搭配一个客户端,比如《小白的开发之路 - Angular 前端应用开发》。

书的内容结构、应用的设计与功能都要保持一致。我们就是把一个应用,通过不同的技术实现出来,把实现的过程写成一本书(也可以录成视频),内容包括实现过程中需要用到的各种工具、语言、概念与方法。

如果您有兴趣,我们可以联合做出这个系列,然后找一家技术出版社,出版纸制的图书。

服务端

第一阶段

第一阶段的目的是让同学们掌握服务端应用的本质,比如工具、流程,语言、框架、服务、文件、数据。这一阶段选择的框架要尽量简洁,提供基本的路由与中间件即可,要淡化设计模式,用最简洁的方式来设计应用的接口来提供服务。

微信好友

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

微信公众号

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

240746680

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

统计

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

社会化网络

关于

微信订阅号

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