后端都需要学习什么

理解前、后端
在一家软件公司里面,我们经常把开发人员分为前端开发人员,后端开发人员,那么我们怎么界定前端开发和后端开发呢。简单地说就是用户在屏幕上看到的和触摸到的体验,都是前端开发做的,反之用户在屏幕上看不到的东西,都是后端开发做的。

之前有一位前端工程师对我说后端比前端简单多了,后端无非就是将前端的数据存储在数据库里,将数据库里的数据返回给前端。如果是相对简单的web系统,这样说当然也没错,但当我们面对的是高流量,高并发的分布式系统,那么后端开发的工作就不是一句简单的增删改查能够解释的。

后端要干些啥呢
后端开发揽括的范围非常之广,这里以Java后端开发举例。

假设我们要开发一个电商网站,作为Java后端开发,我们需要做些什么?

1、首先我们要学会Java语言。掌握好Java语言以后我们需要学习框架,比如Srping全家桶,Hibernate等ORM映射框架,然后我们需要掌握数据库,如MySql,Oracle等。

2、掌握了Web框架和数据库以后,我们就可以编写API提供给前端调用了。

3、项目开发好以后需要准备上线,通常Java Web应用都是部署在Linux机器上,这就要求我们熟悉Linux系统,如果部署的服务多了,还需要引入持续集成来进行应用发布,常用的有Jenkins。

4、项目上线以后,有一个使用了多线程的接口出了问题,这个时候排查就需要我们掌握计算机基础,包括计算机组成原理,计算机网络,操作系统,编译原理等等。

5、随着产品使用的人越来越多,接口响应已经有点慢了,这时候我们需要引入一些中间件来协助我们提高接口响应速度,比如Elasticsearch,缓存,消息队列等等。

6、产品的访问量日益增长,单体架构或者普通的集群已经无法满足需求,这时候我们就需要引入分布式系统,这就要求我们掌握分布式系统设计,微服务等知识。

7、引入分布式以后,当系统出现问题时,排查起来比较困难,这时我们需要引入追踪功能,如追踪管理APM,CAT等,线上服务器资源越来越多,需要进行监控和报警,这就需要引入监控功能,如Prometheus全家桶,Zabix等。

8、随着系统的日渐庞大,我们还需要引入Docker和K8s等容器技术来帮助我们进行发布和部署。

9、产品运行了一段时间,积累了很多数据,这个时候还需要利用大数据来进行数据存储和分析。

相同的逻辑也可以迁移到其他的业务当中,所以,想当一名好后端,学无止境啊…

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值