Java 后端到底是在做啥?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 后端到底是在做啥?相关的知识,希望对你有一定的参考价值。

Java的应用领域:
1、Web应用程序设计
可以从事网站应用程序开发,Java在网站开发领域占据了很大部分,像是网页制作、网站维护、软件测试等等。
2、大数据技术
目前大数据应用到的技术是Java应用和其他,尽管Java
3、可视化程序设计:
从事软件企业桌面应用开发,像是软件测试、数据库管理与应用开发、系统支持等。
4、移动应用开发设计:
能够从事移动设备应用开发、嵌入式应用开发、移动网站开发、软件生产企业编码、软件测试、系统支持、软件销售、企、事业单位信息管理、办公自动化集成等工作。
包括无线手持设备、智能卡、通信终端、医疗设备、信息家电(数字电视、机顶盒、冰箱)、汽车电子设备等应用领域,比如还有手机上的Java应用程序和Java游戏。还有很多就不一一列举了。
java从业岗位方向
1、网页开发
目前Java编程技术的应用越来越普遍,也越来越完善,在Java培训学习中我们就可以看的出来Java不仅可以做后端开发同时也可以做前端开发,在Java培训机构的课程内容中对于html、css、js都有包含。
2、企业级应用开发
Java的安全性和稳定性得到了企业的青睐,现在很多企业都会用Java来开发一些大型应用,例如第三方交易系统、银行前后台交易系统、医疗管理系统等等。所以一些项目经验多人可以在培训后找Java企业级应用开发类工作。
3、Java大数据开发
现在越来越多的企业对于大数据的应用逐渐在增多,而从事大数据首先就要懂得一门编程技术,Java就是其中之一,所以学好Java技术以后可以从事大数据相关技术。
4、游戏开发
国内游戏行业近年来发展十分迅速,专业的游戏人才一直存在需求缺口。目前有一些游戏脚本语言可以与Java开发语言进行无缝交互,Java开发语言本身也可以编写游戏脚本。因此学会Java开发后,也可以选择成为一名游戏开发人员。
参考技术A Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。 参考技术B 后端开发主要是后台的程序,比如java ee中的控制器就是用java写的,前台用其他语言,比如祭敖包语言写。 参考技术C 后端指的就是服务端,服务端代码一般运行在服务器上,通常我们运行Java 程序的服务器都是 Linux 服务器。 这些服务器在互联网公司中一般放在一个叫做机房的地方里,于是像我们这类 Java 程序员的代码一般也运行在这些机房里的服务器中。 参考技术D java就是计算机编程语言。Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,

用大白话告诉你 :Java 后端到底是在做什么?

阅读本文大概需要 6 分钟。

作者:黄小斜

 

技术图片

 

新手程序员通常会走入一个误区,就是认为学习了一门语言,就可以称为是某某语言工程师了。但事实上真的是这样吗?其实并非如此。

 

今天我们就来聊一聊,Java 开发工程师到底开发的是什么东西。准确点来说,Java后端到底在做什么?

 

大家都知道 Java 是一门后端语言,后端指的就是服务端,服务端代码一般运行在服务器上,通常我们运行Java 程序的服务器都是 Linux 服务器。

 

这些服务器在互联网公司中一般放在一个叫做机房的地方里,于是像我们这类 Java 程序员的代码一般也运行在这些机房里的服务器中。

 

技术图片

 

Java 里有一个概念叫做虚拟机,你可以把它理解为一个安卓的模拟器,比如你在电脑上装了一个安卓模拟器,就可以通过它来运行安卓应用程序,比如装个 APP,手机游戏什么的。

 

所以当你在电脑上安装了一个叫做 JDK 的东西时,电脑里就有了 JRE 也就是 Java 运行环境,有了这个运行环境,你就可以运行 Java 应用程序了。

 

知道 Java 程序如何运行在计算机上之后,我们再来讲一讲平时学的一些 Java 基础知识,它们到底有什么用?

 

其实平时这一些 Java 基础语法都仅仅是你写代码的一些基础知识,就相当于英语中的 26 个字母,常见的有基本类型变量、for 循环、if else 等等基本语法,掌握了这些基础知识之后,你就可以上手写一些很简单的代码了。

 

除此之外,Java 还有一些比较特别的概念,比如面向对象的特性,其中有类、接口等概念。为什么 Java 要引入这些东西呢,其实就是想让使用者更好地进行设计、抽象和编程。

 

对于新手来说,你不需要理解得特别的深刻,因为这些东西只有你在你真正写代码之后才能逐步去理解。

 

技术图片

 

说完基本知识之后,我想你也会好奇,Java里经常提到的一些集合类是干嘛的呢,因为在现实生活中有很多场景,需要用到集合类,比如说一个用户名列表,你要怎么存呢?

 

你会用一个 List 来做对不对,所以集合类的作用就是让你在编程中更好的存储数据。

 

事实上,集合类的概念最早是来源于数据结构的,因为计算机里有很多特殊的数据存储结构,比如文件树,比如链表和数组等结构,因此计算机理论把这些存储数据的模型抽象成一些常见的结构,统称为数据结构。

 

那么,Java 中的并发编程又是做什么的呢,Java 中的多线程是为了更好地利用电脑中的CPU核心,通过并发编程,就可以提高程序并发的效率。

 

但是并发编程的背后需要操作系统的支持,以及计算机硬件的支持,所以,如果你要完全地理解多线程,绝不仅仅是理解 Java 里的 Thread 或者是线程池就足够了,你还需要去理解操作系统,以及计算机组成原理。

 

技术图片

 

和并发编程类似,Java 里也有网络编程的概念,Java 里的网络编程和其他语言大同小异,其实也是基于 TCP/IP 协议实现的一套 API,通过网络编程,你就可以在程序中把你想传输的数据传输到网络的另一端,有了网络编程和并发编程之后,Java 程序员的能量已经很大了

 

讲完这几点之后接下来再谈谈,我们通常说的 Java 后端技术到底是什么,就拿支付宝来举例吧,曾经的支付宝用户数并不多,一台服务器,一个数据库就可以支持所有的业务了。

 

当支付宝的用户越来越多的时候,一台服务器无法同时满足海量用户的需求,于是开始出现了多台服务器,多台服务器组成了一个集群,用户可以通过负载均衡的方式访问这些服务器,每个用户可能会访问到不同的机器上,这样子就达到了分流的效果,服务器的压力就会减小。

 

由于数据库需要保证数据的可靠性,万一某一台数据库挂了,并且没有备份的话,那么这个数据就无法访问了,这在大型系统中是不允许出现的,于是乎,就有了数据库的主从部署。

 

但事实上,随着业务发展,数据库的压力也越来越大,主备部署并不能解决数据库访问性能的问题,于是乎我们需要进行分库分表,在数据库主备的基础上,我们会把一个数据量很大的表拆成多个表,并且把数据库请求分流到不同的数据上,比如说100个分库,100个分表,就相当于把一个数据表划分成10000个数据表。

 

此时又出现一个问题,如果一个数据库有多个备库,并且当主库挂掉的时候需要进行主从切换时,主备数据库之间的数据就可能发生不一致,而这也是分布式理论研究的问题之一,因为比较复杂,我们这里就略过不讲。

 

技术图片

 

 

刚才说到了分布式技术,其实负载均衡、分库分表都是分布式技术的一种实现,如果你不想做分库分表,那还有什么办法能够减轻数据库访问的压力呢?于是缓存就出现了,缓存可以让服务器先把请求打到缓存上,由于缓存的数据一般在内存中,所以访问速度会非常快,这些请求无需经过数据库。

 

随着业务发展,缓存的单点压力也会比较大,于是乎分布式缓存就出现了,通常来说,缓存难以保证数据的可靠性,因为它们的数据可能会丢失,同时缓存只能存储一部分的数据,并不能解决所有问题。

 

所以当某些业务的请求量非常大的时候,光靠缓存也解决不了问题,此时我们还可以通过消息队列来帮我们解决大流量并发请求的问题。

 

我们可以通过消息队列来存储一部分的请求消息,然后根据我们服务器处理请求的能力,把消息再逐步取出来,接着去把这些消息逐渐地进行处理,这样就可以很好的解决高并发的问题。当然,前提是消息队列要保证消息存储的可靠性,这也是大部分消息队列都会保证的能力。

 

 

技术图片

 

一口气讲了这么多,算是把 Java 后端的大概面貌介绍清楚了,除此之外还有很多东西没讲到,真要讲完的话一晚上也说不完。

 

总体来说,Java 后端技术,说难不难说简单也不简单,我尽量把这些内容都讲的比较通俗易懂,事实上每项技术的背后都有特别多复杂的实现原理,当然,在你理解了 Java 后端技术的整体概念以后,相信对于你之后的学习会更有帮助。

 

如果有哪里说错了,偷偷留言告诉我

 

文章作者【黄小斜】大厂程序员,互联网职场新知,终身学习践行者,懂技术,懂面试,懂职场,更想懂你。据说,每个上进又好看的互联网人都关注我了。

 

以上是关于Java 后端到底是在做啥?的主要内容,如果未能解决你的问题,请参考以下文章

用大白话告诉你 :Java 后端到底是在做什么?

用大白话告诉你 :Java 后端到底是在做什么?

java程序员一般都是做啥项目的啊?

Java后端看懂Spring源码,到底有没有用?

到底什么是后端开发?

前端用node做啥