![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
每日一题
文章平均质量分 61
zjlala96
努力学习,终生学习
展开
-
面试题百日百刷-java基础篇(四)
因为类调用时需要实例化,开销比较大,比较消耗资源,所以当性能是最重要的考量因素的时候,比如单片机、嵌入式开发、Linux/Unix 等一般采用面向过程开发。这八种基本类型都有对应的包装类分别为:Byte、Short、Integer、Long、Float、Double、Character、Boolean。也就是说,方法得到的是所有参数值的一个拷贝,也就是说,方法不能修改传递给它的任何参数变量的内容。2. 深拷贝:对基本数据类型进行值传递,对引用数据类型,创建一个新的对象,并复制其内容,此为深拷贝。转载 2023-05-10 09:00:00 · 74 阅读 · 0 评论 -
面试题百日百刷-java基础篇(三)
当你把对象加入 HashSet 时, HashSet 会先计算对象的 hashcode 值来判断对象加入的位置,同时也会与其他已经加入的对象的 hashcode 值作比较,如果没有相符的 hashcode, HashSet 会假设对象没有重复出现。equals() : 它的作用也是判断两个对象是否相等,它不能用于比较基本数据类型的变量。因为 Java 只有值传递,所以,对于 == 来说,不管是比较基本数据类型,还是引用数据类型的变量,其本质比较的都是值,只是引用类型变量存的值是对象的地址。转载 2023-05-09 09:00:00 · 73 阅读 · 0 评论 -
面试题百日百刷-java基础篇(二)
比如,你想阅读一本英文名著,你可以找一个英文翻译人员帮助你阅读,有两种选择方式,你可以先等翻译人员将全本的英文名著(也就是源码)都翻译成汉语,再去阅读,也可以让翻译人员翻译一段,你在旁边阅读一段,慢慢把书读完。Java 语言既具有编译型语言的特征,也具有解释型语言的特征,因为 Java 程序要经过先编译,后解释两个步骤,由 Java 编写的程序需要先经过编译步骤,生成字节码(*.class 文件),这种字节码必须由Java 解释器来解释执行。常用的通配符为: T,E,K,V,?//这里直接添加会报错。转载 2023-05-08 09:00:00 · 82 阅读 · 0 评论 -
面试题百日百刷-java基础篇(一)
所以 Java 程序运行时比较高效,而且,由于字节码并不针对一种特定的机器,因此,Java 程序无须重新编译便可在多种不同操作系统的计算机上运行。JVM 有针对不同系统的特定实现(Windows,Linux,macOS),目的是使用相同的字节码,它们都会给出相同的结果。字节码和不同系统的 JVM 实现是 Java 语言“一次编译,随处可以运行”的关键所在。它是运行已编译 Java 程序所需的所有内容的集合,包括 Java 虚拟机(JVM),Java 类库,java 命令和其他的一些基础构件。转载 2023-05-07 09:00:00 · 85 阅读 · 0 评论 -
面试题百日百刷-Linux篇(一)
3、查看磁盘IO读写情况:iotop(需要安装一下:yum install iotop)、iotop -o(直接查看输出比较高的磁盘读写程序)参考答案:find、df、tar、ps、top、netstat等。(尽量说一些高级命令)4、查看端口占用情况:netstat -tunlp | grep 端口号。echo "文件存在!2、查看磁盘存储情况:df -h。5、查看进程:ps aux。echo "文件不存在!1、查看内存:top。转载 2023-05-06 09:00:00 · 36 阅读 · 0 评论 -
面试题百日百刷-flink篇(十一)
在流式处理中,CEP 当然是要支持 EventTime 的,那么相对应的也要支持数据的迟到现象,也就是watermark的处理逻辑。CEP对未匹配成功的事件序列的处理,和迟到数据是类似的。在 Flink CEP的处理逻辑中,状态没有满足的和迟到的数据,都会存储在一个Map数据结构中,也就是说,如果我们限定判断事件序列的时长为5分钟,那么内存中就会存储5分钟的数据,这在我看来,也是对内存的极大损伤之一。一个或多个由简单事件构成的事件流通过一定的规则匹配,然后输出用户想得到的数据 —— 满足规则的复杂事件。转载 2023-05-05 09:00:00 · 52 阅读 · 0 评论 -
面试题百日百刷-flink篇(十)
在MemorySegment这个抽象之上,Flink在数据从operator内的数据对象在向TaskManager上转移,预备被发给下个节点的过程中,使用的抽象或者说内存对象是Buffer。而在同一个JVM进程中的task,可以共享TCP连接(基于多路复用)和心跳消息,可以减少数据的网络传输,也能共享一些数据结构,一定程度上减少了每个task的消耗。TaskManager中最细粒度的资源是Task slot,代表了一个固定大小的资源子集,每个TaskManager会将其所占有的资源平分给它的slot。转载 2023-05-04 09:00:00 · 47 阅读 · 0 评论 -
面试题百日百刷-flink篇(九)
JobManager 负责整个 Flink 集群任务的调度以及资源的管理,从客户端中获取提交的应用,然后根据集群中TaskManager 上 TaskSlot 的使用情况,为提交的应用分配相应的 TaskSlot 资源并命令 TaskManager 启动从客户端中获取的应用。JobManager 相当于整个集群的 Master 节点,且整个集群有且只有一个活跃的JobManager ,负责整个集群的任务管理和资源管理。同时 TaskManager 之间的数据交互都是通过数据流的方式进行的。转载 2023-05-03 09:00:00 · 59 阅读 · 0 评论 -
面试题百日百刷-flink篇(八)
整个Flink Job的提交还包含着ActorSystem的创建,JobManager的启动,TaskManager的启动和注册。将operators链接成task是非常有效的优化:它能减少线程之间的切换,减少消息的序列化/反序列化,减少数据在缓冲区的交换,减少了延迟的同时提高整体的吞吐量。这就是我们所说的算子链。2)JobGraph 从StreamGraph生成,将可以串联合并的节点进行合并,设置节点之间的边,安排资源共享slot槽位和放置相关联的节点,上传任务所需的文件,设置检查点配置等。转载 2023-05-02 09:00:00 · 43 阅读 · 0 评论 -
面试题百日百刷-flink篇(七)
Storm 是通过监控 Bolt 中的接收队列负载情况,如果超过高水位值就会将反压信息写到 Zookeeper ,Zookeeper 上的 watch 会通知该拓扑的所有 Worker 都进入反压状态,最后 Spout 停止发送 tuple。作业参数调优包括:并行度的设置,State的设置,checkpoint的设置。原理是缓存一定的数据后再触发处理,以减少对State的访问,从而提升吞吐和减少数据的输出量。这时候我们在进行聚合的时候,北京和上海就会出现数据堆积,我们可以单独数据北京和上海的数据。转载 2023-05-01 09:00:00 · 48 阅读 · 0 评论 -
每日一题(HDFS中大量小文件带来的问题以及解决的方案)
HDFS中大量小文件带来的问题以及解决的方案原创 2023-02-04 10:00:00 · 212 阅读 · 0 评论 -
每日一题(HDFS的存储机制(读写流程))
HDFS存储机制,包括HDFS的写入过程和读取过程两个部分原创 2023-02-02 12:39:32 · 98 阅读 · 0 评论