论文部分内容阅读
在互联网技术高速发展的大时代,随着系统的业务量和用户量的不断增多,许多企业级应用在性能和业务扩展上面临着巨大压力,提升企业级应用的性能问题以及在扩展方面的问题是一个具有重要意义的研究方向,也是本文的研究课题。本论文在研究性能问题上,主要对node.js、数据库以及负载均衡等技术进行研究,分析各技术的工作原理及技术特点,发挥其技术优势,在性能方面实现可观的提升;针对应用的扩展问题,结合组件化和插件化技术以及微服务思想,分析其原理,结合其具有的技术特点,实现应用的扩展架构研究方案。根据理论知识的分析研究,针对性能问题,设计一种高性能高并发的架构方案,同时着重研究负载均衡层中重要的负载均衡算法,并对其算法进行相应的改进以达到进一步提高系统性能。针对性能提升的研究,本论文所完成的工作主要有:(1)根据对Node.js技术、数据库、缓存、负载均衡等技术特点进行分析研究,对相关技术进行比对选择,设计出一种能够支持高并发且具有高性能的软件架构。在该架构中,主要设计有三个模块层,分别负责负载均衡处理、核心业务逻辑和数据处理以及数据的存储。其中对于负载均衡问题的处理,本文优先考虑使用Nginx来实现。而在主体的核心业务功能中,主要是使用Node.js技术来完成,并在缓存技术方面,优先使用Redis技术作为高速缓存的服务,利用Mongo DB数据库技术实现对多样数据的存储。结合以上几种技术的特点以及优势,能够实现一个可支撑高并发且具有高性能的应用架构。(2)对一些比较常用的负载均衡策略进行分析,研究各算法的特点,并根据分析动态负载均衡算法,对加权轮询算法进行相应的改进,将多个性能参数值作为负载因子并将其参与进权重的计算中,实现动态地调整权重值的效果,之后根据权重值进行轮询处理负载。将改进的动态自适应加权轮询算法与原有的加权轮询算法进行对比分析,验证其有效性,是否符合预期。针对可扩展架构的研究,主要工作有:(1)分析研究插件化、组件化以及微服务等高可扩展架构的特点,结合这些架构特征及设计思想,提出一种基于组件化的微应用架构,实现应用的高可扩展性。(2)围绕组件化微应用架构,针对组件间存在的一些页面跳转、功能调用等问题进行详细地分析并找出对应的解决方案。同时,根据所阐述的问题及解决方案,最终完成对框架的总体结构设计,解决了系统模块间一直存在的耦合问题,实现了系统的高可扩展,也使得系统在设计上更加的灵活。