基于微服务的个性化推荐系统设计与实现文献综述
2020-04-14 14:53:08
微服务作为一项在云中部署应用和服务的新技术,是当下的热门话题。相比传统架构模式,微服务更灵活、更能适应现在需求快速变更的大环境。个性化推荐系统能为客户提供完全个性化的决策支持和信息服务,是当今电子商务网站重要的组成部分。本文主要基于微服务架构搭建电子商务网站,并设计和实现推荐系统功能。
微服务(Micro Service)的概念由国际著名的面向对象分析设计、UML、模式等方面的专家,敏捷开发方法的创始人之一的Martin Fowler在2014年提出。其基本思想就是“围绕业务领域组件来创建应用,让应用可以独立的开发、管理和加速”。它提倡将单一应用程序划分成一组小的服务,服务之间相互协调、互相配合,为用户提供最终价值。
近年来,随着云计算、容器虚拟化以及集成了开发、测试、部署和运营为一体的DevOps等技术的兴起和发展,微服务受到工程界和学术界的极大关注,成为信息科学领域的重点研究对象之一。
在传统单体或SOA架构下,应用如果频繁升级更新,开发团队非常痛苦。企业庞大的IT系统,要改动其中任何一小部分,都需要重新部署整个应用,敏捷开发和快速交付无从谈起。企业在长期的IT建设过程中,通常大量使用外包团队,这导致采用的技术栈之间差异较大,统一管控和运维要求更高。而微服务技术以其独立开发、独立部署、独立发布,去中心化管理,支持高并发高可用,支持丰富技术栈,可以根据需要灵活技术选型等优势可以很好地解决这些企业IT建设所面临的问题。
目前有很多国内外企业探索实践微服务架构,国内比较有影响的微服务框架是阿里巴巴的Dubbo框架,每天支持2万多个服务,支持每天30亿次以上的调用量,开源后当当网和百度也有部分使用。京东自研发的微服务架构JSF支撑了京东微服务架构的转变,很好地解决了京东大量访问用户带来的负载均衡问题。
国外亚马逊作为微服务的先行者,将架构引入自己的实际项目,实现了一个基于服务而搭建的开放社区,架构设计要求只通过统一的访问接口访问数据,但每个接口都有自己的封装和传输机制。其研发团队也是围绕微服务而建立的,每个团队负责一个微服务,致力于搭建小而精的开发团队,提高开发效率。
{title}
2. 研究的基本内容与方案
{title}论文研究的基本内容包括:(1)微服务与电子商务推荐系统发展现状分析;(2)基于微服务的电子商务智能推荐系统架构设计;(3)电子商务智能推荐协同过滤算法;(4)基于微服务的电子商务智能推荐系统实现。
论文基本目标是设计实现基于微服务架构的电子商务网站,在网站中包含推荐系统模块实现内容个性化推荐,主要设计语言主要用面向对象的Java语言,拟采用Springboot或者SpringCloud微服务架构。具体技术方案及措施如下:
1. 系统总体需求分析,画出系统总体功能用例图。