Saltar al contenido principal
Versión: Siguiente

Arquitectura

Arquitectura

Antes de comenzar con la Anchor Platform, familiaricémonos con la arquitectura. Esta sección describirá los componentes involucrados y cómo interactúan.

Arquitectura Fundamental

Los siguientes componentes arquitectónicos son requeridos para todas las implementaciones de la Anchor Platform.

arquitectura fundamental de la anchor platform

Cliente

El cliente es una aplicación, como una billetera o un remitente de remesas, que actúa en nombre de un usuario y realiza solicitudes al sistema. Los clientes realizan solicitudes al componente del servidor SEP de la Anchor Platform utilizando conjuntos de estándares llamados SEPs (Propuestas del Ecosistema Stellar).

Servidor SEP

El servidor SEP es un servidor orientado al cliente y, por lo tanto, necesita ser accesible desde una red externa. El servidor SEP procesa las solicitudes de los usuarios y gestiona el estado de las transacciones que inician. Cuando el servidor SEP necesita proporcionar información que no tiene al cliente, como la tasa de cambio para un par de activos o el estado de KYC de un cliente, realiza solicitudes síncronas callback al servidor de negocio y retorna la información en un formato compatible con SEP.

nota

El servidor SEP nunca almacenará información sensible, como KYC (PII), en la base de datos.

Servidor de Negocios

The business server is a service that you (the business) must implement to connect the Anchor Platform with your internal systems. El servidor de negocios responde a solicitudes de callback enviadas por el servidor SEP, como solicitudes de cotización, recibe eventos enviados por el servicio de eventos, como la notificación de un pago recibido a tu cuenta Stellar, y proporciona actualizaciones al servidor de plataforma cuando ocurren eventos fuera de la cadena, como la iniciación de una transferencia bancaria a un cliente.

Servidor de Plataforma

El servidor de plataforma es un componente interno. Debe ser alojado en una red privada y no debe ser accesible desde Internet. Este servidor permite al negocio recuperar y actualizar el estado de las transacciones utilizando su API.

Base de Datos

La Anchor Platform utiliza una base de datos PostgreSQL para almacenar eventos y entidades Stellar. Se utiliza principalmente para almacenar transacciones.

Arquitectura Completa

Además de los componentes descritos anteriormente, la Anchor Platform incluye varios otros componentes que ofrecen funcionalidades adicionales. Tu negocio puede elegir cuáles de los componentes adicionales utilizar, pero el diagrama a continuación visualiza la arquitectura del sistema si se utilizan todos los componentes.

arquitectura completa de la anchor platform

Servicio de Eventos

El servicio de eventos permite a la Anchor Platform enviar webhooks HTTP a clientes registrados y a tu servidor de negocios cuando cambia el estado de las transacciones, eliminando la necesidad de que los clientes y/o tu servidor de negocios consulten las APIs de la Anchor Platform. Funciona leyendo eventos publicados en un tema de Kafka por los otros componentes de la Anchor Platform. Lee más sobre el uso del servicio de eventos. It works by reading events from published to a Kafka topic by the other Anchor Platform components. Leer más sobre el uso del servicio de eventos.

Servidor de Custodia

El servidor de custodia se conecta a proveedores de billeteras empresariales, como Fireblocks, para enviar y recibir pagos por transacciones iniciadas a través de la Anchor Platform. Este servicio es una alternativa al Stellar Observer para empresas que utilizan uno de los proveedores admitidos. Además de la funcionalidad ofrecida por el Stellar Observer, el servidor de custodia también puede facilitar pagos salientes a las cuentas Stellar de los clientes. Si también utilizas el servicio de events, los pagos a tus cuentas desencadenarán un callback HTTP realizado a tu servidor de negocios.

Si ya tienes una integración con tu proveedor de billetera, entonces este componente no es requerido, aunque tu servidor de negocios necesitará notificar a la Anchor Platform cuando un pago asociado con una transacción de la Anchor Platform haya sido enviado a o desde tus cuentas Stellar a través de la Platform API.

Actualmente, el único proveedor admitido es Fireblocks.

Stellar Observer

El Stellar Observer, una alternativa al servidor de custodia mencionado anteriormente, monitorea la blockchain de Stellar usando Horizon, detecta automáticamente los pagos de usuarios enviados al negocio y actualiza las transacciones correspondientes en la base de datos de la Anchor Platform. Si también utilizas el servicio de events, los pagos a tus cuentas desencadenarán un callback HTTP realizado a tu servidor de negocios.

Si ya tienes una solución para monitorear pagos a tus cuentas Stellar, como una integración con tu exchange, Horizon, o RPC, entonces este componente no es requerido, aunque tu servidor de negocios necesitará notificar a la Anchor Platform cuando un pago asociado con una transacción de la Anchor Platform haya sido realizado a una de tus cuentas Stellar a través de la Platform API.