Laravel 5.5 发布,ThinkSNS+ 升级及状况分享【研发日记14】

简介:

自从 ThinkSNS+ 开始使用 Laravel 重新开发后,一直坚持在 Laravel China 写 Laravel 在 ThinkSNS+ 应用中的一些新的和小技巧分享。好了,废话不多说,开始我们的升级之旅!

升级场景

ThinkSNS+ 一直依赖,都是保留 Laravel 的 commit 记录的前提下,进行开发,为了追随 Laravel 的升级,我们在本地的仓库中新建了一个分支,如果 laravel 更新频繁,则每周一进行 merge 操作。然后再发送到ThinkSNS+的 GitHub仓库上(仓库地址 https://github.com/slimkit/thinksns-plus )。所以此次升级同样采用 merge 的方式升级。

前端构建

Laravel 一直都有提供脚手架,5.5 则提供了 Vue 和 React 两种切换,对于前端老说,其实脚手架很优秀,但是不是适合所有场景,就和之前文字分享如何构建兼容 Laravel mix 辅助函数的前端构建一样,本次升级直接抛弃了脚手架。

包自动发现

说到「包自动发现」这个功能,其实 ThinkSNS+ 开发出来的时间比 Laravel 5.5 开发出来的时间还要早,最开始的时候,我们是采用 Composer 插件的方式来管理包清单,然后 ThinkSNS+ 使用这份清单进行服务提供者的加载。而后因为拓展包中有可能还会使用 Laravel 的拓展包,所以抛弃了 composer 插件的方式,我们从核心入手,选择在 composer.json ,然后这种方式一直在内部开发使用持续了大概三个月之久,后来关注 Laravel 5.5 开发动态,发现 laravel 5.5 选择从 vendor/composer/installed.lock 入手去匹配清单,比我们之前开发的更好,所以直接仿照 写了一份从 vendor/composer/installed.lock 匹配清单的代码。总结,这次升级对于半年前就开始使用这个功能的我们来说,影响太小了,以至于这次升级中,我们舍弃了之前维护的包包清单管理代码。而 之前的所有拓展包均可以正常使用。

JSON 异常消息

这块升级后确实影响蛮大的,因为之前所有 API 接口都是按照 5.4 的一个结构进行返回,升级后,5.5 的结构出现。被移动端头子给怼惨了,这块不说了,下午还要写文档,移动端需要兼容两个格式。

其他影响

因为 ThinkSNS+ 在开发的时候我们就遵循一个原则,所有 Laravel 的东西不动,需要的东西进行拓展,所以此次升级出了上述说的 json 消息以外,几乎没有任何影响。

ThinkSNS_PC_

上面的图是 ThinkSNS+ 安装后的默认首页。

ThinkSNS_PC_1
ThinkSNS_PC_2
ThinkSNS_PC_3

上图是网站的后台部分页面截图,网站后台采用的是 ES6 + Vue 的 SPA,后台管理接口没有采用 token 认证,而是采用传统的 Session。这样有助于安全。

当然,我们也在为 ThinkSNS+ 开发一个友好的文档网站(之前一直在 github 中写 markdown )不涉及后端,文档使用 markdown 维护,前端使用 ES6 + React + Material-UI 进行开发。看图:

ThinkSNS_

当然,正在开发中哈,暂未公布。

ThinkSNS-Plus(ThinkSNS+),看完整的开发代码可以看仓库:

GitHub: https://github.com/slimkit/thinksns-plus
(开源不易,求 Star )

目录
相关文章
|
数据采集 JSON 移动开发
【实战】使用 uniapp 开发一个面试刷题小程序
直至 5 月也依然是互联网寒冬,大厂裁员的消息在微信群漫天飞舞,而招聘网站上的 HC 也越来也少,因此不少小厂也开始纷纷内卷,压低员工绩效,本应该晋级加薪的时间,也变成了杳无音信。难道我们就束手无策了
1944 0
|
存储 监控 安全
网络安全法中的 ISO 27001 和 CIA
【8月更文挑战第19天】
564 0
|
机器学习/深度学习 存储 人工智能
未来的移动通信网络,6G与人工智能的融合
在最近的几十年中,移动通信网络从1G发展到6G,通信关键技术层出不穷、迅速发展,广泛应用在人类社会的各行各业,成为社会信息化变革的重要支撑。
1333 0
未来的移动通信网络,6G与人工智能的融合
|
运维 安全 专有云
设定北极星指标——数据驱动效能改进| 学习笔记
快速学习设定北极星指标——数据驱动效能改进
设定北极星指标——数据驱动效能改进| 学习笔记
|
存储 JSON API
RedisJSON尝鲜
体验RedisJSON
1687 2
RedisJSON尝鲜
|
消息中间件 SQL 数据可视化
(6)Flink CEP SQL模拟账号短时间内异地登录风控预警
本篇文章我们来模拟一个真实的风险识别场景,模拟XX平台上可能出现盗号行为。 技术实现方案: (1)通过将xxx平台用户登录时的登录日志发送到kafka(本文代码演示用的socket); (2)Flink CEP SQL规则引擎中定义好风控识别规则,接入kafka数据源,比如一个账号在5分钟内,在多个不同地区有登录行为,那我们认为该账号被盗; (3)Flink CEP将识别到的风险数据可以进行下发,为数据应用层提供数据服务,如:风控系统,数据大屏,态势感知.....
(6)Flink CEP SQL模拟账号短时间内异地登录风控预警
|
弹性计算 编解码 安全
阿里云ECS配置远程桌面
通过阿里云开发者成长计划学生专享申请到阿里云ECS云服务器,利用云服务器的特性以及公网IP,借助frp进行内网穿透,使外网通过访问公有IP或域名,就可访问内网中的计算机,解决了个人计算机没有公网IP或申请困难的缺陷,再借助RD client或其他应用实现远程桌面效果。本文主要讲述了如何设置frp服务端和客户端设置,服务端为申请到的ECS,系统为ubuntu_18_04_x64,客户端为远程桌面被控端,系统为Windows10专业版,讲解了各个配置文件的设置,以及阿里云ECS安全组的设置,开放对应端口。
|
负载均衡 架构师 网络协议
架构师之路 - 服务器硬件扫盲
很多架构师都是从软件开发成长起来的,大家在软件领域都有很深的造诣,大部分人对硬件接触的很少。而成为架构师后需要频繁的跟人 、硬件 、软件 、网络打交道,本篇文章就给大家带来服务器硬件方面的相关知识,主要包括服务器、CPU、内存、磁盘、网卡。
756 0
架构师之路 - 服务器硬件扫盲
|
机器学习/深度学习 SQL 分布式计算
当推荐遇到社交:美图的推荐算法设计优化实践
本文是美图高级算法专家汤斌的一篇文章,重点介绍了社交网络背景下推荐算法面临的挑战,以及应对的方法。
467 0
当推荐遇到社交:美图的推荐算法设计优化实践