marathon

command module
v3.1.11+incompatible Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 3, 2021 License: MIT Imports: 1 Imported by: 0

README

Marathon

Build Status Docs

The Marathon push notification platform makes it very easy to send massive push notifications to tens of millions of users for several different apps. The architecture is composed of two main modules:

Features

  • Multi-tenant - Marathon already works for as many apps as you need, just keep adding new ones;
  • Multi-services - Marathon supports both gcm and apns services, but plugging a new one shouldn't be difficult;
  • Massive Push Notification - Send tens of millions of push notifications and keep track of job status;
  • New Relic Support - Natively support new relic with segments in each API route for easy detection of bottlenecks;
  • Sendgrid Support - Natively support sendgrid and send emails when jobs are created, scheduled, paused or enter circuit break;
  • Easy to deploy - Marathon comes with containers already exported to docker hub for every single of our successful builds. Just pick your choice!

Read more about Marathon in our comprehensive documentation.

Hacking Marathon

Setup

Make sure you have go installed on your machine. If you use homebrew you can install it with brew install go.

Run make setup.

Running the application

Make sure you have docker compose installed as we'll use it to run all Marathon dependencies:

  • Kafka
  • Zookeper
  • Postgres
  • Redis

Create the development database with

make create-db
make migrate

Run the api with make run-api.

Run the workers with make run-workers.

Tests

Running tests can be done with make test, while creating the test database can be accomplished with make drop-test and make db-test.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL