- 后端3要素:
- 域名:重定向到url
- REST风格api:请求方式是动作,/名词是动作的对象
- 云计算三大服务:IaaS、PaaS、SaaS
- IaaS:基础设施即服务:提供存储、网络、计算等基本能力
- PaaS:平台即服务:提供软件运行的平台,用户只用写软件,上传代码,不用管需要多少机器,不用管负载均衡等
- SaaS:软件即服务:提供具体服务,如发短信验证码、发邮件等
- 微服务:SaaS提供的服务就是一个微服务。一个大的后端系统,例如电商后台,有非常多的功能,按功能把大后端拆开,一个功能就是一个小后端,就是一个微服务。每个功能都有自己的后端,都有自己的负载均衡器,设置有自己的数据库。每个功能还可以用不同的语言和技术实现,非常灵活。
- 主数据库:MySQL、MongoDB等,存储核心数据,不擅长做其他事情。
- 对象存储:Blob storage,主数据库明显不适合存储例如图片等对象,此时需要使用对象存储。
- 搜索数据库:例如Elastic Search。主数据库不适合文本搜索。
- 缓存数据库:例如Redis。降低主数据库压力,提高性能。
- 分析数据库:例如Snowflake。将主数据库的数据复制到分析数据库进行数据分析。
- 消息队列:稍后执行任务。
- 消息队列和定时任务:定时任务作业是时间驱动,消息队列是事件驱动;定时任务作业倾向于批处理,MQ倾向于逐条处理。
参考链接:https://www.bilibili.com/video/BV1hH4y1n7b4