Slamby presenta Slamby Server (API). Cree un poderoso servicio de gestión de datos, almacene y analice sus datos.
Consulte nuestra documentación de API.
La API de Slamby puede encontrar en el Docker Hub.
Debido a que la API de Slamby tiene dependencias: Elasticsearch, Redis y Nginx (recomendado), la forma más fácil de usar la API Slamby es con Docker-Compose.
Hicimos un archivo de composición de Docker preparado para la instalación fácil.
Instalar Docker en su máquina: Guía oficial de instalación de Docker
Instalar Docker Compose en su máquina (se requiere un mínimo de 1.9.0): Guía de instalación oficial de Docker Compose
Descargue nuestro archivo Docker Compose
$ curl -L "https://github.com/slamby/slamby-api/releases/download/v1.7.2/docker-compose.yml" > docker-compose.yml
$ docker-compose -p slamby up -d
$ curl localhost
{
"Name": "Slamby.API",
"Version": "1.7.2",
"InstanceId": "817021ac-cc23-4473-b203-5083c3e7e00e",
"Information": "https://developers.slamby.com"
}
Abra la página de configuración en un navegador (http: // localhost/setup) y siga los pedidos
Durante la configuración necesitas:
Puede usar el servidor API Slamby sin componer. Pero Slamby API tiene requisitos previos. Debe dar la configuración al servidor de API Slamby a través de variables de entorno (estas son como: SlambyApi__... ). Tenga en cuenta que si lo ejecuta en un contenedor debe establecer las variables de entorno en el contenedor, no al host. Si utiliza un sistema operativo en el que puede usar : en los nombres de variables de entorno de los que tiene que usar : en lugar de __ .
La API de Slamby está utilizando ElasticSearch como sistema de almacenamiento de datos. Puede usar una propia instancia o clúster. La versión recomendada es 2.3. Tiene que estar vacío (sin índices) y se recomienda instalar el complemento de atachines de mapeadores. Establezca la URL de ElasticSearch en el SlambyApi__ElasticSearch__Uris__0 (por ejemplo: http: // elasticsearchserver: 9200/). O si tiene un clúster con múltiples puntos finales, establezca todos los puntos finales en el SlambyApi__ElasticSearch__Uris__0 , SlambyApi__ElasticSearch__Uris__1 , SlambyApi__ElasticSearch__Uris__2 etc. variables de entorno).
API Slamby usando Redis para preindexarse y para guardar algunas métricas. Establezca la cadena de conexión Redis en la SlambyApi__Redis__Configuration .
Incluso puede deshabilitar el uso de Redis si lo desea, establecer que se establezcan SlambyApi__Redis__Enabled habilitados en false . (Tenga en cuenta que en ese caso, no puede usar algunas características como PRC Preindexing).
API Slamby usando Dotnet Core y Kestrel debajo del capó. Se recomienda usar un Nginx de la parte superior. Tenemos una imagen Nginx preconfigurada en DockerHub. Se recomienda usar esto, pero puede usar su propio servidor NGINX.
Cree un directorio en la computadora host para los archivos de API Slamby persistentes
Tire de la imagen de Docker Hub
docker pull slamby/slamby.api:1.7.2
Ejecute el contenedor con configuración
docker run -d
--name slamby_api
-p 5000:5000
-v /yourDataDirectory:/Slamby
slamby/slamby.api:1.7.2
La API Slamby está utilizando el puerto 5000 de forma predeterminada, pero puede vincularlo a cualquier puerto que desee en su host de Docker.
Puede anular la configuración por variables de entorno. Tenga en cuenta que si utiliza un sistema operativo en el que puede usar : en los nombres de variables de entorno de los que tiene que usar : en lugar de __ .
Aquí hay una lista de la configuración más importante. Puede encontrar toda la configuración en el archivo AppSettings.json.
SlambyApi__ApiSecret Valor predeterminado: s3cr3t
Este es el secreto para tu API. Debe usar esto para autenticar sus solicitudes.
SlambyApi__BaseUrlPrefixEstá vacío por defecto.
Si está utilizando la API detrás de un proxy inverso, entonces debe usar este valor. Porque en ese caso, el nombre de host no será preciso. La API colocará el host HTTP de la solicitud después de ella.
ElasticSearch__Uris__NUMBERTenga en cuenta que este es un valor de configuración de matriz. Entonces tienes que poner 0, 1, 2 ... en lugar del número.
Hay un One ElasticSearch__Uris__0 predeterminado, con valor predeterminado: 'http://elasticsearch:9200/'
SlambyApi__Serilog__Output Valor predeterminado: /Slamby/Logs
El directorio de salida de los archivos de registro.
SlambyApi__Serilog__MinimumLevel Valor predeterminado: Information
El nivel mínimo de registro.
SlambyApi__Redis__Configuration Valor predeterminado: redis,abortConnect=false,ssl=false,syncTimeout=30000
La cadena de conexión para el servidor Redis.
SlambyApi__Parallel__ConcurrentTasksLimit Valor predeterminado: 0
El límite máximo de las roscas usadas en cada operación. Si es 0, la API usando el número de núcleo * 2 para el mejor rendimiento. Consejo: también puede limitarlo en cada encabezado de solicitud. Compruébalo en la documentación de la API.
SlambyApi__RequestsLimiting__MaxConcurrentRequests Valor predeterminado: 50
Con esta configuración, puede configurar un número de solicitud concurrente máximo. Si hay más solicitudes concurrentes que este número, la API responderá con el código de estado HTTP 503 (servicio no disponible).
Utilizamos problemas de GitHub para rastrear errores públicos. Asegúrese de que su descripción sea clara y tenga suficientes instrucciones para poder reproducir el problema.
Consulte nuestra guía de contribución aquí
Este proyecto tiene licencia bajo la GNU Affero General Public License versión 3.0.
Para uso comercial, contáctenos en [email protected] y compre una licencia comercial.
Si tiene alguna pregunta, visite nuestro grupo comunitario o escriba un correo electrónico a [email protected]