Font Size: a A A

Research And Implementation Of Key Technologies In Multi-tenants SaaS Application

Posted on:2020-04-21Degree:MasterType:Thesis
Country:ChinaCandidate:Z MaFull Text:PDF
GTID:2428330596998350Subject:Software engineering
Abstract/Summary:PDF Full Text Request
Cloud computing is an Internet-based service interaction model that provides dynamic,virtualized resources over the Internet.SaaS(Software as a Service)provides system applications in the form of services to institutional users based on cloud computing platforms.After the organization orders the application,it can provide services for internal users.The application provider provides services to multiple customers based on a set of software and hardware resources through the cloud platform.The application background of this paper is based on the population housing management system in a certain area of Shanghai.The system has been used in a certain town.The main functional requirements include population information management,community information management,residential information management,and contract information management.In the future,the system will be extended to multiple regions.The functions required in each region are basically similar,and the system needs to be transformed into a multi-tenant SaaS application.In multi-tenant-oriented applications,tenant management and distributed data processing are the key factors of system service capability.This paper has studied and designed this,and the main work contents are as follows:(1)Design and apply a multi-tenant data model: The multi-tenant has been redesigned from the underlying data storage to the upper logical processing.Since the tenant stores confidential information such as population and housing,the system adopts a deployment mode of a separate database.When the system processes the access request,the request is directed to the corresponding tenant data source according to the tenant information in the identity authentication to ensure the logical isolation of each tenant access.(2)Implement distributed technology: Considering the increase of data information aftertenant expansion,distributed data extraction and calculation based on Spark,and regular update of statistical information for visual display.Distributed environments and multi-modules of micro-services generate distributed transactions,using Kafka message queues and local message tables to ensure the consistency of distributed transactions.(3)Using micro-service framework to improve usability and reliability: The system uses Spring Cloud to implement micro-service.This paper mainly uses Zuul gateway and Feign component under the framework.The Zuul gateway unifies the access portal of each terminal to implement identity authentication and the issuance and verification of the access token.Feign can call other module methods under the management of Eureka,while ensuring load balancing of multiple instances of the module.(4)Technology upgrade based on Vue and Spring Boot: This work uses Spring Boot to rewrite the main business logic,and the data management framework uses Spring Data JPA.The front-end visualization uses the Freemarker template engine instead of the traditional JSP,and introduces the Vue framework for mobile-side page writing.Based on the original system,this paper completed the design and implementation of multi-tenant data model,implemented distributed data processing based on Spark and Kafka,migrated the system to Spring Cloud platform,encapsulated the original business logic,and provided cloud service for customers.
Keywords/Search Tags:multi-tenant, SaaS, microservice, distributed
PDF Full Text Request
Related items