Giter VIP home page Giter VIP logo

f5n_server's Introduction

f5n_server

This is a job server to distribute sequencing tasks among portable devices that run f5n

Instructions to deploy server

  1. Clone the repository**

git clone https://github.com/AnjanaSenanayake/f5n_server.git

  1. Inside the cloned directory, compile source code**

mvn install

  1. Deploy in a jetty server(Feel free to use any server, jetty dependencies are already added in pom)**

mvn jetty:run

  1. Open localhost in any web browser.**

Flowchart

Diagram

Real Time Sequencing Network

The source code for the Mobile Application can be found here

Diagram

Quick Start

  1. Download a dataset
  2. Pair each reads.fastq(a) and the corresponding (multi)fast5 files. refer scripts.
  3. Compress each pair as a .zip file. (you should now have a folder with many number of .zip files)
  4. Run f5n-server
  5. Configure the folder path to the folder containing the .zip files.
  6. Configure a pipeline
  7. Create jobs
  8. Connect to f5n-server with mobile phones using the local IP address.

Features

Single Server Socket

Since client-server communication happens only when a job is requested or to get updates of a job, server side is not multi-threaded. Rest of the client requests have to wait while the first client is served. Once a client is served(ex:a job is assigned) the socket is closed. Average service time is minimal thus, we assume mutli-threaded server will not enhance the performance. Also the fact that not all the clients try to connect to the server at the same time supports this. Moreover, there is a considerable time gap between intermediate minIT ouputs. Hence, a client may have to wait until a new job get listed.

Flexible File Listener

minIT is changing their output file format continuously. Hence we advice the user to alter the code to cater for different scenarios.

To Do

  • stop server & reconfiguration pipeline components
  • data set update listner
  • pipeline configuration form validations
  • user messages/warnings/errors to frontend

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.