Solved

A good ideas to handle a lot of request from mobile apps

Posted on 2016-09-01
7
105 Views
Last Modified: 2016-09-04
Our apps consume a lot of JSON request (E.g: 1 million downloaded) to download line of data (30Kb) every minutes. What is the best way to architect into mobile apps.
0
Comment
Question by:Imran Hamzah
7 Comments
 
LVL 6

Expert Comment

by:Mukesh Yadav
ID: 41779560
Can you please share some data structure to are planning to use?
0
 
LVL 29

Accepted Solution

by:
Olaf Doschke earned 500 total points
ID: 41779566
Caching, not only full html pages can have a cache-pragma header, any request result. Especially look into ETag. https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/http-caching?hl=en

Also think about CDN (content delivery network), also if the content to cache only is valid for a minute, if even only 1% of millions of users request the same json, you can move that load from your servers via caching and CDN.

Bye, Olaf.
3
 

Author Comment

by:Imran Hamzah
ID: 41779567
We are doing education apps where student apps will answering 30 questions.
We use ionicframework 1 in development.

For now, we have 100k students online using at the same time and our apps consume JSON API to download all that 30 questions into apps for them to answer. It is a huge request, is there any better ideas in apps development to handle this much request? (Currently that JSON request is consumed by website system)
0
Better Security Awareness With Threat Intelligence

See how one of the leading financial services organizations uses Recorded Future as part of a holistic threat intelligence program to promote security awareness and proactively and efficiently identify threats.

 
LVL 108

Expert Comment

by:Ray Paseur
ID: 41779607
What a great project!

Can you post a test data sample of the JSON document -- all 30Kb of it.  I'd like to look at it for redundancies, opportunities for compression, data design, etc.  After I see it, I'll post suggestions and you can see if any of them would be feasible.

Also, I agree 100% with Olaf about cache and CDN.  Battery life in the client device is going to be an issue, and it takes about 10X the electric power to get information from the internet, vs getting the information from the app or browser in the device, so cache helps in many ways.

It might also be useful (depending on the CDN) to consider using cache in the server.
3
 
LVL 29

Expert Comment

by:Olaf Doschke
ID: 41779816
A CDN is the main partner doing caching not only server side nor only client side, but inbetween, in the cloud. This means not only requests of non changed content with the same ETag will not arrive at your server and be no load to it, also a request for the same package of questions coming from different clients can already be provided from the CDN network after the first student requested it, you only need to cope with the N packages of different answers coming back, not with providing the same question package over and over again, even not from your server side cache.

Take a look especially on the list of CDN providers mentioned in the Wikipedia article about this technology: https://en.wikipedia.org/wiki/Content_delivery_network

Since you are having an education project, I'm sure you qualify for governmental or educational discounts of such services or get more features even with a free plan.

Bye, Olaf.
1
 

Author Closing Comment

by:Imran Hamzah
ID: 41784129
Thank you very much.
Now, I see on how to speed up my content delivery to my clients.
0
 

Author Comment

by:Imran Hamzah
ID: 41784163
Does firebase (https://www.firebase.com/) also support CDN?
0

Featured Post

Enabling OSINT in Activity Based Intelligence

Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

Join & Write a Comment

Suggested Solutions

I found this questions asking how to do this in many different forums, so I will describe here how to implement a solution using PHP and AJAX. The logical flow for the problem should be: Write an event handler for the first drop down box to get …
These days socially coordinated efforts have turned into a critical requirement for enterprises.
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …
When you create an app prototype with Adobe XD, you can insert system screens -- sharing or Control Center, for example -- with just a few clicks. This video shows you how. You can take the full course on Experts Exchange at http://bit.ly/XDcourse.

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now