09 2021 档案

摘要:Spring Cloud Sleuth+ZipKin+ELK服务链路追踪 序言 sleuth是spring cloud的分布式跟踪工具,主要记录链路调用数据,本身只支持内存存储,在业务量大的场景下,为拉提升系统性能也可通过http传输数据,也可换做rabbit或者kafka来传输数据。 zipkin 阅读全文
posted @ 2021-09-06 23:04 嗨,小yu 阅读(89) 评论(0) 推荐(0)
摘要:Nginx配置详解 序言 Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的。从2004年发布至今,凭借开源的力量,已经接近成熟与完善。 Nginx功能丰富,可作为HTTP服务器,也可作为反向代理服务器,邮件服务器。支持FastCGI、SSL、Virtual H 阅读全文
posted @ 2021-09-06 23:03 嗨,小yu 阅读(36) 评论(0) 推荐(0)
摘要:AWK 简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。 awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指 阅读全文
posted @ 2021-09-06 15:33 嗨,小yu 阅读(8) 评论(0) 推荐(0)
摘要:引言 不论在工作中,亦或是求职面试,Spring Boot已经成为我们必知必会的技能项。除了某些老旧的政府项目或金融项目持有观望态度外,如今的各行各业都在飞速的拥抱这个已经不是很新的Spring启动框架。 当然,作为Spring Boot的精髓,自动配置原理的工作过程往往只有在“面试”的时候才能用得 阅读全文
posted @ 2021-09-06 12:12 嗨,小yu 阅读(42) 评论(0) 推荐(0)
摘要:一、概述 谈到并发,不得不谈ReentrantLock;而谈到ReentrantLock,不得不谈AbstractQueuedSynchronizer(AQS)! 类如其名,抽象的队列式的同步器,AQS定义了一套多线程访问共享资源的同步器框架,许多同步类实现都依赖于它,如常用的ReentrantLo 阅读全文
posted @ 2021-09-06 11:48 嗨,小yu 阅读(149) 评论(0) 推荐(0)
摘要:本文包含链表的以下内容: 1、单链表的创建和遍历 2、求单链表中节点的个数 3、查找单链表中的倒数第k个结点(剑指offer,题15) 4、查找单链表中的中间结点 5、合并两个有序的单链表,合并之后的链表依然有序【出现频率高】(剑指offer,题17) 6、单链表的反转【出现频率最高】(剑指offe 阅读全文
posted @ 2021-09-06 11:45 嗨,小yu 阅读(50) 评论(0) 推荐(0)
摘要:##堆(heap)和栈(stack)的区别## 1、存储 栈:变量、对象的引用 堆:实例对象 2、速度 栈:存取速度快 堆:存取速度慢 3、线程访问 栈:每个线程都有一个栈区 堆:所有线程共享一个堆区 4、垃圾回收 栈:比较频繁 堆:不频繁 阅读全文
posted @ 2021-09-06 11:42 嗨,小yu 阅读(53) 评论(0) 推荐(0)
摘要:1. ACID 1、原子性 Atomicity 2、一致性 Consistency 3、隔离性 Isolation 4、持久性 Durability 1.1 原子性[A] - 保证事务中的所有操作全部执行或者全部不执行. 1.2 一致性[C] - 保证事务操作之前和之后都是一致的. 1.3 隔离性[ 阅读全文
posted @ 2021-09-06 11:32 嗨,小yu 阅读(42) 评论(0) 推荐(0)
摘要:任务调度任务调度,简单来说就是定时任务,是指基于给定时间点,给定时间间隔或者给定执行次数自动执行任务。 Java常见的任务调度方式基于JDK方式:Timer和ScheduledExecutorServiceTime (java.util.Timer) JDK 自带,简单单一,复杂场景不适用。 pub 阅读全文
posted @ 2021-09-06 11:17 嗨,小yu 阅读(372) 评论(0) 推荐(0)
摘要:谈谈 TCP 的 TIME_WAIT 由来 最近有同事在用 ab 进行服务压测,到 QPS 瓶颈后怀疑是起压机的问题,来跟我借测试机,于是我就趁机分析了一波起压机可能成为压测瓶颈的可能,除了网络 I/O、机器性能外,还考虑到了网络协议的问题。 当然本文的主角并不是压测,后来分析证明同事果然还是想多了 阅读全文
posted @ 2021-09-06 11:06 嗨,小yu 阅读(39) 评论(0) 推荐(0)
摘要:超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付信息。 为了解决HT 阅读全文
posted @ 2021-09-06 11:04 嗨,小yu 阅读(27) 评论(0) 推荐(0)
摘要:对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。很多人在初学的时候会以为它们可以随意互换使用,但是实际则不然。今天我们就一起来学习一下Java中的接口和抽象类。下面是本文的目录大纲: 一.抽象类 阅读全文
posted @ 2021-09-06 11:00 嗨,小yu 阅读(2) 评论(0) 推荐(0)
摘要:消息发送方式 想清楚Kafka发送的消息是否丢失,需要先了解Kafka消息的发送方式。 Kafka消息发送分同步(sync)、异步(async)两种方式 默认是使用同步方式,可通过producer.type属性进行配置; Kafka保证消息被安全生产,有三个选项分别是0,1,-1 通过request 阅读全文
posted @ 2021-09-04 17:44 嗨,小yu 阅读(617) 评论(0) 推荐(0)
摘要:HTTP与HTTPS的区别 算法 链表 B+ TREE和BTREE区别 分布式、分布式事务 分布式锁 Spring事务的传播属性和隔离级别 Spring Bean的生命周期 SpringMvc的工作原理 SpringMvc的注解 Springboot注解和starter Springboot自动装配 阅读全文
posted @ 2021-09-04 17:02 嗨,小yu 阅读(128) 评论(0) 推荐(0)
摘要:##冒泡排序## 特点:效率低,实现简单 思想:每一趟将待排序序列中最大元素移到最后,剩下的为新的待排序序列,重复上述步骤直到排完所有元素。这只是冒泡排序的一种,当然也可以从后往前排。 public void bubbleSort(int array[]) { int t = 0; for (int 阅读全文
posted @ 2021-09-04 16:58 嗨,小yu 阅读(46) 评论(0) 推荐(0)
摘要:TCP和UDP的区别 1、TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接 2、TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠 交付 3、TCP面向字节流,实际上是TCP把数据 阅读全文
posted @ 2021-09-04 16:51 嗨,小yu 阅读(82) 评论(0) 推荐(0)
摘要:nas地址解挂:解挂: umount /yxdir 强制解挂: umount -f /yxdir 解挂时报错误:umount.nfs: /yxdir: device is busy 【fuser -l /yxdir】执行后获得进程号:9807c 【ps -aux|grep 9807c】执行后:roo 阅读全文
posted @ 2021-09-04 16:50 嗨,小yu 阅读(308) 评论(0) 推荐(0)
摘要:sleep()和wait()的区别? 这两个方法来自不同的类分别是Thread和Object sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。wait,notify和notifyAll只能在同步控制方法或者同步控制块里面使用,而sleep可以在任何地方使用 阅读全文
posted @ 2021-09-04 16:42 嗨,小yu 阅读(11) 评论(0) 推荐(0)
摘要:#{} 为参数占位符 ?,即sql 预编译(占位符) 变量替换是在DBMS 中 变量替换后,#{} 对应的变量自动加上单引号 '' 能防止sql 注入 ${} 为字符串替换, 即 sql 拼接 (拼接符) 变量替换是在 DBMS 外 变量替换后,${} 对应的变量不会加上单引号 '' 不能防止sql 阅读全文
posted @ 2021-09-04 16:42 嗨,小yu 阅读(130) 评论(0) 推荐(0)
摘要:Java中创建(实例化)对象的五种方式 1、用new语句创建对象,这是最常见的创建对象的方法。 2、通过工厂方法返回对象,如:String str = String.valueOf(23); 3、运用反射手段,调用java.lang.Class或者java.lang.reflect.Construc 阅读全文
posted @ 2021-09-04 16:41 嗨,小yu 阅读(1295) 评论(0) 推荐(0)
摘要:Java 中一般认为有23种设计模式,当然暂时不需要所有的都会,但是其中常见的几种设计模式应该去掌握。 总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享 阅读全文
posted @ 2021-09-04 16:40 嗨,小yu 阅读(2) 评论(0) 推荐(0)
摘要:extends与implements的区别: 1、extends 是继承父类,只要那个类不是声明为final或者那个类定义为abstract的就能继承,JAVA中不支持多重继承,但是可以用接口来实现,这样就用到了implements,继承只能继承一个类,但implements可以实现多个接口,用逗号 阅读全文
posted @ 2021-09-04 16:28 嗨,小yu 阅读(996) 评论(0) 推荐(0)
摘要:1、@Controller @Controller 用于标记在一个类上,使用它标记的类就是一个SpringMVC Controller 对象。分发处理器将会扫描使用了该注解的类的方法,并检测该方法是否使用了@RequestMapping 注解。@Controller 只是定义了一个控制器类,而使用@ 阅读全文
posted @ 2021-09-04 16:27 嗨,小yu 阅读(8) 评论(0) 推荐(0)
摘要:类是对象的抽象,而对象是类的具体实例。 类是抽象的,不占用内存,而对象是具体的,占用存储空间。 类是用于创建对象的蓝图,它是一个定义包括在特定类型的对象中的方法和变量的软件模板。 类(class)和对象(object)是两种以计算机为载体的计算机语言的合称。对象是对客观事物的抽象,类是对对象的抽象。 阅读全文
posted @ 2021-09-04 16:24 嗨,小yu 阅读(795) 评论(0) 推荐(0)
摘要:含义:可以获取正在运行的Java对象 Java反射的功能 1)可以判断运行时对象所属的类 2)可以判断运行时对象所具有的成员变量和方法 3)通过反射甚至可以调用到private的方法 4)生成动态代理 1、实现Java反射的类 1)Class:它表示正在运行的Java应用程序中的类和接口 2)Fie 阅读全文
posted @ 2021-09-04 16:23 嗨,小yu 阅读(41) 评论(0) 推荐(0)
摘要:重量级锁,Javs SE 1.6对synchronized进行的各种优化后,synchronized并不会显得那么重了。 作用:原子性:确认线程互斥的访问同步代码。 可见性: 有序性: 在Hotspot JVM中,锁叫做对象监视器:ObjectMonitor; 三种用法: 作用在实例方法中,监视器锁 阅读全文
posted @ 2021-09-04 16:20 嗨,小yu 阅读(37) 评论(0) 推荐(0)
摘要:B+和B+树有什么区别 聚簇索引和非聚簇索引:索引和数据存储在一起 索引下推 回表 mysql的执行过程:连接、分析、优化、执行 innodb和myisam的区别:事务、行锁、外健、count() show profile:性能监控 show processlist:监控数据库连接 SQL优化: 最 阅读全文
posted @ 2021-09-04 16:15 嗨,小yu 阅读(46) 评论(0) 推荐(0)
摘要:HashMap和LinkedHashMap的区别 java为数据结构中的映射定义了一个接口java.util.Map;它有四个实现类,分别是HashMap Hashtable LinkedHashMap 和TreeMap. Map主要用于存储健值对,根据键得到值,因此不允许键重复(重复了覆盖了),但 阅读全文
posted @ 2021-09-04 15:59 嗨,小yu 阅读(592) 评论(0) 推荐(0)
摘要:什么是java虚拟机 可以执行 Java 字节码的虚拟机进程。java源文件被编译成能被java虚拟机执行的字节码文件。 java如何跨平台 jvm会根据不用的操作系统和硬件设备,提供不同jvm。对于不同的操作系统jvm对应的质指令是不同的class文件。 Java 内存结构 方法区和堆是对所有线程 阅读全文
posted @ 2021-09-04 15:55 嗨,小yu 阅读(8) 评论(0) 推荐(0)
摘要:一、并发控制 当程序中可能出现并发的情况时,就需要保证在并发情况下数据的准确性,以此确保当前用户和其他用户一起操作时,所得到的结果和他单独操作时的结果是一样的。这就叫做并发控制。并发控制的目的是保证一个用户的工作不会对另一个用户的工作产生不合理的影响。 没有做好并发控制,就可能导致脏读、幻读和不可重 阅读全文
posted @ 2021-09-04 15:52 嗨,小yu 阅读(9) 评论(0) 推荐(0)
摘要:在多线程中线程的执行顺序是依靠哪个线程先获得到CUP的执行权谁就先执行,虽然说可以通过线程的优先权进行设置,但是他只是获取CUP执行权的概率高点,但是也不一定必须先执行。在这种情况下如何保证线程按照一定的顺序进行执行,今天就来一个大总结,分别介绍一下几种方式。 通过Object的wait和notif 阅读全文
posted @ 2021-09-04 12:06 嗨,小yu 阅读(47) 评论(0) 推荐(0)