Every day using of miscellaneous web services hiding from us some basic understanding of your favorite site setup.
Looking simple – the background of the project may require really complex setup to satisfy all the needs you have.
Some basic elements which exist practically in any web project nowadays.
Server
This simple word contains a lot of variations inside it.
The basic one – it’s a hardware – an (almost) typical of our understanding about the computer – motherboard, RAM, Hard Drive, and processor.
Virtual server – the ability to setup an isolated environment to run a project which will use only part of hard resources.
FTP server (mail server, proxy server, file server, …) – called as servers, but practically services which defined to work with one of the functions used in the web.
Client
More correct to say – device. It’s possible to be your laptop. Or TV, or your car. Your phone, watch, dishwasher or just a simple (but with micro schemes) lamp.
Micro-services
Flexibility. I may characterize this such with this word. If you need to have development faster, the ability to work in parallel with different functions, increase development team and test new features without shut down of your project – this is a must-have. Each app function you need works as a separate and independent service and you are able to manage it as you need it.
Cloud
Do you need a powerful server? Or not too much? You have a peak of users on Tuesday – but not on Friday?
All these and many other similar requests are solving by cloud solutions. You do not need to have a powerful server to run your project all the time. You may setup a logic when resources may very depend on your needs, changes are quick and due to this, you are able to save money on your web infrastructure.
CDN
Content delivery network. The main and very important idea of this service – to have your page load fast at any place in the world.
API
The key thins in our data world. Every project needs to transfer data quickly and into numerous places. Possible to say that API is a way to connect everything described above.