一个saas软件项目需要考虑的各种问题

博主从事了三年的saas产品开发,这三年的时间都在这一个saas产品上。该产品基本的架构是采取了微服务架构,后段采用java加Spring以及maven,前端使用的是jquery,UI5,数据库则各个模块各自使用自己需要的数据库,主要是postgresql,以及mongodb。中间件则是使用的rabbitmq。部署在aws云平台上面。

后端

后端主要处理项目的核心业务逻辑。后端需要考虑下面这些:

  • API versioning即暴露的接口的版本控制。为什么需要考虑这个问题,原因在于我们的接口一旦暴露给客户使用之后,就必须保证接口的稳定性,不能因为升级新功能导致老的接口就无法使用,这样的产品是无法获得用户的好感的。因此,当有新的功能且这个功能需会改变接口的逻辑时,保留当前的接口,而提供一个新版本的接口就是一个很好的办法。例如:老的接口为:api/v1/customer. 新的接口为:api/v2/customer。以此类推,但是需要主要的是,只有当必要的时候才应该去升级版本。
  • Authorization访问权限控制->即当调用api时需要提供的用户名和密码。可以考虑vault来进行管理。
  • 不同service之间的依赖关系->contract保证
  • log日志格式,以及存储位置,以及查看方法。比较常用的日志查看工具有kibana
  • 项目用到的构建工具,包管理->maven。对于java项目而言比较常用的还有gradle
  • 代码管理->github,使用branch管理代码,要merge代码到master branch需要人进行code review
  • 代码质量常见问题,例如code smell,security问题->sonar,v
  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值