This is one executive summary about a software platform I designed some year ago.
I prefer not to translate because i hope you can get the main idea only through images.
3. Funcionalidades principales
1. Bibliotecas de clases escritas íntegramente en
C++ que pretende facilitar todos los aspectos
referentes al desarrollo de aplicaciones
profesionales.
2. Especializada en el desarrollo de aplicaciones
distribuidas, también ha sido usada con éxito
en el desarrollo de aplicaciones de consola.
3. Las plataformas nativas son Linux y Solaris,
tanto en 32 bits como en 64 bits.
4. Existen versiones Multithread y Singlethread.
5. La técnica Full-Naming facilita la integración
con cualquier otro framework C++.
5. Preocúpate sólo por lo que necesites
La parte más baja de la plataforma se encargará
de mantener la integridad general del sistema y tratar de
mitigar los errores que pudieran generarse en las capas
superiores.
6. Sistema de comunicaciones de máxima productividad
1. Con conocimientos básicos se puede
desarrollar aplicaciones distribuidas en un
tiempo mínimo.
2. Sistema homogéneo de tratamiento de
mensajes.
3. Máximo nivel de abstracción.
4. Implementa los mejores sistemas de alta
disponibilidad y tolerancia a fallos.
7. Control automático de congestión
Monitoriza los tiempos de respuesta y la carga del proceso y aplica lógica difusa para
calcular el máximo rendimiento que puede desarrollar la aplicación.
8. Acceso a cualquier base de datos
1. Permite realizar cualquier número de conexiones con cualquier RDBMS.
2. Incorpora traductores automáticos que permite ajustar los detalles para poder ejecutar
la sentencia SQL en cualquier RDBMS sin tener que tocar ni una línea de código.
3. Para la conexión con el RDBMS siempre se usa los API’s de más bajo nivel lo que
incrementa drásticamente el rendimiento accediendo a la BD.
9. Comparativa NetLib 1.x vs OldLib 7.0
Según los datos aportados por los fabricantes una CPU
actual consume entorno a 125 W y tienen 4 cores.
¿Cómo aprovecharían este consumo cada una de las
plataformas?
10. Consumo de CPU de NetLib 1.x
1200x10 pet/seg consumen un 25% de CPU
25
20
15
10
5
0
Su máxima eficacia (1050x10 msg/sec) se alcanza consumiendo cerca de 5 Vatios (15%CPU).
350.00
Thousands
300.00
250.00
200.00
150.00
100.00
50.00
0.00
11. Consumo de CPU de Plataforma OldLib
700x10 pet/seg consumen cerca del 400% de CPU
400
350
300
250
200
150
100
50
0
Su máxima eficacia (700x10 msg/sec) se alcanza consumiendo cerca de 109 Vatios (351% CPU).
14.00
Thousands
12.00
10.00
8.00
6.00
4.00
2.00
0.00
12. ¿Eficiencia energética?
Para comparar la eficiencia de cada plataforma se imagina como emplea los vatios
consumidos, ¿cuántos mensajes es capaz de tratar por cada vatio consumido?
400
Thousands
300
200
100
0
OldLib Max: 12.000 mensajes/vatio
Thousands 14
NRD Max: 350.000 mensajes/vatio 12
10
8
6
4
2
0
Sólo son números ¿no?
13. Consumo energético comparado
Si el proceso NetLib tuviera que emplear 2000 Vatios en tratar los mensajes, el proceso
OldLib tendría que emplear 58000 vatios para tratar los mismos mensajes..
14. Synergy Over NetLib (SyONE)
La plataforma NetLib dispone de las herramientas SyONE que facilitan la realización
de tareas que puede resultar difíciles o demasiado tediosas para hacerlas
manualmente.
• SyONE.dbos: A partir de un documento XML genera el código C++ que permite
tratar objetos persistentes como instancias C++.
• SyONE.xthread: Visualiza las trazas en formato XML, además es capaz de
analizar las distintas secciones críticas que va encontrando e informa si el orden
de bloqueo de los recursos podría dar lugar a interbloqueos.