- 后端3要素:
- 后端编程语言:java、python等
- 后端框架:spring、django等,降低构建后端程序的难度
- 包管理工具:maven、pip等,别人把代码打包成包供我们调用
- 域名:重定向到url
- REST风格api:请求方式是动作,/名词是动作的对象
- 云计算三大服务:IaaS、PaaS、SaaS
- IaaS:基础设施即服务:提供存储、网络、计算等基本能力
- PaaS:平台即服务:提供软件运行的平台,用户只用写软件,上传代码,不用管需要多少机器,不用管负载均衡等
- SaaS:软件即服务:提供具体服务,如发短信验证码、发邮件等
- 微服务:SaaS提供的服务就是一个微服务。一个大的后端系统,例如电商后台,有非常多的功能,按功能把大后端拆开,一个功能就是一个小后端,就是一个微服务。每个功能都有自己的后端,都有自己的负载均衡器,设置有自己的数据库。每个功能还可以用不同的语言和技术实现,非常灵活。
- 主数据库:MySQL、MongoDB等,存储核心数据,不擅长做其他事情。
- 对象存储:Blob storage,主数据库明显不适合存储例如图片等对象,此时需要使用对象存储。
- 搜索数据库:例如Elastic Search。主数据库不适合文本搜索。
- 缓存数据库:例如Redis。降低主数据库压力,提高性能。
- 分析数据库:例如Snowflake。将主数据库的数据复制到分析数据库进行数据分析。
- 消息队列:稍后执行任务。
- 消息队列和定时任务:定时任务作业是时间驱动,消息队列是事件驱动;定时任务作业倾向于批处理,MQ倾向于逐条处理。
后端开发大纲
产幻少年2024-04-27 13:54
相关推荐
风的归宿5511 分钟前
进程调度:深入Linux内核架构读书笔记代码扳手15 分钟前
Go 微服务数据库实现全解析:读写分离、缓存防护与生产级优化实战Charlie_Byte20 分钟前
Netty + Sa-Token 实现 WebSocket 握手认证多云的夏天20 分钟前
SpringBoot3+Vue3基础框架(1)-springboot+对接数据库表登录shoubepatien1 小时前
JAVA -- 12木木一直在哭泣1 小时前
Spring 里的过滤器(Filter)和拦截器(Interceptor)到底啥区别?源码获取_wx:Fegn08951 小时前
基于springboot + vue物业管理系统無量1 小时前
MySQL事务与锁机制深度剖析無量1 小时前
MySQL索引设计与优化实战木木一直在哭泣1 小时前
CAS 一篇讲清:原理、Java 用法,以及线上可用的订单状态机幂等方案