Git Product home page Git Product logo

storm-net-adapter's Introduction

Storm.Net.Adapter

Overview

Storm.Net.Adapter is a csharp adapter for apache storm. Storm is a distributed realtime computation system. For more information, please check the storm homepage and my personal blog at: storm, The NewIdea (zh-CN).

Requirements

  • .Net Framework / Mono / .Net Core
  • Thrift 0.9.x
  • Python 2.x, JDK 1.6+, Maven 3.x
  • Storm 0.7.1+, Zookeeper
  • Works on Windows, Linux, Mac OSX

Releases

  • You can download the latest stable and development releases from: releases.

  • Or using Nuget:

      PM> Install-Package Storm.Net.Adapter
    
  • Or clone and build it by yourself.

Build and install Storm jars locally

If you are using the latest development version of Storm, e.g. by having cloned the Storm git repository, then you must first perform a local build of Storm itself. Otherwise you will run into Maven errors such as "Could not resolve dependencies for project org.apache.storm:storm-starter:<storm-version>-SNAPSHOT".

# Must be run from the top-level directory of the Storm code repository
$ mvn clean install -DskipTests=true

This command will build Storm locally and install its jar files to your user's $HOME/.m2/repository/. When you run the Maven command to build and run storm-starter (see below), Maven will then be able to find the corresponding version of Storm in this local Maven repository at $HOME/.m2/repository.

Getting started

  • Add spout classes based on ISpout and add bolt classes based on IBolt or IBasicBolt, Both of those need using Storm. For more information check the StormSample project.

  • Build your project and copy the resources to storm topology project. Create a java topology class. For more information check the storm-starter.

  • Under Windows(.Net Framework) call your spout or bolt as follows:

      super("cmd", "/k", "CALL", "StormSimple.exe", "generator");
    
  • Under Linux, Mac OSX, Windows(mono) call your spout or bolt as follows:

      super("mono", "StormSimple.exe", "generator");
    
  • Under Linux, Mac OSX, Windows(.net core) call your spout or bolt as follows:

      super("dotnet", "StormSimple.dll", "generator");
    
  • Package your topology project using Maven:

      $ mvn package
    
  • You can submit (run) a topology contained in this uberjar to Storm via the storm CLI tool:

      $ storm jar storm-starter-*.jar org.apache.storm.starter.WordCountTopologyCsharp wordcount
    

Remote DRPC

.Net Core is not yet supported.

Storm.Net.Adapter is also support DRPC now. You can call the remote DRPC like this:

DRPCClient client = new DRPCClient("drpc-host", 3772);
string result = client.execute("exclamation", "hello word");

Licensing

Storm.Net.Adapter is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.

storm-net-adapter's People

Contributors

ziyunhx avatar gmlewis avatar

Watchers

cwtony avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.