Task Deployment

A multi-platform architecture designed for you today and tomorrow.

LemonEdge is designed to work within any existing professional financial services infrastructure. Evolving with you, our architecture is designed to adapt to your deployment requirements, be that in your own network today or you're setting up to be in the cloud, or a hybrid. You can take advantage of serverless options and automatic scalability depending on your needs. Users can have apps that automatically update, or run within a citrix type environment, or utilise our website version across devices.

women looking at computer with data elements overlay

Cloud and Local Deployment

How you deploy your software should be your choice. We can host a cloud-based configuration, you can deploy locally or in your own cloud. We believe we should flex to your needs, not the other way round.

QL Server Services

These provide the methods by which you can connect to your SQL server backend. All these services can reside in your local network, a cloud service, or hybrid. LemonEdge runs on .Net Core and as such is platform-independent – these servers can be running Linux, Windows or even Macs – See our Platform Agnostic guide.

Direct to Database

It is possible to run LemonEdge without any servers at all by directly connecting to the database server. This is not recommended in production for obvious reasons but can work for testing environments, development or other use cases. Everything is still running in transactions, and users are notified of stale data, to ensure consistency and integrity.

Web Service

This is the service your clients, or the website itself, connect through. To the client, whether it is connecting through a web service, or directly to the database, is transparent. All permissions, validations, etc run within the core regardless and can never be bypassed.
The .Net Core service can run within an IIS environment, or using ASP .Net Core can as its own server. As such this service can run on Linux, Macs or Windows servers.

Task Service

The task service is responsible for running tasks against the database. These tasks can be user-initiated, scheduled, long-running, or a variety of other types. If running connected directly to the database, users (with permission) can run their own task service to process locally.
If running in a cloud the task service can be set up to only run when responding to events from a queue. Again this is all .Net Core so can on any operating.

SQL Server

LemonEdge uses SQL Server as the backend database, and it directly handles all interactions with the database including schema and other changes.
You can create different databases for different isolated environments, or you can create separate isolated accounts within each database – the platform can run multi-tenanted.
Using the latest version of SQL Server, again this can be installed on Windows or Linux, or if running in the cloud LemonEdge also works seamlessly with SQL Azure and even serverless SQL Azure instances.

Scaling

Adding Servers

The platform is designed to scale depending on your demand/requirements.
You can run as many Web Services and Task Services as you require. If you are running in a cloud type environment you can set these services to automatically scale depending on demand, usage, or a schedule, etc.

Synchronisation

When running more than one Web Service the system needs to synchronise the cache among these instances; for example to handle a user changing their password. This can be achieved by either running a dedicated cache server (such as Redis) or by using a Messaging Bus (In Azure). Both these options can be setup in the config file for the services. If configuration isn’t being changed often (resulting in the cache being invalidated) then normally the Message Bus is most effective for performance as each instance can maintain its own cache and only invalidate it infrequently.

Serverless

If running in a cloud environment with serverless lambda functions (such as Azure) the Web Service and Task Service can be setup to run as serverless functions, that auto scale on demand. The Task Service spins up instances as they are needed to process queue elements, and the Web Service spins as many instances up as necessary to deal with the volume of web requests. Combined with a serverless database this gives you the possibility of running the platform with 0 instances live when they are not being used incurring next to zero cost.

End User Clients

All our applications run from .Net Core ensuring great flexibility in the way we deploy the application (from folder copy, no prerequisites required, to working within Citrix like setups).

Desktop Applications

The platform comes with a dedicated Windows application. This has the full suite of features (including office integration that may not be possible on other platforms such as Linux) and views layout configuration options. This application is designed for enterprise users with the ability to drag and drop tabs across multiple screens to aid working in the professional modern workplace. This application runs on Windows 7 and higher, you simply copy the folder and run the application – it requires no prerequisites to be installed.

We also have a universal application that runs on Windows, Linux and Macs. Again this application is aimed at professional users who may have different client workstations. This provides a consistent UI across all platforms. It doesn’t have the interaction with Office or the ability to design layouts, but it contains all the other features of the platform (unless you’ve designed OS-specific components). Again this application is provided as a folder you can simply copy – it requires no prerequisites to be installed.

Admin Consoles

We also have a .Net Core administration console application that runs on Windows, Linux and Macs. Although anyone can use this, it is aimed at administrators who want keyboard access to everything. Primarily this gives the option to script common tasks, etc and incorporate it into their processes. For instance, you could script import/export activities on schedule and so on.

Web

LemonEdge is actively in development on this branch of the user interface.

Hosting

We also provide hosting services (See our Services – Hosting options) with a range of options to suit your needs. As an example our internal use of LemonEdge is hosted with serverless Web/Task services running Linux and SQL Azure, with automatic testing and deployment of new releases.