Este repositório contém uma coleção de pastas de exemplo que podem ser usadas individualmente para demonstrar os principais recursos do Zilla. Se este é o seu primeiro passo em sua jornada com o Zilla, encorajamos você a experimentar nosso Guia de início rápido.
Você precisará de um ambiente com Docker ou Helm e Kubernetes instalados. Confira nossas coleções do Postman para mais maneiras de interagir com um exemplo.
O script startup.sh
destina-se a ajudar a configurar e desmontar os componentes necessários para cada um dos exemplos. Usá-lo é a maneira mais fácil de interagir com cada exemplo.
Instale e execute qualquer um dos exemplos usando o script startup.sh
:
./startup.sh -m example.name
Você pode especificar seu próprio host e porta Kafka ou o diretório de trabalho onde deseja que os exemplos sejam baixados. Os diretórios de exemplo existentes not
serão substituídos.
./startup.sh -m -k kafka:9092 -d /tmp example.name
Alternativamente, você pode executar este script da mesma maneira, sem clonar o repositório.
wget -qO- https://raw.githubusercontent.com/aklivity/zilla-examples/main/startup.sh | sh -s -- -m example.name
./startup.sh --help
Usage: startup.sh [-hm][-k KAFKA_BOOTSTRAP_SERVER][-d WORKDIR][-v ZILLA_VERSION][-e EX_VERSION][--no-kafka-init][--redpanda] example.name
Operand:
example.name The name of the example to use [default: quickstart][string]
Options:
-d | --workdir Sets the directory used to download and run the example [string]
-e | --ex-version Sets the examples version to download [default: latest][string]
-h | --use-helm Use the helm install, if available, instead of compose [boolean]
-k | --kafka-server Sets the Kafka Boostrap Server to use [string]
-m | --use-main Download the head of the main branch [boolean]
-v | --zilla-version Sets the zilla version to use [default: latest][string]
--auto-teardown Executes the teardown script immediately after setup [boolean]
--no-kafka-init The script wont try to bootstrap the kafka broker [boolean]
--redpanda Makes the included kafka broker and scripts use Redpanda [boolean]
--help Print help [boolean]
Nome | Descrição |
---|---|
asyncapi.mqtt.proxy | Encaminha mensagens de publicação MQTT validadas e proxies assinam um corretor MQTT |
asyncapi.mqtt.kafka.proxy | Encaminha mensagens de publicação MQTT para Kafka, transmitindo para todos os clientes MQTT inscritos |
asyncapi.http.kafka.proxy | Correlaciona solicitações e respostas HTTP em tópicos Kafka separados |
asyncapi.sse.proxy | Mensagens validadas por proxies entregues pelo servidor SSE |
asyncapi.sse.kafka.proxy | Transmite mensagens publicadas em um tópico Kafka por meio de SSE |
tcp.echo | Ecoa bytes enviados ao servidor TCP |
tcp.reflect | Ecoa bytes enviados ao servidor TCP, transmitindo para todos os clientes TCP |
tls.echo | Ecoa bytes criptografados enviados ao servidor TLS |
tls.reflect | Ecoa bytes criptografados enviados ao servidor TLS, transmitindo para todos os clientes TLS |
http.sistema de arquivos | Serve arquivos de um diretório no sistema de arquivos local |
http.filesystem.config.server | Serve arquivos de um diretório no sistema de arquivos local, obtendo a configuração de um servidor http |
http.eco | Solicitação de eco enviada ao servidor HTTP de um cliente HTTP |
http.echo.jwt | Solicitação de eco enviada ao servidor HTTP de um cliente HTTP autorizado por JWT |
http.proxy | Solicitação de proxy enviada ao servidor HTTP de um cliente HTTP |
http.proxy.schema.inline | Solicitação de proxy enviada ao servidor HTTP de um cliente HTTP com aplicação de esquema |
http.kafka.sync | Correlaciona solicitações e respostas HTTP em tópicos Kafka separados |
http.kafka.async | Correlaciona solicitações e respostas HTTP em tópicos Kafka separados, de forma assíncrona |
http.kafka.cache | Fornece respostas em cache de um tópico Kafka, detecta quando atualizado |
http.kafka.oneway | Envia mensagens para um tópico Kafka, dispare e esqueça |
http.kafka.crud | Expõe uma API REST com operações CRUD onde um tópico Kafka compactado por log atua como uma tabela |
http.kafka.sasl.scram | Envia mensagens para um Kafka habilitado para SASL/SCRAM |
http.kafka.karapace | Valide mensagens enquanto produz e busca em um tópico Kafka |
http.redpanda.sasl.scram | Envia mensagens para um cluster Redpanda habilitado para SASL/SCRAM |
kubernetes.prometheus.autoscale | Demonstração do recurso de escalonamento automático de pod horizontal do Kubernetes com base em uma métrica personalizada com Prometheus |
grpc.echo | Ecoa mensagens enviadas ao servidor gRPC de um cliente gRPC |
grpc.kafka.echo | Ecoa mensagens enviadas para um tópico Kafka via gRPC de um cliente gRPC |
grpc.kafka.fanout | Transmite mensagens publicadas em um tópico Kafka, aplicando confusão com base na compactação de log |
grpc.kafka.proxy | Correlaciona solicitações e respostas gRPC em tópicos Kafka separados |
grpc.proxy | Proxies solicitações e respostas gRPC enviadas ao servidor gRPC de um cliente gRPC |
amqp.reflect | Ecoa mensagens publicadas no servidor AMQP, transmitindo para todos os clientes AMQP receptores |
mqtt.kafka.broker | Encaminha mensagens de publicação MQTT para Kafka, transmitindo para todos os clientes MQTT inscritos |
mqtt.kafka.broker.jwt | Encaminha mensagens de publicação MQTT para Kafka, transmitindo para todos os clientes MQTT autorizados por JWT inscritos |
início rápido | Inicia endpoints para todos os protocolos (HTTP, SSE, gRPC, MQTT) |
sse.kafka.fanout | Transmite mensagens publicadas em um tópico Kafka, aplicando confusão com base na compactação de log |
sse.proxy.jwt | Mensagens proxy entregues pelo servidor SSE, impondo restrições de segurança de streaming |
ws.echo | Ecoa mensagens enviadas para o servidor WebSocket |
ws.refletir | Ecoa mensagens enviadas ao servidor WebSocket, transmitindo para todos os clientes WebSocket |
Leia os documentos. Experimente os exemplos. Junte-se à comunidade do Slack.