Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The microservice layer encapsulates business rules, which are made available to the presentation layer. The presentation layer requests enterprise services, which are then fulfilled by this layer. The architecture envisages providing a seamless enterprise service layer communicating with internal data stores and 3rd party services. The data access layer supports the enterprise service layer by serving the data required.

SCSB has the following microservices.

Microservice

Functionality

Notes

SCSB-Gateway

Gateway for All APIS

SCSB-Circ

Request Processing
Initial Request Load

SCSB-Doc

Solr Index, Search
Matching Algorithm
Update CGD
Reports

SCSB-ETL

Initial Data Load
Data Exports
Reports

SCSB-Auth

User Authentication
Authorization for SCSB UI modules

SCSB-UI-Angular

User interface for Search
Deaccession
CGD Update
Reports
User Role Management/Admin Functions
Scheduling jobs (Support)

SCSB-UI-Services

Services required for SCSB-UI-Angular

SCSB-Batch-Scheduler

Configuring Batch Jobs

SCSB-Solr-Server

Apache Solr Server

SCSB-ActiveMQ

Apache ActiveMQ server

SCSB-ZK

Apache Zoo Keeper

Data Services Layer

The data services layer provides fundamental services to fulfill the business needs (fulfilled through enterprise services) such as Search, Request Item, etc. The data services layer serves data required by enterprise services. Data services support both relational database and Solr. 
Services implementing data access to relational database will leverage Java Persistence Architecture (JPA), providing separation of object persistence and data access logic from a particular persistence mechanism (relational database) in data layer. This approach provides the flexibility to change the applications persistence mechanism without the need to re-engineer application logic that interacts with the data layer. Persistence classes are developed following the object-oriented idiom including association, inheritance, polymorphism, composition, and collections. This framework provides the flexibility to express queries in its own portable SQL extension, as well as in native SQL, or with object-oriented criteria. 
Services implementing data access to Solr / Lucene search will wrap the Solr RESTFul API's to provide features such as search, filter, sort and navigation.

...