<commit_before>Vert.igo
========

**[The Vertigo Python API has moved](https://github.com/kuujo/vertigo-python)**

Vertigo is a distributed event processing framework built on the
[Vert.x](http://vertx.io/) application platform. Following a concept and
structure similar to [Storm](https://github.com/nathanmarz/storm), Vertigo
allows real-time problems to be broken down into smaller tasks (as Vert.x
verticles) and distributed across **one or many Vert.x instances**, managing
communication between components in a **predictable and reliable** manner.

* Supports simple pipelines or complex networks of Vert.x modules/verticles,
  including remote procedure calls spanning multiple Vert.x verticle instances
* Supports message ack/fail/timeout mechanisms, providing data sources
  with feedback on the state of processing simple or complex message trees
* Monitors networks for failures and automatically reassigns/redeploys failed
  verticles and modules
* Can distribute verticle/module instances among a single Vert.x instance or
  across a cluster of Vert.x instances
* Network components can be written in any Vert.x supported language, with
  current integration for Java and [Python](https://github.com/kuujo/vertigo-python)
* Integrates seemlessly with existing Vert.x applications

Vertigo is not a replacement for [Storm](https://github.com/nathanmarz/storm).
Rather, Vertigo is a lightweight alternative that is intended to be embedded
within larger Vert.x applications.

## Java User Manual

1. [Networks](#networks)
1. [Components](#components)
1. [Messaging](#messaging)
   * [How components communicate](#how-components-communicate)
   * [Message distribution](#message-distribution)
   * [Messages](#messages)
1. [Reliability](#reliability)
   * [Component supervision](#component-supervision)
   * [Message acking](#message-acking)
   * [How acking works](#how-acking-works)
1. [Creating Components](#creating-components)
   * [Contexts](#contexts)
      * [WorkerContext](#workercontext)
      * [ComponentContext](#componentcontext)
      * [NetworkContext](#networkcontext)
   * [Feeders](#feeders)
     * [BasicFeeder](#basic-feeder)
     * [PollingFeeder](#polling-feeder)
     * [StreamFeeder](#stream-feeder)
   * [Workers](#workers)
      * [JsonMessage](#jsonmessage)
      * [Emitting messages](#emitting-messages)
      * [Acking messages](#acking-messages)
   * [Executors](#executors)
1. [Defining networks](#defining-networks)
   * [Defining network components](#defining-network-components)
   * [Defining connections](#defining-connections)
   * [Component Groupings](#component-groupings)
   * [Component Filters](#component-filters)
   * [Network structures](#network-structures)
   * [Remote procedure calls](#defining-remote-procedure-calls)
1. [Network deployment](#network-deployment)
   * [Clustering](#clustering)
<commit_msg>Update bullet points in README.<commit_after>Vert.igo
========

**[The Vertigo Python API has moved](https://github.com/kuujo/vertigo-python)**

Vertigo is a distributed event processing framework built on the
[Vert.x](http://vertx.io/) application platform. Following a concept and
structure similar to [Storm](https://github.com/nathanmarz/storm), Vertigo
allows real-time problems to be broken down into smaller tasks (as Vert.x
verticles) and distributed across **one or many Vert.x instances**, managing
communication between components in a **predictable and reliable** manner.

* Manages multi-step event processing systems, from simple pipelines to
  **complex networks of Vert.x modules/verticles**, including **remote procedure
  calls spanning multiple Vert.x verticle instances**
* **Abstracts communication details** from verticle implementations by providing
  an API for defining verticle relationships at the point of deployment
* **Guarantees message processing** through ack/fail/timeout mechanisms, providing
  data sources with feedback on the status of processing simple or complex
  message trees
* Supports distribution of messages between multiple verticle instances using
  **random, round-robin, consistent hashing, or fanout** approaches
* Supports **distribution of verticle/modules instances across a cluster** of Vert.x
  instances
* **Monitors networks for failures** and automatically reassigns/redeploys failed
  verticles and modules
* Network components can be written in **any Vert.x supported language**, with
  current integration for Java and [Python](https://github.com/kuujo/vertigo-python)
* Integrates seemlessly with existing Vert.x applications

Vertigo is not a replacement for [Storm](https://github.com/nathanmarz/storm).
Rather, Vertigo is a lightweight alternative that is intended to be embedded
within larger Vert.x applications.

## Java User Manual

1. [Networks](#networks)
1. [Components](#components)
1. [Messaging](#messaging)
   * [How components communicate](#how-components-communicate)
   * [Message distribution](#message-distribution)
   * [Messages](#messages)
1. [Reliability](#reliability)
   * [Component supervision](#component-supervision)
   * [Message acking](#message-acking)
   * [How acking works](#how-acking-works)
1. [A Simple Network](#a-simple-network)
1. [Creating Components](#creating-components)
   * [Contexts](#contexts)
      * [WorkerContext](#workercontext)
      * [ComponentContext](#componentcontext)
      * [NetworkContext](#networkcontext)
   * [Feeders](#feeders)
     * [BasicFeeder](#basic-feeder)
     * [PollingFeeder](#polling-feeder)
     * [StreamFeeder](#stream-feeder)
   * [Workers](#workers)
      * [JsonMessage](#jsonmessage)
      * [Emitting messages](#emitting-messages)
      * [Acking messages](#acking-messages)
   * [Executors](#executors)
1. [Defining networks](#defining-networks)
   * [Defining network components](#defining-network-components)
   * [Defining connections](#defining-connections)
   * [Component Groupings](#component-groupings)
   * [Component Filters](#component-filters)
   * [Network structures](#network-structures)
   * [Remote procedure calls](#defining-remote-procedure-calls)
1. [Network deployment](#network-deployment)
   * [Clustering](#clustering)

{'fraction_non_alphanumeric': 0.11579630230295167, 'fraction_numerical': 0.002432695426532598, 'mean_word_length': 5.24822695035461, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 8, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4450284', 'n_tokens_mistral': 1730, 'n_tokens_neox': 1619, 'n_words': 511}