« A3 architecture » : différence entre les versions

De Assothink Wiki
Aller à la navigation Aller à la recherche
Contenu ajouté Contenu supprimé
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 143 : Ligne 143 :
|}
|}


<br>
<br>


== Engine layer (<span style="color: rgb(0, 0, 255);">engine</span>) notes ==
== Engine layer (<span style="color: rgb(0, 0, 255);">engine</span>) notes ==
Ligne 175 : Ligne 175 :
*without (no need) CD/DVD, advanced graphic, monitor, keyboard, mouse...
*without (no need) CD/DVD, advanced graphic, monitor, keyboard, mouse...


The [[EPM engine machine setup|EPM&nbsp;engine machine setup]] is standardized, simple, fast,
The [[EPM engine machine setup|EPM&nbsp;engine machine setup]] is standardized, simple, fast,


== Transmission layer (<span style="color: rgb(0, 0, 255);">alexLib</span>) notes ==
== Transmission layer (<span style="color: rgb(0, 0, 255);">alexLib</span>) notes ==
Ligne 201 : Ligne 201 :
Roughly the same as the computing layer.
Roughly the same as the computing layer.


More server oriented: more disk and network efficiency, less CPU needs, high availablity.
More server oriented: more disk and network efficiency, less CPU needs, high availablity.


== Presentation layer (<span style="color: rgb(0, 0, 255);">alexFX</span>) notes ==
== Presentation layer (<span style="color: rgb(0, 0, 255);">alexFX</span>) notes ==
Ligne 212 : Ligne 212 :


One server occurence.
One server occurence.

Many clients.

No specific hardware needed.

The client is similar to the client in the [[Basic Architecture|basic architecture]]. Actually they are both integarted in one single GWT client application.


The visualisation client allows
The visualisation client allows
Ligne 224 : Ligne 218 :
*to display the state of the selected EPM engine
*to display the state of the selected EPM engine
*to send to the selected EPM engine all orders handled by the [[EPM controller|EPM controller]].
*to send to the selected EPM engine all orders handled by the [[EPM controller|EPM controller]].


No specific hardware needed.

The client is similar to the client in the [[Basic Architecture|basic architecture]]. Actually they are both integarted in one single GWT client application.



==== Suggested hardware ====
==== Suggested hardware ====

Version du 15 février 2013 à 18:42

Intro

The A3 architecture is one of the possible Assotink architectures.

It was developed from october 2012 and is still under development in april 20123

The A3 architecture divides the Assothink work in a trilogy of main working layers, plus 3 side parts.

Part Technology Function

Engine

Layer

Linux, C

project name : engine

(main: engine.c)

Excitation propagation model

implemented

(goal: computation speed, sizing efficiency)

Transmission

Layer

Linux, Java

project name : alexLib

(main: central.java)

Tranmission of information between engine layer

and presentation layer; engine launching

(goal: network efficiency)

Presentation

Layer

Linux, Java, JavaFX

project Name : alexFX

(main: alexFX.java)

User interface, working as a client to the central process.

Access to passive jelly.

Access to active jelly and engines.

(goal: user friendliness, visibility on data and process)

Resource

Builder

Linux, Java

project name : alexRB

(main: builder.java)

Construction of passive jelly database.

Organized in numerous steps.

(goal: data cohesion, data availability)

Java

Utilities

Linux, java

project names: mslib,


techlib, structureLib, drawFXLib

Generic tools for advanced java application development.

Not only usable with Assothink.

(goal: ease of development)

Bash

Scripts

Linux, bash

bash scripts: a

terminal-based front-end utilities to launch,

monitor, test, debug... all other parts

(goal: convenience)


Engine layer (engine) notes

This layer implements the Assothink Excitation Propagation Model (EPM), or Assothink active Jelly, or Assothink brain.

Only concepts, links, signals.

Load links data from a data server.

Runs autonomously, saving state .

A brain uses a brain slot: a host/port combination.

Many brains run at the same time in a network, or even on a machine.

Interaction

The engine layer interacts mainly with the transmission.

It is slightly controlled through the scripts components.

Suggested hardware

  • standard PC
  • mainly accessible trough network (remote shells)
  • with Linux OS and JVM (installed by myself)
  • with strong processor (fast) and gigabit ethernet!
  • 4 Gb RAM, USB port, small HD, simple graphic controller
  • compact
  • without (no need) CD/DVD, advanced graphic, monitor, keyboard, mouse...

The EPM engine machine setup is standardized, simple, fast,

Transmission layer (alexLib) notes

This layer has two sides.

Interacting with its presentation layer clients, it

  • delivers (begin of user session) the whole data set describing the passive jelly
  • continuously delivers information produced by the engines
  • receives orders from clients, and transmits then to engines

Interacting with the engine layer, it

  • creates, kills and controls engine processes
  • delivers orders defined by clients
  • receives state information from the engines, propagates them to all subscribing clients

The transmission layer is a java program, launched from the a script.

... it implements the EPM controller.

Suggested hardware

Roughly the same as the computing layer.

More server oriented: more disk and network efficiency, less CPU needs, high availablity.

Presentation layer (alexFX) notes

This is a javaFX front-end client applic running

as stand-alone application

within browsers

One server occurence.

The visualisation client allows

  • to list many all running EPM engines and to select one of them
  • to display the state of the selected EPM engine
  • to send to the selected EPM engine all orders handled by the EPM controller.


No specific hardware needed.

The client is similar to the client in the basic architecture. Actually they are both integarted in one single GWT client application.


Suggested hardware

A standard PC with browser having good web access and good visualization hardware.

  • The screen resolution should by high (at least 1500x1000 points).
  • The graphic card should have average or high performance.
  • The preferred browsers are google chrome (chromium) and firefox.
  • The web access should be fast (>20Kbit/sec for download) and the network throughput should be high.
  • OS? Linux, Windows, Android and MacOS OK.