2. WHO AM I?
Josh Benjamin
Senior Software Engineer
Benjamin@Syncromatics.com
3. SYNCROMATICS
Provides an integrated hardware and software platform also
called "connected bus" which allows logistics planners deep
analytics for improving routes and services, while also
allowing the riding public know where the bus is, the current
number of riders, and estimated arrival time. Syncromatics is
a California Clean Tech winning SaaS company.
5. LEGACY SYSTEM
Written in mid 2000s for tracking vehicles.
Server 1
Cust 1
Cust 2
Server 2
Cust 3
Server 3
Cust 4
Cust 5
What problem did we have? Or why did we switch?
• High avail, lack thereof – inefficient sharing poor unreliable
• Concurrency – processing data packets in order, per vehicle
• Testability – unit tests
• Maintainability – readability
6. AKKA.NET SOLUTION
High Availability – Consistent Hashing Router will rebalance
when a node leaves/fails.
Concurrency – Actors are inherently thread safe. We don’t
worry about locks!
Testable – Actors are small, have one job, and only
communicate via messages.
Maintainable – Small actors are easy to grok.
Took 85% less code to do the same job
Code is just focus on the problem
7.
8. MONITORING AND
DEPLOYMENT
We use statsd, graphite, and grafana to monitor our akka.net
cluster activity and performance.
We deploy our akka.net application packed as a topshelf
service with ansible.
In the future we are looking at docker and ubuntu for hosting.