垂直扩容
垂直扩容,主要是提高机器的配置,或者提高实例的配置。
因为,我们知道,大家在云上购买一个数据库或者购买一个实例,其实是按需分配的,就是说对用户而言,可能当前的业务量不大,只需要两个CPU或者是几G的内存;
而随着业务的增长,他可能需要对这个实例进行扩容,那么他可能当前就需要20个CPU,或者是40G的内存。这个时候,在云上我们是可以通过对资源的控制来动态地调整,让它满足业务的需求——就是说可以在同一台机器上动态增加CPU。
这个扩容的极限就是——当整台机器的CPU和内存都给它,如果发现还不够的话,就需要准备更好的机器来进行扩容。
这个在MySQL里面可以通过主备切换:通过先选好一台备机,然后进行数据同步;等数据同步完成以后,进行主备切换,这样就能利用到现在比较好的那台机器。大家可以看到,这整个过程当中,对业务来说基本上没有什么影响——进行主备切换,如果换IP的话,其实是通过前端的或者VIP的方式,对业务来说基本上没有什么影响。那么它一个最大的不好的地方就是,它依赖于单机资源:你可以给它提供一个更好的机器,从而满足一定量的要求。而随着业务更加快速的发展,你会发现现在能提供的最好的机器,可能还是满足不了,相当于扩不下去了。因此,垂直扩容最大的缺点就是,它依赖于单机的资源。