- 博客(305)
- 资源 (8)
- 收藏
- 关注
原创 spring cloud LoadBalancer的工作原理
带着问题来分析:问题一: 如何读取到@LoadBalancerClients注解配置并如何利用@LoadBalancerClient注解完成服务隔离?问题二: RestTemplate是通过拦截器完成功能的,如何加入拦截器的,如何获取到服务列表且如何实现将服务名转为ip:port的?
2023-04-06 10:53:26
1721
1
原创 解决Flume数据采集中出现的几个问题
22/06/23 12:08:58 ERROR hdfs.HDFSEventSink: process failed sinkjava.lang.NullPointerException: Expected timestamp in the Flume event headers, but it was null
2022-06-23 12:50:23
1757
原创 pip 更新时的错误
C:\Users\zy>pip install pip -ULooking in indexes: http://mirrors.aliyun.com/pypi/simple/Collecting pip Downloading http://mirrors.aliyun.com/pypi/packages/4d/16/0a14ca596f30316efd412a60bdfac02a7259bf8673d4d917dc60b9a21812/pip-22.0.4-py3-none-any.wh..
2022-03-21 12:30:02
919
1
转载 uni-app 预编译器错误:代码使用了scss/sass语言,但未安装相应的编译器插件,请前往插件市场安装该插件
参考:uni-app 预编译器错误:代码使用了scss/sass语言,但未安装相应的编译器插件,请前往插件市场安装该插件_zhouqiping的博客-优快云博客
2021-11-29 11:09:45
465
原创 xmind文件大,导致运行缓慢且无法保存
我的一个xmind文件体积十分大.如下:在打开此文件后,对它编辑时,出现以下问题:1.编辑十分的慢,表现在选定一个编辑框后,要输入文字十分困难,卡顿.2.保存文件慢,而且会出现保存时内存溢出的问题.用任务管理器查看此xmind进程占用了接近1G的内存. 考虑是软件内存配置的问题。到xmind的安装目录中查看配置文件 ,发现xmind是用java语言开发的软件,它的配置文件 xmind.ini中有关于虚拟机内存配置的选项.xmind.ini它的配置项中原配...
2021-10-12 10:46:13
11844
6
原创 设计模式题集
1. 若系统中的某子模块需要为其他模块提供访问不同数据库系统的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库,再打开数据库,最后对数据进行查询。针对上述需求,可以采用____(49)____设计模式抽象出相同的数据库访问过程,该设计模式____(50)____。49. A.外观B.装饰C.桥接D.享元50. A) 可以动态,透明地为单个对象添加职责 B)为子系统定义了一个高层接口,这个...
2021-09-17 20:35:07
649
原创 zookeeper客户端工具
当我们像看zookeeper上的节点信息时,输命令很麻烦,也不直观,介绍一个可视化的客户端,贼方便下载地址:https://issues.apache.org/jira/secure/attachment/12436620/ZooInspector.zip解压后进入build目录执行命令java -jar zookeeper-dev-ZooInspector.jar输入连接地址,即可看到zookeeper的节点信息...
2021-09-16 12:10:06
1225
原创 hive客户端联接hiveserver2权限不足问题
问题如下:idea的联接配置如下:问题分析:利用 idea创建一个与hiveserver2服务器的联接后,hive服务器后台报错,错误提示 idea是使用 anonymouse用户访问的服务器,权限不够出的错误.应该是 idea的 jdbc客户端联接hiveserver2服务器时采用的是windows的匿名用户登录,所以查询没有问题,但是只要有修改操作,则会出现权限不足错误.检查如下:解决办法:通过httpfs协议访问rest接口,以root用户包装...
2021-09-16 11:06:31
850
原创 Hive中利用insert从ods加载数据到dwd异常
2021-09-12T08:23:20,736 ERROR [f53ee21b-bce6-4ddb-a0bd-9db513661e03 main] exec.Task: Failed with exception java.io.IOException: rename for src path: hdfs://yc/warehouse/gmall/dwd/dwd_start_log/dt=2021-09-10/.hive-staging_hive_2021-09-12_08-23-09_369_34240.
2021-09-11 08:37:37
542
原创 面试题十_设计模式相关
77.设计模式参考文章:https://blog.youkuaiyun.com/weixin_43122090/article/details/10546222678.设计模式的六大原则参考文章http://www.uml.org.cn/sjms/201211023.asp79. JDK中使用的设计模式参考文章: https://blog.youkuaiyun.com/gtuu0123/article/details/6114197 https://www.cnblo...
2021-08-20 10:34:46
676
原创 面试题(九)
105.OSI七层模型以及TCP/IP四层模型参考文章:OSI七层协议模型和TCP/IP四层模型比较 - SprintfWater的专栏 - 博客频道 - youkuaiyun.comOSI七层模型及TCP/IP四层模型 - 五尘 - 博客园TCP/IP四层模型和OSI七层模型的概念 - superjunjin的专栏 - 博客频道 - youkuaiyun.com106.HTTP和HTTPS区别参考:HTTP和HTTPS详解 - 小M的专栏 - 博客频道 - youkuaiyun.comHTTP与HTTPS的区别-马海祥博客1
2021-08-13 08:17:45
441
原创 面试题(八)
22.Java中如何实现代理机制(JDK、CGLIB)JDK动态代理:代理类和目标类实现了共同的接口,用到InvocationHandler接口。CGLIB动态代理:代理类是目标类的子类,用到MethodInterceptor接口。48.Java类加载器及如何加载类(双亲委派)阅读文章:https://www.ibm.com/developerworks/cn/java/j-lo-classloader/(推荐)深入理解Java类加载器(1):Java类加载原理解析 - Jack Zhou的专
2021-08-12 08:14:19
455
原创 面试题(七)
35.什么叫守护线程,用什么方法实现守护线程 守护线程拥有自动结束自己生命周期的特性,而非守护线程不具备这个特点。 .setDaemon(true)36.Java线程池技术及原理线程池(ThreadPool)是一种基于池化思想管理线程的工具,经常出现在多线程服务器中,线程池维护多个线程,等待监督管理者分配可并发执行的任务。这种做法,一方面避免了处理任务时创建销毁线程开销的代价,另一方面避免了线程数量膨胀导致的过分调度问题,保证了对内核的充分利用。37.java并发包c...
2021-08-10 13:51:02
333
1
原创 hadoop fsck命令及namenode元数据修复.
报错如下:FATAL org.apache.hadoop.hdfs.server.namenode.FSEditLog: Error: recoverUnfinalizedSegments failed for required journal (JournalAndStream(mgr=QJM to [192.168.76.201:8485, 192.168.76.202:8485, 192.168.76.203:8485], stream=null))java.lang.AssertionEr.
2021-08-10 08:07:43
1630
原创 面试题(六)
23.多线程的实现方式1)继承Thread类2) 实现Runnable接口3) 实现 Callable 接口。 相较于实现 Runnable 接口的方式,方法可以有返回值,并且可以抛出异常,执行 Callable 方式,需要 FutureTask 实现类的支持,用于接收运算结果。 FutureTask 是 Future 接口的实现类24.线程的状态转换25. 如何停止一个线程线程自然终止:自然执行完或抛出未处理异常 使用stop方法强行终止线程,但线...
2021-08-09 08:56:17
564
原创 面试题(五)
72.Tomcat,Apache,JBoss的区别Apache:HTTP服务器(WEB服务器),类似IIS,可以用于建立虚拟站点,编译处理静态页面,可以支持SSL技术,支持多个虚拟主机等功能。Tomcat:Servlet容器,用于解析jsp,Servlet的Servlet容器,是高效,轻量级的容器。缺点是不支持EJB,只能用于java应用。Jboss:应用服务器,运行EJB的J2EE应用服务器,遵循J2EE规范,能够提供更多平台的支持和更多集成功能,如数据库连接,JCA等,其对Servlet的支持是通过
2021-08-08 09:51:29
415
原创 面试题(四)
Statement和PreparedStatement之间的区别关系:PreparedStatement继承自Statement,都是接口 区别:PreparedStatement可以使用占位符,是预编译的,批处理比Statement效率高详解:1、PreparedStatement:表示预编译的 SQL 语句的对象。 接口:public interface PreparedStatement extends Statement之间的继承关系 SQL 语句被预编译并存储在 Prepa...
2021-08-08 09:42:31
339
原创 面试题(三)
39.Java中的NIO,BIO,AIO分别是什么BIO:同步并阻塞,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,当然可以通过线程池机制改善。BIO方式适用于连接数目比较小且固定的架构,这种方式对服务器资源要求比较高,并发局限于应用中,JDK1.4以前的唯一选择,但程序直观简单易理解。NIO:同步非阻塞,服务器实现模式为一个请求一个线程,即客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有I/
2021-08-05 09:05:55
420
原创 JVM中常见的线程种类
线程 所属 说明 Attach Listener JVM Attach Listener线程是负责接收到外部的命令,而对该命令进行执行的并且吧结果返回给发送者。通常我们会用一些命令去要求jvm给我们一些反馈信息,如:java -version、jmap、jstack等等。如果该线程在jvm启动的时候没有初始化,那么,则会在用户第一次执行jvm命令时,得到启动。 Signal Dispatcher JVM 前面我们提到第一...
2021-08-01 10:10:38
753
原创 面试题集一
1.面向对象和面向过程的区别面向过程优点:性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源;比如单片机、嵌入式开发、Linux/Unix等一般采用面向过程开发,性能是最重要的因素。缺点:没有面向对象易维护、易复用、易扩展面向对象优点:易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统更加灵活、更加易于维护缺点:性能比面向过程低2.Java的四个基本特性(抽象、封装、继承,多态)抽象:就是把现实生活中的某一类东西提取出来,用程
2021-08-01 08:52:50
799
原创 IDEA项目打包jar流程
1. 创建一个maven项目,书写代码.import java.io.FileOutputStream;import java.io.IOException;public class Test { public void run() throws IOException { // 根据需求编写具体代码 FileOutputStream fos = new FileOutputStream("/usr/local/azkaban/tasks/outp...
2021-07-31 19:14:38
309
原创 几个复杂的mysql查询
--数据来源:附件table1,导入数据库select * from Sheet1;--1)查询各个年龄段的人数,结果输出年龄段及对应的人数,按年龄段升序排序select 年龄段,count(id) as total from Sheet1group by 年龄段order by 年龄段 asc;--2)查询每个工龄区间的人数,结果输出工龄区间及对应的人数,按人数降序排序 --提示: 分箱 case .../*三年以下(工龄<3)--三年~七年(3<=工龄<..
2021-07-23 11:00:45
2415
2
原创 hadoop的stop-all无法关闭集群原因及解决方案
在虚拟机中长时间运行hadoop之后,如果运行stop-all.sh,会发现:[root@node1 sbin]# stop-all.shThis script is Deprecated. Instead use stop-dfs.sh and stop-yarn.shStopping namenodes on [node1 node2]node1: no namenode to stopnode2: no namenode to stopnode2: no datanode to s..
2021-07-21 20:32:19
5137
1
转载 zookeeper使用Jute进行序列化及反序列化
Zookeeper在网络传输时使用的是Jute进行序列化和反序列化,官方也提出过要使用类似于Apache Avro、Thrift或是Google的protobuf这样的组件来替换Jute,但考虑到新老版本组件的兼容性,官方对替换序列化组件工作的推进持保守和观望态度。`import lombok.Data;import org.apache.jute.*;import org.apache.zookeeper.server.ByteBufferInputStream;import java.io.By
2021-07-06 19:47:32
348
原创 虚拟机目录与虚拟主机
从一个题目开始讲起。在windows的IIS中发布站点后,用户可以通过http://www.a.com和http://www.b.com访问在同一台服务器上 ( 70 ) 不同的两个web站点。 A.IP地址 B.端口号 C.协议 D.虚拟目录答案: A解析:在IIS下配置多站点时,可以采用虚拟主机和虚拟目录两种方式。 采
2021-06-02 16:00:18
813
原创 在junit 测试时,加入@Transactional注解
做测试的时候在类上加 @Transactional纾解是为了防止对数据进行污染,使用这个注解完成功能测试又不影响原有数据,对于测试库和开发库没有分开的情况下是一个很不错的选择.如以下测试代码:@RunWith(SpringRunner.class)@SpringBootTestpublic class ProductCategoryRepositoryTest { @Autowired private ProductCategoryRepository pcr; @Test @Transac
2021-04-16 16:49:58
2740
1
原创 活动图求最少时间和松弛时间
一. PERT(Program/Project Evaluation and Review Technique) 即计划评审技术,PERT是利用网络分析制定计划以及对计划予以评价的技术。 构造PERT图,需要明确四个概念:事件、活动、松弛时间和关键路线。 - 事件(Events)表示主要活动结束的那一点; - 活动(Activities)表示从一个事件到另一个事件之间的过程; - 松弛时间(slack time)不影响完工前提下可能被推迟完成的最大时间; - 关键路线(...
2021-04-07 11:16:26
2193
原创 并发编程(三) - 重排序,happens-before原则,顺序一致性
重排序是指编译器和处理器为了优化程序性能而对指令序列进行重新排序的一种手段。上一篇文章中已经介绍了从Java源代码到最终实际执行的指令序列,会分别经历下面3种重排序:1属于编译器重排序,2和3属于处理器重排序。 这些重排序可能会导致多线程程序出现内存可见性问题。在单线程程序中,对存在控制依赖的操作重排序,不会改变执行结果(这也是as-if-serial语义允许对存在控制依赖的操作做重排序的原因);但在多线程程序中,对存在控制依赖的操作重排序,可能会改变程序的执行结果。1.数据依...
2021-02-08 18:30:13
883
原创 mybatis3源码研究(一) 下载源码,导入源码到IDEA
1. 前期系统环境准备:JDK1.8 ( mybatis-spring用到了jdk8的新特性Lambda,Streams API等) Maven Git IDEA2. 利用Git clone以下源码到本地:mybatis3源码: git clone https://github.com/mybatis/mybatis-3 mybatis-spring源码: git clone https://github.com/mybatis/spring parent( 以上...
2021-01-29 11:28:32
377
原创 并发编程(二) - JMM(java内存模型)
java线程间的通信对程序员完全透明,内存可见性问题很容易困扰Java程序员.1. 并发编程的关键问题在并发编程中,需要处理两个关键问题: 线程之间如何通信及线程之间如何同步? 线程之间通信机制有两种: 共享内存、消息传递。1.1.通信是指线程之间以何种机制来交换信息1.1.1共享内存的通信机制在共享内存的并发模型里, 线程之间共享程序的公共状态,通过写-读内存中的公共状态进行隐式通信。1.1.2 消息传递的通信机制在消息传递的并发模型里,线程之间没用公共状态,线程之间...
2021-01-17 13:06:57
543
1
原创 oracle索引的测试
在测试oracle索引性能时大意了,没有仔细分析数据特点,将情况特此记录下来。需求: 对一张100w记录的表的 stuname列进行查询,测试在建立索引与不建立索引的区别. 以下是开始用的创建代码及执行效果.1. 随机数据生成代码分析--为测试索引而准备的随机数据生成代码,先分析一下select rownum as id, 'smith'||trunc(dbms_random.value(0, 100)) as stu_name, ...
2021-01-15 10:18:48
2399
3
原创 并发编程问题
并发编程的目的是为了让程序运行得更快,但并不是启动更多的线程就能让程序最大限度并发执行。因为这里涉及到上下文切换问题,死锁问题,及受限于硬件和软件的资源限制问题。1. 上下文切换 即使是单核处理器也支持多线程执行代码,CPU通过给每个线程分配CPU时间片来实现这个机制。时间片是CPU分配给各个线程的时间,因为时间片非常短,所以CPU通过不停地切换线程执行,让我们感觉多个线程是同时执行的,时间片一般是几十毫秒(ms). CPU通过时间片分配算法来循环执行任务...
2021-01-11 16:37:32
495
原创 JVM(四) Java虚拟机中的方法区或永久区
和java堆一样,方法区是一块所有线程共享的内存区域。它用于保存系统的类信息(字段,方法,常量池等). 方法区的大小决定系统可保存多少个类.
2021-01-07 11:51:55
489
原创 JVM(三) Java虚拟机堆
1、堆结构分代的意义 Java虚拟机根据对象存活的周期不同,把堆内存划分为几块,一般分为新生代、老年代和永久代(对HotSpot虚拟机而言),这就是JVM的内存分代策略。 堆内存是虚拟机管理的内存中最大的一块,也是垃圾回收最频繁的一块区域,程序中所有的对象实例都存放在堆内存中。给堆内存分代是为了提高对象内存分配和垃圾回收的效率。试想一下,如果堆内存没有区域划分,所有的新创建的对象和生命周期很长的对象放在一起,随着程序的执行,堆内存需要频繁进行垃圾收集,而每次回收都要遍历所有的对象,遍历这些对象所花
2021-01-05 14:12:15
229
根据人名预测性别_基于伯努力模型的朴素贝叶斯算法实现.zip
2019-12-18
根据人名预测性别_基于多项式的朴素贝叶斯算法实现
2019-12-18
qunar model.zip
2019-12-18
JspAndword2.0.zip
2019-12-18
myjunit.rar
2019-12-18
websocket案例.zip
2019-12-18
android中基于socket方式的文件上传
2015-06-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人