VandaCare Framework Design
Magicsoft designed the framework which useful for Magicsoft own project and product also allow third party who interest to build other product on top of Magicsoft Framework.
Run under Linux server and uses an asynchronous approach to deliver static content with efficient use of system resource, we offer the framework for future scalability, good performance and value for money.
Diagram of Magicsoft Framework :
Run under Linux server and uses an asynchronous approach to deliver static content with efficient use of system resource, we offer the framework for future Scalability, reliability, maintainability and security.
We developed using Tornado with Python Programming Language because Tornado is distinct from most mainstream web server framework because it is non-blocking and reasonably fast. It can handle thousands of simultaneous standing connections, which means it is ideal for real-time web services.
MongoDB: Document oriented database High performance, schema free.
Memcached: Distributed memory caching system, which is responsible for caching data in RAM to reduce read operation to external system (usually database).
Tornado: Scalable non-blocking web server which can handle simultaneous concurrent connection. In Magicsoft Framework, it acts as backend web server.
Nginx: Reverse proxy server (front end server) which can distribute load from incoming requests to several backend servers. Nginx can handle high concurrency with low memory usage.
CDN: System containing copies of data, placed at various places in network to maximize the bandwidth for access to the data from clients through the network.
REST API: An approach for distributed architecture, which defines how server resources are represented.
Website: A set of related web pages containing resources, incl. text, video, music, audio, images etc. A website is hosted on at least one web server, accessible via a network such as the Internet or a private local area network through an Internet address known as a Uniform Resource Locator.
Sharding: A horizontal partition of database among multiple machines in order preserving manner.
Mongod: Primary MongoDb worker process that runs on an individual server.
We tried to learn from successfully of real-world business application around the word. Take a small thing from there; we hope that the approach can much get scalability, reliability, maintainability and security. YouTube.com and Google inspires us to use Python as our Programming Language for this project.