框架和系统的区分
框架:不完整的软件程序 例如:MapReduce
系统:完整的软件程序 例如:Hdfs、Kafka
计算
计算机的计算实际上就是利用资源(磁盘、内存、CPU、网络)对数据进行处理。(有限的资源称为稀有资源)
分布式&集群
分布式:简单来看就是多个机器。
集群:用户(客户端)、负载均衡器、服务器。
JVM中每一个线程都有自己独立的栈内存空间。
JVM被访问的时候,每个用户的请求就会采用一个线程处理。
所谓分布式的本质 就是 分流。
线程&进程
线程是进程的一部分。
进程启动的时候会申请资源(内存);一个.class文件启动一个Java程序,一个Java程序对应一个进程。
进程运行时不能指定核数大小,但可以指定用哪个core。
线程与core没关系,进程与core有关系。
串行&并发&并行
串行:有多个线程,一个线程运行结束之后通知下一个线程运行。
并发:多个线程去抢占core;设置休眠时间,当A空闲时,B或者C立马执行,也可以看做交叉执行。
并行:有多个core,A和B或者A和C可以同时执行,但是B和C不可以同时执行。
类型&泛型
类型:对外部的数据进行约束
泛型:对内部的数据进行约束