Server Related Concepts

  • shared hosting:
    • Chinese name: 虚拟主机, 共享主机
    • case study: a common server choice for setup most websites
    • structure: one physical server computer storing many websites of many people (eg. 300+ sites), and all the sites sharing the hardware.
  • Virtual Private Server (VPS):
    • Chinese name: 虚拟专享服务器
    • structure: one physical server computer storing many virtual machines (like created by virtualbox software), and each virtual machine can have a external IP, of course, each virtual machine functions like a physical computer with a fixed amount of computing resource split-ed out from the parent physical computer. Thus each virtual machine can have its own OS, and software config and restart function.
  • Cloud Hosting:
    • Chinese name: 云虚拟主机
    • structure: new generation of “Shared Hosting”, one category of “Cloud Computing”, use software to split Cloud Computing server into small space.
  • Cloud Compute:
    • Chinese name: 云服务器, 云计算服务器,云主机
    • structure: cloud computing is combination of computing power, network and storage, it use cluster servers to create a virtual server, like a virtual “Physical server”, so this virtual “Physical server” is technically not affected by any single Physical computer, comparing to first 2 concepts, so before “cloud” invented, any server is on a physical server, and can be affected by the physical computer it sits on.
computing storage network
ali 8.61 3.68/40GB, 0.09/GB 0.081/GB

DNS server

Micro-service, Virtual Machine, Containers

Virtualization and micro-service Separation

  • a Host server is one physical computer
  • a virtual machine is a virtual host server living inside a Host server, with allocated ram, disk, cpu core from the Host server
    • as virtual machine is good solution to create many “Virtual Computers” instead buying many Real Computers
    • but virtual machine still have many duplication part, like same copies of OS and app for each VM take ram and disk resource from their Host server, thus Container concept comes
  • Container is like a sandbox inside a server, all container comes with its own configuration and all use the same ram and disk resource with same base OS. like a lite-weight virtual machine (one of container solution is Docker)

Docker container solution

  • since Container need same base OS, Docker Container is running inside a common linux virtual machine
  • and that linux virtual machine is running on the Host machine (which can be any OS, like win, osx, linux)
  • each docker container wrap App, dependent lib,binary inside.
  • each docker container runs on Docker Engine to the OS (much like Java app concept)

Other Container solution