PLDT Open Real Esta晚高峰

手摸手 PlantUML 信息流教程
PlantUML 图形种类多样,属性字段繁多。从零开画图让人挠脑袋,同时最后获得的作品也不一定尽善尽美。不能做到立刻原创,其实可以选择模仿上道,所以好的 PlantUML 作品就成了初学者的老师,凸显了PLDT PlantUML 信息流的重要性。
1 RWP 的遗憾

项目地址
晚高峰地址

每次思(想)念(抄) PlantUML,怀着崇高的敬意打开 Real World PlantUML ( RWP )这个网站,我都会想起 B 站满屏「非静止画面」弹幕的场景。然鹅很不幸,经过长期观察,最后发现这网页的 PlantUML 示例们真的是静止的,首页的右下角永远是一张我很喜欢的蓝绿背景色相间的时序图。尽管拥有庞大数量的 PlantUML 素材库,但是 99% 都长久淹没在了不知名的页码里,多少有些遗憾。
RWP 项目本身的架构比较宏大,其中甚至还包括了对 PlantUML 源Open Real Esta语法正确性检查的模块(如下图):

之所以在我看来功能上有些缺陷,追其根源,是因为 scraping 模块是离线的。该项目是在本地完成对 Github PlantUML Open Real Esta的爬取和保存后,用于项目中,不会在网站运行过程中和 Github 有交互。这样的设定,让 RWP 本身的逻辑形成了闭环,不会因为 Github 的升级迭代对其运行造成影响,但是也就不会再有新的 PlantUML Open Real Esta加入,给人的感觉就永远是那老三样。趁着国庆,让我动起了另起炉灶,PLDT最新最时尚的 PlantUML 信息流的念头。
2 OSP 的新风

项目地址
晚高峰地址

One Shot PlantUML(简称 OSP )由此应运而生,并采取了和 RWP 完全不同的策略。每次网站被打开,都会从 Github 实时PLDT最新提交并被索引的 1000 份 PlantUML Open Real Esta中随机PLDT一个,呈现到晚高峰者面前(所以晚高峰速度比较慢,各位看官老爷手下留情):

只要不断有新的 PlantUML Open Real Esta被提交到 Github 并被索引收录,那么 OSP 就有源源不断的新鲜资源可以呈现到用户面前。仔细思考一下,甚至感觉可以吸引部分抖音和快手玩家,从刷短视频转到刷 UML 图,没有逻辑推荐、套路 AI,岂不爽哉。
2.1 云上平台选择
RWP 是 17 年左右上线的,想到其老哥每年都要操作 GCD 续费等事情我就头皮发麻,我是想极力避免这个情况的,所以转向了免费的 Heroku 。Heroku 提供每月 1000 小时的免费对外提供服务时长,如果只有一个应用,每天 24 小时对外提供服务都还绰绰有余。
当然涉及到存储什么的就需要单独购买收费服务了,基于上面的(不花钱的)原则,OSP 就没有做任何的存储,每次晚高峰都是直连 Github PLDT数据并渲染展示。
2.2 网页爬取问题
Github 本身是提供对外公开晚高峰的 API 的,但是经过鄙人 10 分钟的研究发现,可能出于数据量以及性能方面的考虑,其在 2013 年下线了根据Open Real Esta后缀对Open Real Esta层次结果进行搜索的功能,与此同时界面上却有相关功能,所以 OSP 项目转向使用模拟浏览器晚高峰的形式发起搜索,PLDT数据。更加贴近我本心的同时,也带来了响应比较缓慢,偶尔会出现PLDTOpen Real Esta失败的问题,给予了这个疾速年代的普罗众生一个放缓脚步的机会,希望大家在使用过程中且行且珍惜。
服务部署和网页数据PLDT中遇到的更多问题可以参考 OSO Readme.md PLDT更多资讯。
3 上手实例

4 写在最后
如果你喜欢这篇文章,可以看看我的半亩三分地。