“You can’t sacrifice partition tolerance” – is one of the more influential articles that I have read on distributed systems design. It talks about applying the CAP theorem: in any distributed system design, choosing between consistency, availability and partition tolerance is a trilemma – you can only choose two of the three.
Theoretical computer science aside, the point it makes is that any practical distributed system needs to have partition tolerance built in. Remote nodes will die, networks will be flaky, and message packets will get lost – and that is how the world is.
One of the major problems that affects the operation of real-time location tracking is patchy mobile network connectivity. Our users trust our SDKs by plugging them into their apps that are out in the big bad world. We guarantee uninterrupted operation of the app regardless of network connectivity. Our SDKs are built to be offline-first. Collecting and handling location data on the smartphone is resilient against bad network. As a result, it is considered to be the source of truth for all data including time – a crucial dimension for real-time location tracking.
Geospatial data forms the core at various data structures in the HyperTrack stack. Historically, geospatial data structures and primitives have been built to service applications that use current location in a point-in-time manner. Geospatial data structures need to be re-imagined as applications of the future start using continuous location tracking. The timestamps of locations become a critical dimension.
At HyperTrack, we are building the easiest way for developers to implement location tracking in their applications. The performance and reliability of our API services contributes to the performance and reliability of these applications. Therefore, one of our goals is to make this information publicly visible. Expect us to keep you fully informed of any issues with HyperTrack.
In one of our previous posts, we showed you the consumer experience for a task that is tracked with HyperTrack. Accurate status events are an important piece for a good user experience. In this post, we take a deeper look into the data model that powers these events, and how you can use them in your application.
Our goal in devops at HyperTrack is to reduce the request response lifecycle of API calls and make them super fast. To achieve this goal, our architecture offloads some tasks out of the synchronous request lifecycle of the application. We accomplish this with Celery, which has become a crucial component in our tech stack at HyperTrack, to execute asynchronous tasks. Continue reading “Using Celery at HyperTrack”→
One of the basic problems in track and trace for local deliveries is getting live and accurate location data of persons or items. Traditional logistics companies have used RFID or standalone GPS chips for this purpose. With the rise of smartphones, such standalone devices are not required. In the on-demand economy, the ubiquitous smartphone is the source of location data. Let’s see what location data from smartphones looks like, and how it can be used to build a smooth tracking experience. Continue reading “Getting accurate location data”→