Architecture
Last updated
Was this helpful?
Last updated
Was this helpful?
Exto follows the component-based architecture which focuses on the decomposition of the software into individual functional components.
Exto supports open id / OAuth 2 token authentication. This enable users to enter their credentials once and receive a unique encrypted string of random characters in exchange. The token proves that one already has access permission.
The web layer is built using the angular framework in typescript. Each module is componentized. These components are small interface elements independent of each other, and thus, offer several benefits like reusability, stability and ease of maintenance.
The backend is built using NodeJS which makes the application highly scalable. It also uses ExpressJS, NestJS ,and concurrent thread managers which makes the application real-time data-intensive by handling large data sets for live users. The MQTT server handles the background jobs while the REST API handles all the foreground jobs. The API layer of Exto comprises a workflow engine, loggers, auditing, error notification engine and a scheduling engine. Every user action is audited and logged.The application also provides capabilities of audit retention.The schedule engine performs various high-load tasks such as summarization, roll-ups, spreads and many more. Cost-related processes as well are handled efficiently.
Exto has a caching layer to store its data, typically transient in nature, so that future requests for that data are served up faster than is possible by accessing the data’s primary storage location. Caching allows you to efficiently reuse previously retrieved or computed data.
Exto uses MongoDB as its database. MongoDB is a robust database used for high-volume data storage. It is a document-oriented NoSQL database, and that makes it really easy to store and work with no relational data.
Angular:
NodeJS:
ExpressJS:
MongoDB: