从创业公司一路走来--应用设计以及架构的变迁
发布于 8 天前 作者 qimenxiaozi 286 次浏览 来自 分享

2014年年底,跟着我老板从公司出来,开启了我人生第一次在一个不稳定的环境中的旅程,公司主要从事小额贷款业务,主要是想把之前的线下做的贷款搬到线上,当然这时候一个强有力的领导和一个靠谱的商业策略决定了一个公司是否能继续走下去。当然这是后话,不在本文的讨论范围内,在此就不展开继续讨论了。 刚进公司,20平米的办公司吓到我了,甚至饮水机都是园区的公共建筑,网络是公用的,download一个文件,等个1小时,那是正常的现象,一台几乎不能跑编译的机器,真心的让我崩溃,当然如果你从创业公司走来,你应该会明白,当公司没有钱的时候,一切都只能靠自己,这意味着各种自带装备! 大概快过年的时候,也就是我进公司的那个月,我们发布了自家的app,后台是一个node service,基本你看到的应该是这个样的 part1.png这是公司系统最初的架构,相当明了。 随着业务的开展,我们引入了支付和拍卖竞价的功能,此时我们并没有时间去想怎么样才能做的更好,在开发人员只有3个的时候,我们一股脑把所有的功能都放到一个service上,甚至没有分层,我们的目标非常简单,就是快速开发上线,以便在有限的时间内,引入更多的资源。这里简单的说一句,对于一个创业公司来说,在市场存在巨大潜力的时候,必须快速占领市场,把自己推销出去,老板可不关心你内部实现是什么个鸟样子,只要能满足需求,就要马上推出去,在全民创业的时代,谁的策略好,谁跑的快谁就是赢家。 一个月以后,我们的业务人员也越来越多,crm系统被提上了日程(公司发展的不错,此时我们的已经有5个全职dev),根据老板们提出的需求,新系统的架构如下:untitled2.png,此时的权限控制真是弱爆了,迫于无奈啊,引入了全局的第一个design(task system),后台服务器也依REST API的形式展开。 task system的design思想来源于url,主要是解决express中间件集中处理权限的问题,把权限从api层提升到服务器层,我们把系统所有的api,共享库,都看成一种资源,把权限问题抽象成资源操纵问题。 (未完…待续)

3 回复

我觉得 分层开发 甚至比 不分层开发 更快,更好维护,更符合逻辑。

@MiguelValentine ,人少,事多的时候,根本没有时间去想,都是谁想怎么写,就怎么写,code review都没有。

@qimenxiaozi 我现在的公司就是这样,根本不重视技术,不过没办法,边远N线城市就这样

回到顶部