Java程序员、缓存架构以及Storm大数据实时计算之间的关系



接下来,我们是要讲解这个商品详情页缓存架构,缓存预热问题和解决方案,缓存热点数据可能导致整个系统崩溃的问题,以及解决方案

缓存,热,预热,热数据

解决方案,和架构设计中,会引入大数据的实时计算的技术,storm

为什么要引入这个storm,难道必须是storm吗?我们后面去讲解那个解决方案的时候再说

java工程师,storm的关系是什么呢,缓存架构和storm的关系

缓存架构和storm的关系,因为有些热点数据相关的一些实时处理的一些方案,比如快速预热,热点数据的实时感知和快速降级,全部要用到storm

因为我们可能需要实时的去计算出热点缓存数据,实时计算,亿级流量,高并发,大量的请求过来

这个时候,你要做一些实时的计算,那么必须涉及到分布式的一些技术,分布式的技术,才能处理高并发,大量的请求

目前在时候计算的领域,最成熟的大数据的技术,就是storm

storm分布式的大数据实时计算的技术/系统

java工程师,我跟storm之间的关系是什么?

1、介绍,我自己本身这么多年,一直在大公司,BAT公司,一线的大互联网公司,我认识的很多的java工程师

java开发和架构,后来开始大数据的架构

大公司里的很多java工程师,都是会用一些大数据的一些技术的,比如storm,或者hbase,或者zookeeper,或者hive,spark

因为在大公司里,容易遇到一些复杂的挑战和场景,比如高并发,海量数据,场景

你做一些java先关的项目,和系统,可能也会遇到这种问题,很多时候,直接用大数据的一些技术,实时计算,你是自己去写个系统,还是用现成的storm

更好的选择时用storm,成熟

我也只是说部分java的人,但是也有很多搞java的工程师就是纯java技术栈

2、java系统跟大数据技术的关系

(1)大数据不仅仅只是大数据工程师要关注的东西

(2)大数据也是Java程序员在构建各类系统的时候一种全新的思维,以及架构理念,比如Storm,Hive,Spark,ZooKeeper,HBase,Elasticsearch,等等

(3)举例说明

Storm:实时缓存热点数据统计->缓存预热->缓存热点数据自动降级

Hive:Hadoop生态栈里面,做数据仓库的一个系统,高并发访问下,海量请求日志的批量统计分析,日报周报月报,接口调用情况,业务使用情况,等等

我所知,在一些大公司里面,是有些人是将海量的请求日志打到hive里面,做离线的分析,然后反过来去优化自己的系统

Spark:离线批量数据处理,比如从DB中一次性批量处理几亿数据,清洗和处理后写入Redis中供后续的系统使用,大型互联网公司的用户相关数据

ZooKeeper:分布式系统的协调,分布式锁,分布式选举->高可用HA架构,轻量级元数据存储

用java开发了分布式的系统架构,你的整套系统拆分成了多个部分,每个部分都会负责一些功能,互相之间需要交互和协调

服务A说,我在处理某件事情的时候,服务B你就别处理了

服务A说,我一旦发生了某些状况,希望服务B你立即感知到,然后做出相应的对策

HBase:海量数据的在线存储和简单查询,替代MySQL分库分表,提供更好的伸缩性

java底层,对应的是海量数据,然后要做一些简单的存储和查询,同时数据增多的时候要快速扩容

mysql分库分表就不太合适了,mysql分库分表扩容,还是比较麻烦的

Elasticsearch:海量数据的复杂检索以及搜索引擎的构建,支撑有大量数据的各种企业信息化系统的搜索引擎,电商/新闻等网站的搜索引擎,等等

mysql的like "%xxxx%",更加合适一些,性能更加好


大家不要说觉得来听课程,就必须每堂课都是代码,代码,代码,就不喜欢听我这些废话

我告诉大家,这些还真不是废话,代码很重要,手写代码,copy。我可能做为一个过来人,很多项目都做过,很多技术都用过,也做过。

比较我的角度,去给大家讲一讲,行业,一些技术领域的问题

相关