高性能带来的复杂度之单机复杂度
单机为了实现高性能,引入了进程,但是还要考虑多进程、多线程、进程间通信、多线程并发等技术点,所以单机的复杂度主要问题点就是多进程多线程的处理
高性能带来的复杂度之集群复杂度
如果单机变多机,考虑到的问题就是分配算法、由以前的单个任务分配器变成多个任务分配器,这是一方面复杂度。
垂直维度主要是针对单台计算机,通过升级软、硬件能力实现性能提升;水平维度则主要针对集群系统,利用合理的任务分配与任务分解实现性能的提升
垂直维度可包括以下措施:
增大内存减少I/O操作
更换为固态硬盘(SSD)提升I/O访问速度
使用RAID增加I/O吞吐能力
置换服务器获得更多的处理器或分配更多的虚拟核
升级网络接口或增加网络接口
水平维度可包括以下措施:
功能分解:基于功能将系统分解为更小的子系统
多实例副本:同一组件重复部署到多台不同的服务器
数据分割:在每台机器上都只部署一部分数据