-
Notifications
You must be signed in to change notification settings - Fork 0
Architecture
Tom PIT.connected is a web based digital experience platform. It is built as a series of Web enabled servers, some of them providing user experience, others are acting as a back end API. Additionally, the platform needs a system database where system configuration is stored.
The platform is build with .NET Core. This means the platform is portable and can run on different operation systems. The platform server are implemented as ASP.NET Core applications. The programming language used is C#.
The complete platform consists of the following servers:
- Sys
- Development
- Management
- App
- Worker
- IoT
- BigData
- Cdn
- Search
- Rest
Not all servers are needed for every digitalization. The Sys is the only server that must always be installed.
The Sys acts as some kind of back end platform server to which all other platform server connect.
The platform follows one simple rule: Web browser is the only application that is required for using the platform. This means there is no client installations, users can implement, test, deploy, run and maintain digital content by using their favorite browser.
This approach has many benefits; by having IDE in the browser, there is no need to explicitly compile code, deploy it, run it, shutting down servers and other tedious and time consuming tasks. All changes are visible immediately to all other servers and the changed code hot reloads without the need to restart anything. For example, app server needs only a new http request for changes to be visible to end users, worker server on the other hand doesn't require anything, distributed workers will reload new code automatically on next run.
This also means users can develop, test and maintain content from anywhere, there is no need for any prerequisites. Maintaining environments in this way is much more efficient because system administrators can perform administrative tasks from any device with browser installed.
Platform servers are also differentiated by tenants model. In the platform, a Tenant is one instance of the Sys server. Other servers can connect to the Sys server as a single or multi tenant.
Single tenants can contain only of connection to the Sys server. It means that a Sys server must be identified when server is starting. Tenant cannot be changed without restarting.
Single tenant servers are:
- App
- Iot
- BigData
- Cdn
- Search
- Worker
- Rest
Multi tenant servers can simultaneously connect to many Sys servers. This means that some users can access data from tenant A but in the same time others are able to use tenant B without disrupting each other.
Multi tenant servers therefore have the ability to connect to different systems or environments. This way, there is no need to install them on every single environment. We can connect to the environment as needed as long as the versions of the tenant and server are compatible.
Multi tenant servers are:
- Development
- Management
Copyright 2020 Tom PIT. All rights reserved.