Java后端到底是在做什么? 本文参考微信公众号——黄小斜 Java开发工程师到底开发什么?准确点来说,Java后端到底在做什么? 众所周知,Java是一门后端语言,后端指的就是服务端,服务端代码一般运行在服务器上, 通常我们运行Java程序的服务器都是Linux服务器。 JRE也就是Java运行环境,有了这个运行环境,你就可以运行Java应用程序了。 Java除了基础语法如for循环、if语句外,还有一些其他的概念,比如面向对象的特性,其中有类、接口等概念。 Java引入这些东西的目的是想让使用者更好地进行设计、抽象和编程。(当然,这些东西只有你真正写代码 之后才能逐步去理解。) Java里经常用到集合类,因为在现实生活中有很多场景,需要用到集合类,比如说存储一个用户名列表我们就可以使用List, 所以集合类的作用就是让数据更好地存取。集合类的底层是数据结构。 Java中的并发编程,Java中的多线程是为了更好地利用电脑中的CPU,通过并发编程,就可以提高程序并发的效率。 并发编程需要操作系统的支持以及计算机硬件的支持,所以如果要理解多线程,不仅仅要理解Java里的Thread和线程池, 还需要理解操作系统以及计算机组成原理。 Java里面也有网络编程的概念,其实也是基于TCP/IP协议实现的一套API,通过网络编程,你就可以在程序中把你想传输的 数据传输到网络的另一端,有了网络编程和并发编程之后,Java程序员的能量已经很大了。 下面我们举一个支付宝的例子来阐述Java后端技术: 支付宝在早期用户数并不多,一台服务器,一个数据库就可以支持所有的业务了。 当支付宝的用户越来越多的时候,一台服务器无法同时满足海量用户的需求,于是开始出现了多台服务器,多台服务器组成了 一个集群,用户可以通过负载均衡的方式访问这些服务器,每个用户可能会访问到不同的机器上,这样就达到了分流的效果, 服务器的压力就会减小。 由于数据库需要保证数据的可靠性,所以数据库需要备份,于是就有了数据库的主从部署。 但是随着业务的发展,数据库的压力也越来越大,主从部署并不能解决数据库访问性能的问题,于是我们需要进行分库分表, 在数据库主从的基础上,我们会把一个数据库很大的表拆成多个表,并且把数据库请求分流到不同的数据上,比如说100个分库, 100个分表,就相当于把一个数据表划分成10000个数据表。 如果一个数据库有多个备库,并且当主库挂掉的时候需要进行主从切换时,主备数据库之间的数据就可能发生不一致, 而这也是分布式理论研究的问题之一,因为比较复杂,我们这里就略过不讲。 负载均衡。分库分表都是分布式技术的一种实现,如果不想做分库分表,那么还有什么办法能够减轻数据库访问的压力呢? 于是缓存就出现了, 提示 订阅专刊 全部评论 推荐最新楼层 暂无评论,快来抢首评~
相关推荐
10-11 12:05 学而思_HR(准入职员工) 学而思内推,学而思内推码 测评初试 HR打电话线上沟通 简单介绍了一下公司情况和工作内容 了解咱们的就业意向(年级和科目) 询问什么时候可以线下面试? 试讲 HR会通过邮件发送试讲题目,从中任意选择一题即可 ps:建议浏览一遍,选比较简单的题目,不然时间有点紧张 8-10min,尽量脱稿 先讲一遍👉培训老师指导👉自主练习15min👉最终展示 终试 一对一面谈 1.自我介绍(尽量往教培经验和相关优势靠) 2.为什么跨专业考研,选择现在这个专业? 3.为什么不从事本专业相关工作,选择教培行业? 4.为什么选择学而思? 5.教培行业需要在节假日上课,可能影响个人社交生活,你能接受吗? 6.课后需要与家长沟通,给学生开小... 点赞 评论 收藏 分享 09-25 11:39 已编辑 字节跳动_抖音直播_后端开发(实习员工) 意向开始陆陆续续发出来了,ATMD大满贯 只投了头部几家运气好流程都比较顺利拿到了对应的意向也算是大满贯了得开始准备细探具体部门的情况看看能不能多A点钱出来 我的代码出BUG了:@美团@腾讯@字节跳动@阿里巴巴。你们好好看看吧,你们就挂我吧,到时候被人家鸽穿还得录取我 点赞 评论 收藏 分享 09-29 07:57 已编辑 门头沟学院 Java 好消息好消息好消息大厂全部OC!!!! 腾讯OC滴滴OC拼多多OC希音OC蓝厂OC联想OC哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈 手撕震撼面试官一整年:oc = offer crazy 点赞 评论 收藏 分享 10-15 20:36 已编辑 门头沟学院 Java 后端Offer选择 26届秋招,目前拿了一些意向+pdd还在泡池子,应该快要开奖了。各位大佬路过求帮忙看下,考虑业务、技术的提升以及工作体验,哪家是比较好的呢。自己比较倾向于base地深圳,当然如果其他base地的offer比较好的话,也可以过几年跳回深圳。欢迎大佬留下意见给小弟指点一下1、阿里国际-ICBU - base深圳:主要做B2B国际贸易,交易支付方向,Java语言,面试官说也在大力发展AI,应该也会做一些AI相关的;2、字节-业务中台- base深圳,给大模型提供数据服务,主要做数据标注和合成引擎,也会涉及到agent开发,go语言;3、淘天-用户增长-Agent开发,base杭州;4、蚂蚁国际-国际... 迷茫的大四🐶:真的遇见佬了 投递蚂蚁集团等公司10个岗位 点赞 评论 收藏 分享 评论 点赞成功,聊一聊 >点赞 收藏 分享 评论