快手上热门互赞软件_闲鱼怎么粉丝多

因此,这个时期客户端更多的工作就是支持基本的UI组件以及交互的动态适配。

架构演进-平台时期

随着业务的发展,闲鱼基于商品体系的业务已达十几种,并逐步向平台阶段发展。 平台时期业务和架构的核心问题:

业务隔离框架SWAK

核心解决了业务开发带来的代码耦合问题。 问题主要体现在整体开发、运维效率低、稳定性差等方面。 核心思想是分离系统的不可变部分和可变部分; 将“做什么”与“如何做”和“谁来做”分开。

将业务不变的部分放入主干,定义要做什么; 变化的部分以扩展点的形式打通,让具体的业务自己去实现,怎么做,谁来做。 Swak的扩展点实现支持远程调用,可以让业务实现应用级隔离,比传统的分包、子模块隔离方式更加彻底。

目前闲鱼产品的主链路已经基于Swak进行了升级。 以下是闲鱼币个性化业务的代码示例:

平台通用能力

平台必须提供一些通用能力,以更好地支持业务发展:

架构演进——云集成

背景

随着无线的发展,移动研发逐渐向多终端发展(IOT、小程序)发展。 基于Native+Web+server的传统开发方式逐渐遇到瓶颈。 我们会发现,例如:

在此背景下,我们的关注点回归到研发效率闲鱼怎么粉丝多,从整体研发架构和研发模式出发,思考什么样的架构演进和关系重塑才能适合当前的业务形态。 我们希望探索适合“闲鱼这种规模的独立APP”的高效研发架构,形成云一体化研发能力,支持一云多端开发。

进化步骤

闲鱼怎么粉丝多_闲鱼的粉丝_闲鱼的粉丝上千上万怎么来

面向云融合,架构的升级大致分为三个步骤:

1. 端使用Flutter,实现两端(IOS、Android)的统一。 现在无线发展了,跨平台的需求也变得非常强烈。 团队招聘需要考虑Android和IOS的比例,一个业务需要两端写一次,两端逻辑必须一致,测试必须测试两次。 因此,跨平台的解决方案可以非常直接有效地降低研发成本,解决资源平衡问题。

2. Flutter+dart实现了三端(IOS、Android、服务器)技术栈的统一。 终端统一,通过云技术栈的融合减少云协同。 参考前端+Node.js的方案,闲鱼服务端用dart(Flutter也是dart语言)替代Java作为服务端语言。

3. Flutter+Faas(dart运行时)+Nexus。 技术栈统一,但人员不能互补。 最新的闲鱼将Dart容器嵌入到Faas容器中,并与跨云集成业务研发框架Nexus合作,探索集成研发模式,让研发人员从头开始。 在服务器端完成整个业务的闭环。

设备端方案选择

架构解决方案的选择可能会产生巨大且长期的影响。 在架构的演进中,我们要善于定义问题,然后通过不断的迭代来解决问题,最终形成适合自己业务特点的架构。

闲鱼也是如此。 所谓没有灵丹妙药的解决方案,在跨平台解决方案的选择上闲鱼怎么粉丝多,充分比较了Flutter和RN的差异、优缺点。 闲鱼认为“跨平台、高性能是我们当前的核心诉求”。 结合团队中拥有原生技术栈的同学较多,我们最终选择了Flutter作为跨端解决方案。

云协作

Flutter两端统一之后,你会发现客户端和服务端虽然做的是同样的业务,但不仅技术栈不统一,而且还有很多协同工作。 同时,端生和云生还无法真正做到互补、融合。

于是,我们开始思考是否可以有一个一体化的架构,让一个学生能够覆盖完整的云到端的业务,形成一个业务闭环。

这不仅提高了效率,也给业务拓展同学带来了更大的成长空间,让他们能够完全、专注地思考业务。

关键问题及解决方案

我们梳理了需要解决的关键问题:

面对这些问题,闲鱼的解决思路是:

业务实施及收入

闲鱼的粉丝上千上万怎么来_闲鱼的粉丝_闲鱼怎么粉丝多

目前,一体化研发模式已在闲鱼多个场景落地。 下面是单页转换的例子:

前者的改造:

改造后:

正如上面案例提到的,云集成可以带来多方面的好处,特别适合像闲鱼这样拥有独立APP的研发团队。

说在最后

本文分别介绍了闲鱼整体架构从快速试错期→开发期→平台期→云集成的演变过程以及过程中的思考。 核心问题的界定和具体演变。

我们会发现架构的演进总是胜过一步,没有一种综合的或者特殊的方法总是能够提高系统效率。 软件工程是一个超级复杂的系统,尤其是业务架构,需要随时随着业务而变化。 明确当前的业务特点和核心问题是设计的基础。 用不符合业务的架构来引领是没有用的。 我相信所有的建筑师都有这样的经历。

看明星直播赢大奖

物联网资深人士、北京业帆易通科技有限公司CEO、阿里云MVP刘洪峰已开课。 四场直播阐释了阿里云IoT平台的商业模式。 物联网爱好者不容错过。

识别下方二维码或点击“阅读原文”了解直播方式,参与问答,赢取大奖。

你可能还喜欢

点击下图阅读

发表评论