目前消息队列作为中间件可以为系统带来很多意想不到的好处。RocketMQ 作为消息队列之一被大多数公司采纳并使用。选择中间件的可以从可靠性,性能,功能,可运维性,可拓展性,社区活跃度等几个维度来考虑。目前常用的几个中间件,ActiveMQ 作为“老古董”,市面上的已经不多,其它的如 RabbitMQ、kafak、RoctetMQ 的特点为:RabbitMQ:优点:轻量,迅捷,容易部署和使用,拥有
1、kafka的特点分布式流处理平台。在系统之间构建实时数据流管道。以topic分类对记录进行存储,每个记录包含key-value+timestamp每秒钟百万消息吞吐量。producer //消息生产者 consumer //消息消费者 consumer group //消费者组 kafka server //broker,ka
转载 2024-10-12 11:24:26
24阅读
一、什么是SSH     SSH是英文Secure Shell的简写形式。通过使用SSH,你可以把所有传输的数据进行加密,这样"中间人"这种攻击方式就不可能实现了,而且也能够防止DNS欺骗和IP欺骗。使用SSH,还有一个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度。SSH有很多功能,它既可以代替Telnet,又可以为FTP、Pop、甚至为PP
  Java 现已成为当今大多数网络应用程序的基础,被认为对企业软件、Web 脚本、游戏和移动应用程序非常有用。Java 被许多大企业使用,被认为是企业和可维护 Web 开发的最强大参与者之一。  让我们来看看为什么应该选择 Java 进行 Web 开发  面向对象的编程语言  Java 流行的主要原因是它是一种面向对象的编程语言。 OOP 应用程序更易于管理和编码,并保持系统灵活、模块化和可扩展
为什么使用mongodb?作用? 主要用来应对三高问题高并发读写 高效率存储访问 高可扩展,高可用性传统的关系型数据库(如MySQL),在数据操作的“三高”需求以及应对Web2.0的网站需求面前,显得力不从心。 解释:“三高”需求: • High performance - 对数据库高并发读写的需求。 • Huge Storage - 对海量数据的高效率存储和访问的需求。 • High Scala
转载 2023-08-02 15:51:41
252阅读
setTimeout,它就是一个定时器,用来指定某个函数在多少毫秒之后执行。setTimeout用法var timeoutID = setTimeout(function[, delay, arg1, arg2, ...]); var timeoutID = setTimeout(function[, delay]); var timeoutID = setTimeout(code[, delay
转载 2024-06-06 22:27:42
82阅读
有一个比较幼稚的问题,例如,只是想开车上下班的人,有必要先学会修车,然后再学开车么?还是先学开车,以后有必要或者有想法,他再去学修车呢?我个人当然是倾向于后者。使用spring也是如此! 1.方便解耦,便于开发(Spring就是一个大工厂,可以将所有对象的创建和依赖关系维护都交给spring管理)2.spring支持aop编程(spring提供面向切面编程,可以很方便的实现对程序进行权限
转载 2023-07-05 20:37:44
100阅读
# Hadoop为什么用Java Apache Hadoop是一个开源的分布式计算框架,广泛应用于大数据处理。很多人可能会问,为什么Hadoop选择使用Java作为其主要编程语言?在本文中,我们将探讨Java与Hadoop之间的关系,并通过代码示例和序列图的方式来阐释其优势。 ## Java的优势 ### 1. 跨平台能力 Java的“编写一次,处处运行”特性使其成为开发分布式系统的理想选
原创 8月前
45阅读
# 为什么使用Java 8 Java是一种广泛应用于开发各种类型应用程序的编程语言。在Java的演变过程中,Java 8版本引入了许多重要的新功能和改进,这些功能使得Java编程更加简洁、高效并且更易于维护。本文将介绍Java 8的一些主要特性,并提供相应的代码示例。 ## 1. Lambda表达式和函数式编程 Lambda表达式是Java 8引入的一项重要特性,它使得Java具备了函数式编
原创 2023-08-13 18:45:52
34阅读
## Java为什么使用集合 ### 1. 流程图 ```mermaid flowchart TD A(开始) --> B(创建集合) B --> C(添加元素) C --> D(删除元素) D --> E(遍历集合) E --> F(查找元素) F --> G(结束) ``` ### 2. 创建集合 在Java中,使用集合类可以方便地管理一
原创 2023-11-17 11:39:05
22阅读
本节目录1、消息轨迹数据格式2、记录消息轨迹3、如何存储消息轨迹数据 RocketMQ消息轨迹主要包含两篇文章:设计篇与源码分析篇,本节将详细介绍RocketMQ消息轨迹-设计相关。 RocketMQ消息轨迹,主要跟踪消息发送、消息消费的轨迹,即详细记录消息各个处理环节的日志,从设计上至少需要解决如下三个核心问题:消费轨迹数据格式记录消息轨迹(消息日志)消息轨迹数据存储在哪?1、消息轨迹数据格
一、clone的概念   clone顾名思义就是复制, 在Java语言中, clone方法被对象调用,所以会复制对象。所谓的复制对象,首先要分配一个和源对象同样大小的空间,在这个空间中创建一个新的对象。那么在java语言中,有几种方式可以创建对象呢? 使用new操作符创建一个对象使用clone方法复制一个对象   那么这两种方式有什么相同和不同呢?new操作符的本意是分配内存。
大数据文摘出品编译:张大笔茹十年前,你说你是做数据的,大家的反应就是——Excel做做表。现在,要成为一个合格的数据分析师,你说你不会Python,大概率会被江湖人士耻笑。Medium上一位博主就分享了他一步步Python替换掉十年前的“老情人”Excel的过程,一起来学习一下吧! 在Excel成为我的“初恋”十年之后,是时候找一个更好的“另一半”了,在这个技术日新月异的时代,更好更
转载 2023-11-17 20:50:35
85阅读
1. 什么是跳跃表(skiplist)跳跃表(skiplist)是一种有序数据结构,它通过在每个节点中维持多个指向其他节点的指针,从而达到快速访问节点的目的。Redis 使用跳跃表作为有序集合键(ZSET)的底层实现之一,如果一个有序集合包含的元素数量比较多,又或者有序集合中元素的成员是比较长的字符串时,Redis 就会使用跳跃表来作为有序集合键的底层实现。Redis 只在两个地方用到了跳跃表(s
一、浅谈Redis?1.为什么要用Redis?前台系统中:    如用户访问的效率特别低 -> 用户体验差 -> 用户的粘稠低 -> 失去用户!不常用的数据: 如果从mysql中查询 -> 放到数据磁盘上 -> (如用户访问量大)频繁进行I/O操作         &n
转载 2024-04-10 11:20:17
34阅读
概述1、为什么要有Redis的日志呢? 因为一旦服务器宕机,那么内存中的数据将全部丢失。我们能想到的一种解决方案是对于一些数据库中也有的数据,我们从数据库中恢复到缓存。但是这会导致数据库的访问压力过大,并且访问数据库性能不算优秀。2、说下什么是AOF日志?(主要是回答的思路和步骤,提出问题和解决问题的过程) AOF日志中记录的是Redis收到的每一条命令。 它是写后日志,就是先执行命令后记录日志,
转载 2023-09-21 13:14:46
171阅读
为什么java?要么就是个人兴趣,喜欢java这一行,要不就是因为薪资高,发展前景好。不然还能因为啥,吃饱了撑的么?在众多编程语言中,Java有了20多年的发展历史,已经发展出一套完整的生态系统,可以在各个领域都有完美的解决方案,自然成为企业的主力编程语言。有人说,Java是编程界的英语,因为它涉及的领域非常广泛,有软件开发的地方就会有Java的身影。除了网站、游戏、办公软件离不开Java编程语
从项目的背景来看,Dubbo 国内的公司挺多,国内影响力大,Spring Cloud 自然在国外影响力较大,所以这个来看不分伯仲了,毕竟都有大公司在使用。从社区的活跃度来看,可以看下各自的Github托管项目来区分,Dubbo · GitHub 与 Spring Cloud · GitHub ,从更新频率与更新时间来看 Spring Cloud 优于Dubbo,Dubbo基本不维护了。从框
转载 2024-04-12 13:10:59
34阅读
目录 1.什么是rem?2.为什么要用rem(rem有什么优点)?怎样使用rem?1.什么是rem?rem(font size of the root element)是指相对于根元素的字体大小的单位。2.为什么要用rem(rem有什么优点)?都知道现在手机屏幕分辨率越来越多了,假设我们的网页需要适配的iPhone4(320px),iPhone6(375px),iPhone6 Plus(
转载 2024-04-22 09:25:43
35阅读
今天来学习一款国产的消息中间件:RocketMQRocketMQ最初是由阿里团队研发,具有高性能、低延迟和高可靠等特性。一、概述    先来对RocketMQ有一个宏观的了解灵活的可扩展性。天然支持集群,四大核心组件(NameServer、Broker、Producer、Consumer)都支持水平扩展,同时保证高可用。具有海量数据堆积能力。可以在堆积了很多消息之后仍然保证低
转载 2024-05-31 10:43:43
42阅读
  • 1
  • 2
  • 3
  • 4
  • 5