{"id":186,"date":"2015-04-25T11:28:54","date_gmt":"2015-04-25T11:28:54","guid":{"rendered":"http:\/\/blog.soton.ac.uk\/socialeyes\/?p=186"},"modified":"2015-05-01T13:43:31","modified_gmt":"2015-05-01T13:43:31","slug":"application-architecture","status":"publish","type":"post","link":"https:\/\/blog.soton.ac.uk\/socialeyes\/2015\/04\/25\/application-architecture\/","title":{"rendered":"Application Architecture"},"content":{"rendered":"<p>Scene application is divided into three layers: client, web server, and database server. The web server provides <a href=\"http:\/\/searchsoa.techtarget.com\/definition\/REST\" target=\"_blank\">Restful API<\/a> where multiples client can make HTTP requests using the standard HTTP verbs (GET, POST, PUT, and DELETE) to update resources in the database. The web server runs on <a href=\"https:\/\/nodejs.org\/\" target=\"_blank\">Nodejs<\/a> which provides a lightweight and efficient platform for real-time data-intensive applications. <a href=\"https:\/\/www.mongodb.org\/\" target=\"_blank\">MongoDB <\/a>is used to store all data about users, venues, and events. As Scene grows, it will be easy to scale application because of the scalability and high performance features that Nodejs and MongoDB provide. Some data which are accessed most frequently are stored locally in <a href=\"http:\/\/www.sqlite.org\/\" target=\"_blank\">SQLite <\/a>database embedded within the client application to reduce HTTP calls to web server. Furthermore, <a title=\"JSON\" href=\"http:\/\/www.json.org\/\" target=\"_blank\">JSON<\/a> are used as the main format for data exchange between client and server.<\/p>\n<figure id=\"attachment_187\" class=\"wp-caption alignleft\" style=\"width: 300px\"><a href=\"http:\/\/blog.soton.ac.uk\/socialeyes\/files\/2015\/04\/app.arch_.png\" data-rel=\"lightbox-image-0\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-187\" src=\"http:\/\/blog.soton.ac.uk\/socialeyes\/files\/2015\/04\/app.arch_-300x212.png\" alt=\"Application Architecture\" width=\"300\" height=\"212\" srcset=\"https:\/\/blog.soton.ac.uk\/socialeyes\/files\/2015\/04\/app.arch_-300x212.png 300w, https:\/\/blog.soton.ac.uk\/socialeyes\/files\/2015\/04\/app.arch_-1024x724.png 1024w, https:\/\/blog.soton.ac.uk\/socialeyes\/files\/2015\/04\/app.arch_.png 1189w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><figcaption class=\"wp-caption-text\">Application Architecture<\/figcaption><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Scene application is divided into three layers: client, web server, and database server. The web server provides Restful API where multiples client can make HTTP requests using the standard HTTP verbs (GET, POST, PUT, and DELETE) to update resources in the database. The web server runs on Nodejs which provides a lightweight and efficient platform for real-time data-intensive applications. MongoDB&#8230;<span class=\"path-read-more\"><a class=\"more-link\" href=\"https:\/\/blog.soton.ac.uk\/socialeyes\/2015\/04\/25\/application-architecture\/\" title=\"Application Architecture\">  Read more &rarr; <\/a><\/span><\/p>\n","protected":false},"author":97407,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[6502],"tags":[11849,349],"class_list":["post-186","post","type-post","status-publish","format-standard","hentry","category-design","tag-architecture","tag-system"],"_links":{"self":[{"href":"https:\/\/blog.soton.ac.uk\/socialeyes\/wp-json\/wp\/v2\/posts\/186","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.soton.ac.uk\/socialeyes\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.soton.ac.uk\/socialeyes\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.soton.ac.uk\/socialeyes\/wp-json\/wp\/v2\/users\/97407"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.soton.ac.uk\/socialeyes\/wp-json\/wp\/v2\/comments?post=186"}],"version-history":[{"count":9,"href":"https:\/\/blog.soton.ac.uk\/socialeyes\/wp-json\/wp\/v2\/posts\/186\/revisions"}],"predecessor-version":[{"id":312,"href":"https:\/\/blog.soton.ac.uk\/socialeyes\/wp-json\/wp\/v2\/posts\/186\/revisions\/312"}],"wp:attachment":[{"href":"https:\/\/blog.soton.ac.uk\/socialeyes\/wp-json\/wp\/v2\/media?parent=186"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.soton.ac.uk\/socialeyes\/wp-json\/wp\/v2\/categories?post=186"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.soton.ac.uk\/socialeyes\/wp-json\/wp\/v2\/tags?post=186"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}