Coder Social home page Coder Social logo

java_server's People

Contributors

actions-user avatar haryle avatar

Stargazers

 avatar

Watchers

 avatar

java_server's Issues

Make an HTTP format Class

Generate HTTP Request using builder structure

Parse HTTP Request received from String Message

Generate HTTP Response using builder pattern

Parse HTTP Response from String Message

Write tests for both cases

Content Server Routine

  • Read server URLs like GET server.
  • Read the location of a file in the local file system.
  • Assemble to JSON:
    • No ID means error
  • Receives response from the Agg Server and compares results

Test Retry and Timeout

Implement a Java communication channel that allows for

  • Message delay
  • Message drop
  • Message arrives out of order

Add GETClient Retry and Timeout

  • Client to wait k amount seconds before resending message. Implements using exponential backoff
  • Client to retry for a maximum of m times

Add/Test Backup Runnable

Starting server

  • Check if Backup file is present. If it is, restore from backup.

When running

  • Save backup to local every x amounts of seconds.
  • Run as background task.

Aggregation File System design

At the very least:

  • Map<String, String> where key is the content server ID, and value is the content
  • Map<String, String> where key is the station ID and value is the weather data content
  • List containing the requests

GET Server Basic Routine

  • Parse server info (servername, port) from URL:
    • http://servername.domain.domain:portnumber
    • http://servername:portnumber
    • servername:portnumber
  • Get station ID:
    • Request all information if no station ID is provided
  • Create GET message
  • Receives response and displays to stdout the Body of response.

Implements Task Queue

  • AggServer spawns a connection.
  • Connection read message and allocate Timestamp.
  • Connection decides whethr the message can be handled locally - i.e. empty GET or must be sent to message queue
  • If cannot be handled locally, send the task to message queue

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.