libero / community

A place for community-wide issues, discussion, resources, files and sharing
MIT License
0 stars 1 forks source link

RFC: High-level architecture #6

Open thewilkybarkid opened 6 years ago

thewilkybarkid commented 6 years ago

Problem

Libero will be a framework for producing publication and presentation platforms. It needs to:

Suggestion

Concerns

elrossco22 commented 6 years ago

The Digirati Team (Frank, John R, Stephen and Myself) discussed the above RFC and have the following questions:

thewilkybarkid commented 6 years ago

How does the high level architecture support adoption (forking, modules etc)

We'll go over this at the sprint, but Libero is really three levels:

  1. Specifications
  2. Libraries
  3. Applications

Code should be avoided in applications, and they will need to be forked if you want to do your own thing. That then avoids having to duplicate the code, unless you're replacing that part. Increases the complexity, of course.

In regards to being deployable anywhere - would additional work to secure the communication between microservices be required where we had previously seen the use of VPC's

Libero will work on the assumption that the API/event bus aren't public, but won't prevent it (and so needs to not be incompatible with it). It would be up to the implementor to allowing/disallowing access as required.

How will the system be easily integrated with other systems - will this be via api or standardisation

Not sure what you mean by standardisation, but there's two main communication methods (API and event bus) which are the primary integration points (and Libero could provide adapter code, eg a Drupal module). Libero will provide services that will interact with other services more directly where relevant (eg sending the article to some repository).

How will logging and monitoring be implemented in a centralised manner to support the platform being deployable anywhere (will these be additional microservices)

This mostly out of scope. We need to make sure that we provide ways to do both easily where relevant (eg by producing sensible logs), but how you do them will be up to the implementor (eg you would need to add in the New Relic PHP agent yourself).

giorgiosironi commented 6 years ago

How will logging and monitoring be implemented in a centralised manner to support the platform being deployable anywhere (will these be additional microservices)

Some other examples of this could be done by an implementor: