app软件开发应用架构的常见问题

  随着互联网的不断发展,现在越来越多的程序员正在改变APP软件的开发方式。今天,我们将通过一些内容来分析了解APP软件开发应用架构的常见问题和优化方法。


  一、应用架构常见问题


  1、应用内部服务APP的服务承载的交易服务过多,从交易看是紧耦合的;


  2、源交易应用到目标应用之间经过总线、多个过程系统,终才到目标系统,任一环节出问题都将影响这支交易的性能;


  3、从应用来看,高并发的情况下前端容易出现并发数过高导致的异常,后端DB数据处理容易因前端过多交易导致的DB连接数超限;


  4、关联系统,尤其是总线系统如采用同步方式容易导致总线系统瘫痪,终导致影响企业其它应用系统;


  二、应用架构优化方法


  1、应用拆分:逻辑上分析业务主流程,将分支交易进行分离,按业务功能拆分独立的服务;物理上将独立的服务进行分离,独立部署,出现问题后可以快速采取措施进行隔离或扩容。


  2、服务或系统交互解耦:如WEB到逻辑服务前加队列层,减少前端放开流量导致后端处理能力跟不上的问题;数据库前加上缓存层,减少数据库的并发压力。


  3、减少总线节点服务的依赖:由多节点组成的逻辑交互改为端对端的访问方式,一方面减少影响交易的因素,另一方面减少自身性能问题影响其它应用系统。


  4、增加异步访问机制:同步的机制在性能出现问题时,会在短时间花完大连接数,哪怕这个大并发数是正常情况下的10倍。这方面可以直接改异步通讯,也可以引入一些队列工具实现。


  5、多层次的缓存:缓存的引入可以多层次,从前端、应用内部、数据库等,比如:前端页面可以利用缓存技术减少页面刷新,这方面可以采用网络工具解决;数据库前可以采用REDIS等;应用自身同样可以用缓存代替数据库的读操作;


  6、数据库优化:1)架构上:拆库、在线库与历史库分离、分布式数据库、读写分离、非关系型数据库。比如:1点应用拆分后,则可以按业务拆库;分布式数据库实现数据分片读写等等。2)编码上:SQL优化、索引新增、数据定时清理,这个优化方式快,容易出效果;减少数据库访问次数、减少数据库一次返回的结果集;


  7、前端限流、削峰机制,前端系统因为逻辑简单往往可以支持更多请求,但后端系统则不同。所以需要前端系统做交易并发控制,并通过一些前端交互设计减少客户的本验影响;


  8、基础设施支持快速扩容:支持弹性扩容(1点系统拆分独立部署很重要,可以减少扩容复杂性)。


  9、服务降级:重要服务重点保障,次要服务有损保障,紧急情况下进行降级。


  以上就是今天分享的关于APP软件开发的一些系列问题,希望能在工作中帮助到大家。

乐盛棋牌官方网站