- 后端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
相关推荐
Starwow11 分钟前
微服务之gRPCAsthenia041214 分钟前
AtomicMarkableReference如何解决ABA问题:深入分析Asthenia041232 分钟前
Fail-Fast与快照机制深入解析及并发修改机制拷打Pasregret41 分钟前
观察者模式:从博客订阅到消息队列的解耦实践考虑考虑1 小时前
Springboot捕获feign抛出的异常洛神灬殇1 小时前
【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 时间事件处理部分)DataFunTalk2 小时前
Foundation Agent:深度赋能AI4DATA楽码2 小时前
一文看懂隐藏功能!语言的逃逸分析RunsenLIu2 小时前
基于Django实现的图书分析大屏系统项目Chandler242 小时前
Go:低级编程