2020 年度综合大盘点:火爆 IT 业的 7 大 Java 技术,每一项都是大写的“牛逼”!
JAVA 语言作为历史最为悠久的编程语言,从 95 年 5 月开始历经数十年依然盘踞在编程榜前三的位置,与它强大的功能和广泛的运用分不开。JAVA 技术的更新迭代是开发者应该关注的问题,下面盘点一下 2020 年互联网企业在 JAVA 开发中有哪些主流、热门的 IT 技术,帮助大家在职场中快速崛起。
1、微服务技术
首当其冲的就是我们的微服务技术,从最开始的单体式服务,逐步的演化到集群,分布式,以及现在的微服务。
其中在微服务架构主要有:Spring Cloud alibaba、 Dubbo、 ZooKeeper 等,以 Dubbo 占比 26.18%,微服务网关技术,这些技术的变更是随着时代的潮流在不断前进的 我们也是不断的去进步学习。
2、远程调用技术
RPC 远程过程调用是什么?
1、简单的来说,RPC 就是从一台机器上通过参数传递的方式调用另外一台服务器上的一个函数或者方法,并得到返回结果。
2、RPC 会隐藏底层的通讯细节,不需要直接处理 Socket 通讯或者 Http 通讯
3、RPC 是一个请求响应模型,客户端发起请求,服务器返回响应。
4、RPC 在使用形式上想调用本地函数(或者方式)一样去调用远程的函数或者方法。
早期的 RPC:
第一代 RPC(ONC RPC,OSF RPC)不支持对象的传递。CORBA 太复杂,各种不同实现不兼容,一般程序员也玩不转。DCOM,COM+ 逃不出 Windows 的手掌心。RMI 只能在 Java 里面玩。.NET Remoting 只能在 .NET 平台上玩。
现在使用 RPC 框架的程序员中, 使用 Dubbo 的人数占比较高,其次为 dubbox、gRPC、hessian 也具有一定的使用比例。 较于早期的 RPC 有了较大的提升,可以在多平台语言使用。
3、开发技术
多数程序员在工作中使用的开发技术为权限管理和消息队列。1/4 的程序员在工作中使用的开发技术为报表技术、分布式缓存技术和负载均衡解决方案。当前 2020 年内最火的技术 就是 redis RocketMQ 和 ES 等 技术 下面会进行详细的描述。
4、权限管理技术
从控制力度来看,可以将权限管理分为两大类:
1、功能级权限管理;
2、数据级权限管理。
从控制方向来看,也可以将权限管理分为两大类:
1、从系统获取数据,比如查询订单、查询客户资料;
2、向系统提交数据,比如删除订单、修改客户资料。
首当其冲的 就是 shiro,其次为 spring security 以及 auth2 和自定义框架等 。
一般就使用基于角色访问控制技术 RBAC(Role Based Access Control)。该技术被广泛运用于各个系统,非常容易掌握。
5、消息队列技术
消息中间件属于分布式系统中的一个子系统,关注于数据的发送和接收,利用高效可靠的消息传递机制对分布式系统中的其余各个子系统经进行集成
消息队列技术主要有:ActiveMQ、RabbitMQ 和 Kafka。RocketMQ 的使用人数较少。但是逐渐的成为了主流趋势
6、分布式缓存技术
Redis 技术是绝大多数程序员在工作中会使用到的分布式缓存技术。其次为 ehcache,而 Memcached 占比较低。Redis 6.0 之后支持了多线程 那么是如何实现的呢 ?
7、全文检索技术
Solr、elasticsearch 和 Lucene 是多数老程序员在工作中使用的全文检索技术。其中,超半数的程序员在工作中使用 Solr 和 elasticsearch。
lasticsearch
基于 lucene
lucene 的局限性:
只能基于 java 开发
类库的接口学习曲线陡峭
原生并不支持水平拓展
Java 在 IT 技术圈中仍然占据着主流地位,开发者想要不被企业淘汰就需要不断的学习掌握最新的 java 的技术,才能更具竞争力。
还有哪些技术,欢迎你们在评论区留言。
评论 (3 条评论)