All Projects → swimos → transit

swimos / transit

Licence: Apache-2.0 license
Massively real-time city transit streaming application

Programming Languages

typescript
32286 projects
java
68154 projects - #9 most used programming language
HTML
75241 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to transit

traffic
Massively real-time traffic streaming application
Stars: ✭ 25 (+25%)
Mutual labels:  map, distributed-systems, real-time, actor-model, realtime, concurrency, concurrent-programming, mapbox, demo-app, stateful
Swim
Distributed software platform for building stateful, massively real-time streaming applications.
Stars: ✭ 368 (+1740%)
Mutual labels:  distributed-systems, real-time, actor-model, streaming-api, streaming-data
ripple
Simple shared surface streaming application
Stars: ✭ 17 (-15%)
Mutual labels:  distributed-systems, real-time, actor-model, realtime, stateful
tutorial
Tutorials to help you build your first Swim app
Stars: ✭ 27 (+35%)
Mutual labels:  distributed-systems, real-time, actor-model, streaming-api, stateful
Thespian
Python Actor concurrency library
Stars: ✭ 220 (+1000%)
Mutual labels:  distributed-systems, actors, actor-model, concurrency
Sobjectizer
An implementation of Actor, Publish-Subscribe, and CSP models in one rather small C++ framework. With performance, quality, and stability proved by years in the production.
Stars: ✭ 172 (+760%)
Mutual labels:  actors, actor-model, concurrency, concurrent-programming
Actors.jl
Concurrent computing in Julia based on the Actor Model
Stars: ✭ 95 (+375%)
Mutual labels:  actors, actor-model, concurrency, concurrent-programming
Orleans
Orleans is a cross-platform framework for building distributed applications with .NET
Stars: ✭ 8,131 (+40555%)
Mutual labels:  distributed-systems, actor-model, concurrency
Tractor
structured concurrent, Python parallelism
Stars: ✭ 88 (+340%)
Mutual labels:  distributed-systems, actor-model, streaming-data
nact
nact ⇒ node.js + actors ⇒ your services have never been so µ
Stars: ✭ 1,003 (+4915%)
Mutual labels:  distributed-systems, actors, actor-model
theater
Actor framework for Dart. This package makes it easier to work with isolates, create clusters of isolates.
Stars: ✭ 29 (+45%)
Mutual labels:  actors, actor-model, concurrency
Nact
nact ⇒ node.js + actors ⇒ your services have never been so µ
Stars: ✭ 848 (+4140%)
Mutual labels:  distributed-systems, actors, actor-model
Cloudi
A Cloud at the lowest level!
Stars: ✭ 352 (+1660%)
Mutual labels:  distributed-systems, actor-model, concurrency
Akka
Build highly concurrent, distributed, and resilient message-driven applications on the JVM
Stars: ✭ 11,938 (+59590%)
Mutual labels:  distributed-systems, actor-model, concurrency
protoactor-go
Proto Actor - Ultra fast distributed actors for Go, C# and Java/Kotlin
Stars: ✭ 4,138 (+20590%)
Mutual labels:  distributed-systems, actors, actor-model
Orbit
Orbit - Virtual actor framework for building distributed systems
Stars: ✭ 1,585 (+7825%)
Mutual labels:  distributed-systems, actors, actor-model
Swellrt
SwellRT main project. Server, JavaScript and Java clients
Stars: ✭ 205 (+925%)
Mutual labels:  distributed-systems, real-time, realtime
Concurrent Map
a thread-safe concurrent map for go
Stars: ✭ 2,627 (+13035%)
Mutual labels:  map, concurrency, concurrent-programming
reacted
Actor based reactive java framework for microservices in local and distributed environment
Stars: ✭ 17 (-15%)
Mutual labels:  distributed-systems, actors, actor-model
Gosiris
An actor framework for Go
Stars: ✭ 222 (+1010%)
Mutual labels:  distributed-systems, actors, actor-model

Transit

Prerequisites

  • Install JDK 9+.

    • Ensure that your JAVA_HOME environment variable is pointed to your Java installation location.
    • Ensure that your PATH includes $JAVA_HOME.
  • Install Node.js.

    • Confirm that npm was installed during the Node.js installation.

Run

Windows

Install the Windows Subsystem for Linux.

Execute the command ./run.sh from a console pointed to the application's home directory. This will start a Swim server, seeded with the application's logic, on port 9002.

 user@machine:~$ ./run.sh

*nix

Execute the command ./run.sh from a console pointed to the application's home directory. This will start a Swim server, seeded with the application's logic, on port 9002.

 user@machine:~$ ./run.sh

View the UI

Open the following URL on your browser: http://localhost:9002.

Run as a Fabric

Run two Swim instances on your local machine to distribute the applications Web Agents between the two processes.

# Build the UI
server $ ./build.sh

# Start the first fabric node in one terminal window:
server $ ./gradlew run -Dswim.config.resource=server-a.recon

# Start the second fabric node in another terminal window:
server $ ./gradlew run -Dswim.config.resource=server-b.recon

When both processes are up and running, you can point your browser at either http://localhost:9008 (Server A) or http://localhost:9009 (Server B). You will see a live view of all Web Agents, regardless of which server you point your browser at. Swim transparently demultiplexes links opened by external clients, and routes them to the appropriate server in the fabric.

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].