- 博客(931)
- 收藏
- 关注
转载 9\ JAVA 对象内存结构
HotSpot虚拟机中,对象在内存中存储的布局可以分为三块区域:对象头(Header)、实例数据(Instance Data)和对齐填充(Padding)。对象头markWord 用于存储对象自身的运行时数据, 如哈希码(HashCode)、GC分代年龄、锁状态标志、线程持有的锁、偏向线程ID、偏向时间戳等等,这部分数据的长度在32位和64位的虚拟机(暂 不考虑开启压缩指针的场...
2020-03-29 18:37:24
432
转载 8、NoClassDefFoundError 和 ClassNotFoundException 有什么区别?
classnotfoundexception当程序运行的过程中尝试使用类加载器去加载class文件的时候,如果没有在classpath中查找到指定的类,就会抛出classnotfoundexception。一般情况下,当我们使用 class.forname或者classloader.loadclass以及使用 classloader.findsystemclass在运行时加载类的时候,如果类没...
2020-03-29 15:11:32
494
转载 7、Exception和Error有什么区别?
exception 和 error都是继承了 throwable类,在java中只有 throwable类型的实例才可以被抛出 throw活着 捕获 catch,它是异常处理机制的基本组成类型,exception和error 体现了java平台设计者对不同异常情况的分类, exceptin是程序正常运行中,可以预料的意外情况, 可能并且应该被捕获,进行相应处理的。error是...
2020-03-28 23:26:35
607
转载 6、谈谈你对 Java 平台的理解?“Java 是解释执行”,这句话正确吗?
典型回答: java本身是一种面向对象的语言,最显著的特性有两个方面,一试所谓的 书写一次,到处运行, write once ,run anywhere ,能够非常容易的获得跨平台能力, 另外就是垃圾回收 gc garbage collection, java通过垃圾回收机器,回收分配的内存。大部分情况下,程序员不需要自己操心内存的分配和回收。我们日常回接触 jre 活着 ...
2020-03-28 23:16:06
376
转载 7、volatile
https://www.cnblogs.com/fengzheng/p/9070268.html并发的三个特性并发场景三个特性:原子性、可见性、有序性;只有在满足了这三个特性,才能保证并发程序正确执行,否则会出现各种问题;1、原子性:cas(乐观锁)和atomic*类,可以保证简单操作的原子性,对于一些负责的操作,可以使用synchronized或者各种锁来实现。2、可...
2020-03-25 14:22:29
252
转载 5、设计模式分为 3 大类型共 23 种
创建型:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。最常见的设计模式有:单例模式、工厂模式、代理模式、构造者模式、责任链模式、适配器模式...
2020-03-25 10:23:47
833
转载 4、让多线程按顺序执行的几种方法
文章介绍4种方法,简单易懂,通过4个demo抛砖引玉。目录在子线程中通过join()方法指定顺序在主线程中通过join()方法指定顺序通过倒数计时器CountDownLatch实现通过创建单一化线程池newSingleThreadExecutor()实现https://blog.youkuaiyun.com/jqc874789596/article/details/1005...
2020-03-25 10:19:29
435
转载 1、 经典排序算法
十大排序算法可以说是每个程序员都必须得掌握的了,花了一天的时间把代码实现且整理了一下,为了方便大家学习,我把它整理成一篇文章,每种算法会有简单的算法思想描述,为了方便大家理解,我还找来了动图演示;这还不够,我还附上了对应的优质文章,看完不懂你来砍我,如果不想砍我就给我来个好看。...
2020-03-25 10:11:30
212
转载 8、Hive/HiveQL常用优化方法全面总结(下篇)
本文接上篇(https://www.jianshu.com/p/8e2f2f0d4b6c)继续讲解Hive/HiveQL常用优化方法,按照目录,会从“优化SQL处理join数据倾斜”说起。优化SQL处理join数据倾斜上篇已经多次提到了数据倾斜,包括已经写过的sort by代替order by,以及group by代替distinct方法,本质上也是为了解决它。join操作更是数据倾斜的重...
2020-03-25 10:09:03
265
转载 7、Hive/HiveQL常用优化方法全面总结(上篇)
目录列裁剪和分区裁剪 谓词下推 sort by代替order by group by代替distinct group by配置调整 map端预聚合 倾斜均衡配置项 join基础优化 build table(小表)前置 多表join时key相同 利用map join特性 分桶表map join 倾斜均衡配置项 优化SQL处理join数据倾斜 空值或无...
2020-03-25 10:05:57
349
转载 4、面试题思考: 什么是事务(ACID)?
事务(Transaction)是由一系列对系统中数据进行访问与更新的操作所组成的一个程序 执行逻辑单元(Unit)。狭义上的事务特指数据库事务。一方面,当多个应用程序并发访问数据库时,事务可以在这些应用程序之间提供一个隔离方法,以防止彼此的操作互相干扰。另一方面,事务为数据库操作序列提供了一个从失败中恢复到正常状态的方法, 同时提供了数据库即使在异常状态下仍能保持数据一致性的方法。事务...
2020-03-25 08:55:43
398
转载 3、MyISAM 和 INNODB的区别是什么
区别:1. InnoDB支持事务,MyISAM不支持,对于InnoDB每一条SQL语言都默认封装成事务,自动提交,这样会影响速度,所以最好把多条SQL语言放在begin和commit之间,组成一个事务;2. InnoDB支持外键,而MyISAM不支持。对一个包含外键的InnoDB表转为MYISAM会失败;3. InnoDB是聚集索引,使用B+Tree作为索引结构,数据文件是和(主键)...
2020-03-25 08:45:36
220
转载 2、Mysql 创建索引
一、为什么需要索引?索引是数据表种一个或者多个列进行排序的数据结构索引能够大幅提升检索速度创建、更新索引本身也会耗费空间和时间二、查找结构进化史线性查找:一个个找;实现简单;太慢二分查找:有序;简单;要求是有序的,插入特别慢HASH查找:查询快;占用空间;不太适合存储大规模数据二叉查找树:插入和查询很快(log(n));无法存大规模数据,复杂度退化平衡树:解决 BST 退化问题,...
2020-03-25 08:35:50
219
转载 1、JVM内存模型,哪些是线程共有的,哪些是线程私有的。
详解 JVM 内存模型JVM 内存模型主要指运行时的数据区,包括 5 个部分,如下图所示栈也叫方法栈,是线程私有的,线程在执行每个方法时都会同时创建一个栈帧,用来存储局部变量表、操作栈、动态链接、方法出口等信息。调用方法时执行入栈,方法返回时执行出栈。本地方法栈与栈类似,也是用来保存线程执行方法时的信息,不同的是,执行 Java 方法使用栈,而执行 native 方法使用本...
2020-03-25 08:18:08
8158
转载 5、hive分区分桶的区别
1.索引 Hive支持索引,但是Hive的索引与关系型数据库中的索引并不相同,比如,Hive不支持主键或者外键。 Hive索引可以建立在表中的某些列上,以提升一些操作的效率,例如减少MapReduce任务中需要读取的数据块的数量。 为什么要创建索引?Hive的索引目的是提高Hive表指定列的查询速度。没有索引时,类似'WHERE tab1.col1 = 10' 的查询,Hi...
2020-03-24 23:34:00
352
转载 4、hive 各种order排序的区别
1、 order by 排序,全局排序,默认升序, 只有一个reducer, 导致运行缓慢, 需要较长的计算时间。2、 sort by 局部排序,其在数据进入reducer前完成排序,因此如果用sort by 进行排序,并且设置 maped.reduce.task?> 1 则,sort by 只能保证每个 reducer输出有序,不能保证全局有序。3、 distribute...
2020-03-24 23:21:28
307
转载 4、数据仓库——五层模型架构
1. ODS 数据准备层. (ods_v8sp.event_log)2. DWD 数据明细层.(dwd_v8sp.event_column_info_hour)3. DWB数据汇总层.(dwb_v8sp.event_column_info_new_hour)4. ST 数据应用层功能:ST层面向用户应用和分析需求,包括前端报表、分析图表、KPI、仪表盘、OLAP、专题等分析,...
2020-03-24 15:52:47
3871
转载 3、spark shuffle原理
转:https://www.jianshu.com/p/009f325e34a2总结前提:每一个job提交后都会生成一个ResultStage和若干个ShuffleMapStage其中ResultStage表示生成作业的最终结果所在的Stage;ResultStage的task分别对应着ResultTaskShuffleMapStage的task分别对应着ShuffleMa...
2020-03-24 15:04:41
242
转载 2、spark-简单优化
1、原则一:避免创建重复的RDD原则二:尽可能复用同一个RDD原则三:对多次使用的RDD进行持久化原则四:尽量避免使用shuffle类算子原则五:使用map-side预聚合的shuffle操作建议使用reduceByKey或者 aggregateByKey算子来替代掉groupByKey算子原则六:使用高性能的算子除了shuffle相关的算子有优化原则之外,其他的算...
2020-03-24 12:05:18
205
转载 1、spark-数据倾斜问题
数据倾斜调优, 使用各种技术方案解决不同类型的数据倾斜问题,以保证spark作业的性能。现象:绝大多数task执行都非常块,但是个别task执行极慢,比如总共有1000个task,997task都在1分钟内执行完成,但是剩下两三个task 需要一两个小时。spark oom数据倾斜发生的原理数据倾斜的原理很简单:在进行shuffle的时候,必须将各个节点上相同的key拉取到某...
2020-03-23 22:13:20
224
原创 微信朋友圈,模仿微信朋友圈,朋友圈点赞评论
1、上图 2、上代码<div class="base-wrap word-break" style="padding: 40px 0 100px;"> <div class="rel index-all"> <aside id="top-bankuai-box" class="bg-
2018-12-05 11:21:04
4936
原创 html 视频播放,视频封面,视频加载
1、先上图 2、 上代码<div class="base-wrap word-break" style="padding:0 0 50px;"> <!--顶部--> <!--精彩交友话题--> <!--广告--> <div class="ad-rent" &
2018-12-05 11:14:30
60653
原创 微信聊天,即时聊天,im通讯
1、先上图 2、 联系人列表 和 聊天页面3、 上代码。<template id="conversationList"> <div class="conversationList"> <!--header--> <header class="header">
2018-12-05 11:10:52
1531
原创 探探的左划右html开发
1、 定义几个div 容器2、 引入swiper.min.js <div class="base-wrap"> <div class="top"> <div class="topL"><a href="../video_live/video_live.html">小视频</
2018-12-05 11:00:57
934
转载 Linux shell 脚本中, $@ 和$# 分别是什么意思?
Linux shell 脚本中, $@ 和$# 分别是什么意思?$@:表示所有脚本参数的内容$#:表示返回所有脚本参数的个数。示例:编写如下shell脚本,保存为test.sh#!/bin/shecho "number:$#"echo "argume:$@"执行脚本:./test.sh first_arg second
2018-04-20 09:44:46
18682
转载 shell中条件判断if中的-z到-d的意思
shell中条件判断if中的-z到-d的意思版权声明:This article original articles for bloggers, Repost please indicate the source. If in doubt, please contact me. I will be appreciated. https://blog.youkuaiyun.com/longyiny
2018-04-20 09:33:42
1230
转载 阿里电话面试
1/http协议 了解吗? 头里面有什么字段2/ 线程池, java的有哪些区别3/ hbase 2级索引4/ 麒麟原理5/ 留存计算6/你擅长的技术7/
2017-04-21 15:48:06
1339
原创 java.io.EOFException: Unexpected end of input stream
java.io.EOFException: Unexpected end of input stream文件没有正确关闭zcat 一个文件一个文件的找,找出错误文件,然后删除该文件
2017-04-06 11:15:34
6452
1
转载 (转)Spark排错与优化
http://blog.youkuaiyun.com/lsshlsw/article/details/49155087目录(?)[+]一. 运维1. Master挂掉,standby重启也失效Master默认使用512M内存,当集群中运行的任务特别多时,就会挂掉,原因是master会读取每个task的event log日志去生成Spark ui,内存不足
2017-04-05 19:24:52
1207
原创 kafka-topics.sh --describe 说端口被占用了。
sh kafka-topics.sh --describe --zookeeper datanode02.yixia.com:2181 datanode03.yixia.com:2181 datanode01.yixia.com:2181 namenode01.yixia.com:2181 namenode02.yixia.com:2181 --topic testErro
2017-04-01 09:56:51
5962
2
原创 kafka add partitions 之后,新分区没有数据进入
1/增加brokers2/增加partitions发现新的分区内部没有数据
2017-04-01 09:49:21
3316
2
原创 Lease timeout of 0 seconds expired. 租约过期
17/04/01 09:15:07 ERROR LiveListenerBus: Listener EventLoggingListener threw an exceptionjava.io.IOException: Lease timeout of 0 seconds expired.使用spark streaming 访问kafka 拿到数据插入hbase中,并且有check
2017-04-01 09:24:29
2352
转载 kaka-manager和kafka-offset-monitor的安装和使用
http://blog.youkuaiyun.com/hwz2311245/article/details/50983121版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]打包好的资源 Kafka-manager-1.3.07 - 卷1: http://download.youkuaiyun.com/detail/hwz2311245
2017-03-15 17:22:09
757
转载 Kafka【第一篇】Kafka集群搭建
http://www.cnblogs.com/luotianshuai/p/5206662.htmlKafka初识1、Kafka使用背景在我们大量使用分布式数据库、分布式计算集群的时候,是否会遇到这样的一些问题:我们想分析下用户行为(pageviews),以便我们设计出更好的广告位我想对用户的搜索关键词进行统计,分析出当前的流行趋势有些数据,存储数据库浪
2017-03-15 10:39:32
419
转载 Linux修改主机名永久生效
http://blog.youkuaiyun.com/ye1142262478/article/details/50628643Linux修改主机名Linux修改主机名,永久生效。linux查看主机名:查看主机命令:[root@linux_epm2 ~]# hostnamelocalhost.localdomainlocalhost.loca
2017-03-15 10:38:50
676
转载 kafka-python-client-example
http://www.biglittleant.cn/2016/12/28/kafka-python/kafka-python-client-example安装kafka-pythonpip安装1pip install kafka-python源码安装12345678910### pipgit
2017-03-09 18:27:33
3242
转载 JAVA并发编程——守护线程(Daemon Thread)
在Java中有两类线程:用户线程 (User Thread)、守护线程 (Daemon Thread)。所谓守护 线程,是指在程序运行的时候在后台提供一种通用服务的线程,比如垃圾回收线程就是一个很称职的守护者,并且这种线程并不属于程序中不可或缺的部分。因 此,当所有的非守护线程结束时,程序也就终止了,同时会杀死进程中的所有守护线程。反过来说,只要任何非守护线程还在运行,程序就不会终止。用户
2017-03-07 09:45:28
484
转载 关于addShutdownHook()
执行以下代码:Runtime.getRuntime().addShutdownHook(new Thread() { public void run() { System.out.println("shutting down"); } }); System.out.println("1"); System.out.pri
2017-03-06 15:30:25
776
转载 flatMap Map
mapmap对列表中的每个元素应用一个函数,返回应用后的元素所组成的列表。scala> numbers.map((i: Int) => i * 2)res0: List[Int] = List(2, 4, 6, 8)或传入一个部分应用函数scala> def timesTwo(i: Int): Int = i * 2timesTwo: (i: Int)Intsca
2017-03-06 10:27:39
6550
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人