All Projects → megamsys → verticegateway

megamsys / verticegateway

Licence: MIT license
REST API server with built in auth, interface to ScyllaDB/Cassandra

Programming Languages

scala
5932 projects

Projects that are alternatives of or similar to verticegateway

gun-cassandra
Cassandra / Elassandra persistence layer for Gun DB 🔫
Stars: ✭ 14 (-44%)
Mutual labels:  cassandra
loopback-connector-cassandra
Cassandra connector for the LoopBack framework.
Stars: ✭ 13 (-48%)
Mutual labels:  cassandra
EFCore.Cassandra
Entity Framework Core provider for Cassandra
Stars: ✭ 23 (-8%)
Mutual labels:  cassandra
esop
Cloud-enabled backup and restore tool for Apache Cassandra
Stars: ✭ 40 (+60%)
Mutual labels:  cassandra
nsqproxy
NSQProxy是NSQ和Worker之间的中间件,根据配置负责消息转发。然后通过HTTP/FastCGI/CBNSQ等协议转发给Worker机执行。
Stars: ✭ 79 (+216%)
Mutual labels:  nsq
cassandra.realtime
Different ways to process data into Cassandra in realtime with technologies such as Kafka, Spark, Akka, Flink
Stars: ✭ 25 (+0%)
Mutual labels:  cassandra
cassandra-CQL-exporter
A highly configurable utility to export whole Apache Cassandra keyspace or table structure/data to CQL scripts.
Stars: ✭ 19 (-24%)
Mutual labels:  cassandra
alpine-kong
alpine-kong
Stars: ✭ 15 (-40%)
Mutual labels:  cassandra
cassandra-dtest
Mirror of Distributed test suite for Apache Cassandra
Stars: ✭ 44 (+76%)
Mutual labels:  cassandra
FsCassy
Functional F# API for Cassandra
Stars: ✭ 20 (-20%)
Mutual labels:  cassandra
pan
Pan is a high performance mq proxy,support kafka,rabbit-mq,rocketmq,nsq and other mq
Stars: ✭ 27 (+8%)
Mutual labels:  nsq
kubernetes-helm-chart-cassandra
Kubernetes Helm Chart for Cassandra
Stars: ✭ 29 (+16%)
Mutual labels:  cassandra
cassandra-client
Cassandra 3 GUI client
Stars: ✭ 49 (+96%)
Mutual labels:  cassandra
tlp-stress
A workload-centric stress tool for Apache Cassandra. Designed for simplicity, no math degree required.
Stars: ✭ 53 (+112%)
Mutual labels:  cassandra
docker-elassandra
Docker Image packaging for Elassandra
Stars: ✭ 25 (+0%)
Mutual labels:  cassandra
labs
learning based labs for Azure Cosmos DB
Stars: ✭ 66 (+164%)
Mutual labels:  cassandra
scalable-retail-web-service
A highly scalable retail web service.
Stars: ✭ 20 (-20%)
Mutual labels:  cassandra
cassandra-migration
Apache Cassandra / DataStax Enterprise database migration (schema evolution) library
Stars: ✭ 51 (+104%)
Mutual labels:  cassandra
opennms-drift-kubernetes
OpenNMS Drift Deployment in Kubernetes for testing and learning purposes
Stars: ✭ 15 (-40%)
Mutual labels:  cassandra
kubernetes-examples
A bunch of examples of how to deploy things on kubernetes
Stars: ✭ 34 (+36%)
Mutual labels:  cassandra

Vertice Gateway

This is our API server for MegamVertice 1.5.x or < 2.0 release.

Roadmap for 2.0

API server for 2.0 is based on rust connecting to cockroachdb.

Where is the code for 2.0

We have moved the development to private gitlab as it will have enterprise features.

When can i get it in my anxious hands

2.0 will be released on Sep 30 2017 or less.

Requirements to compile from source

  1. SBT 0.13.11 >
  2. NSQ 0.3.x
  3. OpenJDK 8.0
  4. Cassandra 3 +

The API server protects the RESTful resources using

  • HMAC based authorization.
  • PASSWORD based on PBKDF2
  • Master key

Compile from source

You'll need sbt build tool. and OpenJDK8.0

Fork

After you have forked a copy of https://github.com/megamsys/vertice_gateway.git

Steps


* git clone https://github.com/<your_github_id>/vertice_gateway.git

* cd vertice_gateway

* sbt

* clean

* compile


Running

Install Cassandra

Install NSQ.io

Setup cassandra keyspace

* cd vertice_gateway/db

* cqlsh -f base.cql

* cqlsh -f 1.5.cql

* cqlsh -f 1.5.1.cql

* cqlsh -f 1.5.2.cql

* cqlsh -f ee.cql

* cqlsh -f me.cql

MEGAM_HOME

Create a home directory to store configuration files for MegamVertice


$ cd ~

$ mkdir -p megam/home/verticegateway

Edit your .bashrc

In your .bashrc file add the following line


export MEGAM_HOME=$HOME/megam/home

After this enter save the .bashrc file.Use the following command

source ~/.bashrc

Configuration

Copy configuration files to $MEGAM_HOME/verticegateway


$ cd vertice_gateway (your cloned location)

$ cp conf/gateway.conf $MEGAM_HOME/verticegateway

$ cp conf/logger.xml $MEGAM_HOME/verticegateway


Start Vertice Gateway

* cd vertice_gateway

* sbt

* clean

* compile

* run

Gateway

Type the url http://localhost:9000

You'll see this in your browser.

{
  "status" : {
    "casssandra" : "up",
    "nsq" : "down"
  },
  "runtime" : {
    "total_mem" : "975 MB",
    "freemem" : "649 MB",
    "cores" : "4",
    "freespace" : "399 of 450 GB"
  }
}

Now you are all set.

API Documentation

Refer [docs](https://docs.megam.io] and we'll publish vertice.raml shortly.

To generate the html docs.


npm install -g raml2html

raml2html vertice.raml

Contribution

As this is heavy on memory, we have a work in progress 2.0 code which is based on rust.

Documentation

For [documentation] (http://docs.megam.io) [devkit] (https://github.com/megamsys/vertice_dev_kit)

License

MIT

Authors

Megam - Humans ([email protected])

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].