VPS, cloud, dedicated servers: which type for scientific python processing (scipy, networkx) and API REST?

خرید بک لینک

I am using a server 1GB ram machine server, 1 core processor (as a set up, the free tier instance on AWS) to serve API REST GET requests that occasionally compute sub-graphs and matrixes on demand using scientific python modules.

I want to expand web service on a larger machine, to host more datasets: I look for a cheeper solution with no need to oversize the machine.

I am helping myself with benchmarking sites [e.g. http://serverbear.com] to compare server types, but I don't have expertise in making a decision between type of VPS, cloud, dedicated, IO server and technical features.

Could you help in selecting server type requirements to compute graphs / matrixes on spot and serve extracted data ?

Below a description of the work that server has to do and some numbers for expected use case.

  • I need to run API REST webservice serving small bits of json files (~7Kb, uncompressed); all requests are GET type.

  • Occasionally I need to compute graphs in real-time: I use scientific python modules (scipy and networkx); the RAM memory footprint of graph processing ranges between 50mb-120mb for each query. Graphs are just used to extract data to be sent via the API, then clear out - processing last a few seconds.

  • CPU hits 70% for each graph; tests are done on a mac multicore, but the approach is working decently also on a single core 1GB machine that is currently online.
  • Graphs are expected to be queried only at the beginning of a user session: I don't expect high concurrency for graphs calculations. Let's put max concurrency for computing graphs at 10 per minute; while concurrency of simple queries against key/value store db of 50 per minute.
  • I will cache all API REST with nginx, I don't need sub-graphs to persist: I will just use CPU for a few seconds to create the graph, get data I need, for each query.

While this set up is not meant to scale, it serves my purposes of my self-funded side project to check out with different types of datasets.

I am looking for a server machine, between 4GB - 8GB RAM, which I will use 50% - 30% for indexing; and leave 50% - 70% free RAM for processing and other stuff.

  • Which cheapest and sufficient solution between virtual-private, cloud-hosting, dedicated-hosting (or else machines)?
  • Are low-end servers (e.g. https://lowendbox.com/) capable do the job? or which key minimum requirements should I look at (bandwith, I/O ..)?

Please help understand how to make an estimate based on the things I need to do, and understand main differences I should expect between a VPS, dedicated, cloud or other simpler solutions.

If you need a working example, I can provide the url for the test currently online.

Recent Questions...

ما را در سایت Recent Questions دنبال می‌کنید

برچسب: نویسنده: استخدام کار بازدید: 269 تاريخ: شنبه 19 تير 1395 ساعت: 16:07

صفحه بندی