在前后端分离的项目中,我们通常会遇到实现前端路由权限的需求以及全局 loading 效果的需求,在 Vue 项目中,我们可以通过路由守卫 beforEach、afterEach 这个两个钩子函数来实现进入一个路由时的全局 loading 效果。而 vue-router 也提供了灵活的路由配置项允许我们赋予路由更多的信息,包括权限等等。反观 react-router 并没有直接提供给这样的组件。虽然说 vue-router 本身就提供了灵活的配置,但是 React 高阶组件也赋予了我们大展身手的机会。
进程
进程是具有独立功能的程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。系统利用进程控制块来管理和控制进程
线程
线程是程序中的一个执行流,每个线程都有自己的专有寄存器(栈指针、程序计数器等),但代码区是共享的,即不同的线程可以执行同样的函数。
多线程
多线程是指程序中包含多个执行流,即在一个程序中可以同时运行多个不同的线程来执行不同的任务,
也就是说允许单个程序创建多个并行执行的线程来完成各自的任务。
优点
可以提高 CPU 的利用率。在多线程程序中,一个线程必须等待的时候,CPU 可以运行其它的线程而不是等待,这样就大大提高了程序的效率。
缺点
- 线程也是程序,所以线程需要占用内存,线程越多占用内存也越多;
- 多线程需要协调和管理,所以需要 CPU 时间跟踪线程;
- 线程之间对共享资源的访问会相互影响,必须解决竞用共享资源的问题;
- 线程太多会导致控制太复杂,最终可能造成很多 Bug;
进程和线程
线程相对于进程的优点:
- 开销小
- 资源共享性好。
线程相对于进程的缺点:
- 共享资源需要耗费一定的锁资源,同步相对复杂。
- 一个线程崩溃可能导致整个进程崩溃,这个当然是自己的应用程序有问题
进程间通信
- 管道
- 消息队列
- 信号量
- 共享内存
未完待续…..
前言
又是一个阴雨天没有课的下午@( ̄- ̄)@
和舍友打完两把英雄联盟,又打开了掘金开始刷面经。(实习面试很慌啊!)
看到HTTP 协议和 HTTPS 的区别:
- HTTPS 就是身披 SSL( Secure Socket Layer )外壳的 HTTP,运行于 SSL 上,SSL 运行于 TCP 之上,是添加了加密和认证机制的 HTTP。就是在 HTTP(应用层)和 TCP(传输层)之间添加了一层 SSL 协议。
- HTTPS 默认运行在 443 端口,而 HTTP 默认运行在 80 端口。
- HTTPS 由于需要证书的加密机制,所以安全性更高,但同时 CPU 和内存的消耗也更多。
- HTTPS 使用共享密钥加密和公开密钥加密并用的混合加密机制
- 百度和谷歌也会优先收录 HTTPS 站点哦~
看到这里我不禁想起来,我每次打开自己的站点时候都会看到地址栏旁边有个不安全的标志,看着可是着实让人难受,不如来搞个 HTTPS 吧!