Server Architecture

nano7 years ago

Hi all,
What is the backend architecture of traccar server? what technologies where they are used?

Thank you,
-Nanoshi

Anton Tananaev7 years ago

On the very high level there are two main parts:

  1. Device communication part. It's based on the Netty library. I would recommend to check Netty documentation if you want to know more details on how it works.

  2. Embedded web server. It serves web interface files and provides the API to access database and internal state of the server.

nano7 years ago

cool. Thank you for the info.

Could you please explain it in a lower level? also I want to know about its model structure?

-Nanoshi

Anton Tananaev7 years ago

For any low level details you should check the source code. For models you can either check code or database schema.

nano7 years ago

Thank you.

One more question. You know the server has reporting on itself. What if a user tries to get a report on a long period? The solution would be the server should prepare the report already, not doing a computation always as it gets requested.

So the question is what is your solution in future on this system?

-Nanoshi

Anton Tananaev7 years ago

At the moment there are no plans to implement report caching.

nano7 years ago

okay. Thank you. You are a great guy.

-Nanoshi

nano7 years ago

do you mind if I ask a question again :D.

What is that server, that is on the database, for?

Nano

Anton Tananaev7 years ago

Sorry, but I don't understand the question.

nano7 years ago

aha, I am trynna understand DB structure. So I am looking all over db tables. The question was what that server table represents?

Anton Tananaev7 years ago

It's server-wide configuration.