借着Jte发新版,介绍下AI学堂背后的技术栈吧!

王福强

2023-06-20


Jte估计很少有人听过吧,因为它原本就很小众,但就是因为小众,所以入了扶墙老师的法眼,哈,创业后一直用的都是小众技术。

今年趁着五一假期撸出来一个『AI学堂』,看着肯定其貌不扬,土里土气,但背后扶墙老师却玩了很多骚操作,用了不少技术(当然,作为创业实践,这不是什么好的操作,不推荐大家学习),而且,这些技术都比较小众,如果你感兴趣,听我慢慢跟你说;)

首先,语言上在Java虚拟机语言大家族里是小众,知道我的同学应该能猜出来,对,Scala,而且还是老版本的Scala, Scala2.12.x,一直没升级,原因反而回归本质了,因为我只是用它来出结果,不是为了玩而玩, boring tech strategy ;)

其次,后端框架我也没用Springboot(大厂大平台继续尽情用就好了,没问题的), 用了Vert.x,当然,不管用啥,我都是cherry pick的,不会照单全收。

最后,前端用了alpine.js(捎带了用了点儿其它js库)。

那你要问了,jte在哪儿呢? Jte其实就是alpine.js的载体,所有的页面渲染其实采用的是SSR模型,也就是服务器端渲染,而且是MPA(而不是SPA),最后所有的东西打包成一个monolith同步到VPS就可以跑了,也没用今天流行的docker和k8s(我会这些东西,但确实没用)。

所有这些技术栈打包在一起,形成了一个表面上看起来极其土鳖的『AI学堂』,只因为人长得丑,只能追求内秀了;)

另外,像选择Jte这种小众技术的选择,其实也在看到底能将一台用了n年的VPS压榨到什么程度(早年的订单配置低),目前来看,还算稳定,只要别有人闲着没事儿ddos我 ;)

还有就是,我对前端模板的语法上有挑剔,最后挑来挑去,也就这个相对来说还能用(也不完全符合个人口味),因为我对前端模板语法的要求一直是“一致性要好,使用上的认知要少”,搞那么多指令(directives)和零部件,时间长了谁记得住啊,也就专业工种天天高强度重复再会记得住吧!但我需要频繁的上下文切换,所以,只喜欢简单,认知负担低的方案,从这个角度来说,alpinejs其实也没那么好玩,只是这bindings的特性,玩过svelte之后就再也回不去了,reactive就是香。


>>>>>> 更多阅读 <<<<<<


「福强私学」来一个?

「福强私学」, 一部沉淀了个人成长、技术与架构、组织与管理以及商业上的方法与心法的百科全书。


开天窗,拉认知,订阅「福报」,即刻拥有自己的全模态人工智能。

订阅「福报」