Posts

SakeWiz : Phase 2 Architecture

Image
(click on the image for the larger version) In the previous post, I shared the initial architecture of the SakeWiz platform. During the last 11 months, we have slowly implemented new features including a new "News Feed algorithm/component", "Facebook login" feature, new "GPU powered label recognition system" ..etc News Feed Algorithm New "News Feed Feature" now shows activities from the followers as well. In order to implement this, all user events are captured and saved in an Event Log (similar to EventStore pattern https://microservices.io/patterns/data/event-sourcing.html) GPU powered label recognition The biggest change to the system was the new GPU powered label recognition component. Previous design used to run on a cluster of EC2 nodes (10 nodes) running a parallelized algorithm. New GPU powered algorithm running on a single NVIDIA Tesla K80 GPU. This increased not only the label recognition accuracy but also reduced the proc

SakeWiz platform : Phase 1 architecture

Image
SakeWiz started as a small pet project and has now grown into a fully fledged Social Network platform.Since the entire project is being developed by two engineers during our free time, we had to choose the best technologies considering : Rapid development Easy deployment and scalability Fewer DevOps tasks  Use "platform managed services" as much as possible SakeWiz Platform has mainly 6 components: API/Microservices Layer Label Scan Cluster  Brewery management Web UI Place/Bar management Web UI Administration Web UI Native Apps (iOS and Android) API Layer(WizAPI) comprised of several microservices which implement the underlying business logic of SakeWiz.This includes microservices for : User management and access control, Product management, Place management (breweries and bars), Search service (product search and geo-search for places),  Label Scan service which sends label scan requests to "Label Scan Cluster", Notification service to impl