自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(221)
  • 收藏
  • 关注

原创 【大牛疯狂教学】深度解密:Java与线程的关系

线程是CPU调度的基本单位,Thread类与大部分的Java API有显著的差别,它的所有关键方法都是声明为Native的,意味着这个方法没有使用或无法使用平台无关的手段来实现。内核线程(Kernel-Lever Thread,KLT)直接由操作系统内核(Kermel,下称内核)支持的线程,由内核来完成线程切换,内核通过操纵调度器(Sheduler) 对线程进行调度,并负责将线程的任务映射到各个处理器上。每个内核线程可以视为内核的一个分身,这样OS就有能力同时处理多件事情,支持多线程的内核就叫做多线程

2021-08-05 13:13:04 57

原创 【吐血整理】Java项目源码分享

java servlet+jsp+bean开发开源宅商城系统,未用任何java开源框架实例(七),电商书店,源码下载:jsp+servlet仿当当网电商图书系统实例(八),源码下载:jsp+java bean+servlet开发的mvc简易鞋城在线商城系统各种管理系统:=======实例(一):学生信息管理系统,源码下载:GitHub - yirenyin/J2EE_practice: J2EE 学生信息管理系统初级版实例(二):图书馆管理系统,源码下载:1、图书馆管理系统JSP+Ser

2021-08-05 13:11:56 21846 5

原创 【一篇文章搞懂】单机下如何让Java程序支持百万长连接,你知道吗

第一步,修改/etc/security/limits.conf文件,在文件中添加如下行:  * soft nofile 1000000  * hard nofile 1000000'*'号表示修改所有用户的限制;soft或hard指定要修改软限制还是硬限制;1000000则指定了想要修改的新的限制值,即最大打开文件数(请注意软限制值要小于或等于硬限制)。修改完后保存文件。第二步,修改/etc/pam.d/login文件,在文件中添加如下行:  session required /lib/se

2021-08-05 13:10:54 155

原创 “金三银四”春招指南!牺牲速度来节省内存,Redis是觉得自己太快了吗

ziplist 虽然不维护前后节点的指针,但是它却维护了上一个节点的长度和当前节点的长度,然后每次通过长度来计算出前后节点的位置。既然涉及到了计算,那么相对于直接存储指针的方式肯定有性能上的损耗,这就是一种典型的用时间来换取空间的做法。因为每次读取前后节点都需要经过计算才能得到前后节点的位置,所以会消耗更多的时间,而在 Redis 中,一个指针是占了 8 个字节,但是大部分情况下,如果直接存储长度是达不到 8 个字节的,所以采用存储长度的设计方式在大部分场景下是可以节省内存空间的。ziplist 的存储结

2021-08-05 13:09:59 36

原创 “金三银四”春招指南!JSP“三大请求传参方式

String name = request.getParameter(“name”);String tel = request.getParameter("tel"); %> <font facr="楷体" size=5> 获取到的信息是:<br> 姓名:<%=name %> 电话:<%=tel %> </font>**接收界面效果:** ![](https://img-blog.csdnimg.c

2021-08-05 13:08:59 48

原创 Tencent后台开发Java岗二面:Java中高级核心知识全面解析

这里很简单,内部仅维护了一个 `byte` 类型的 `data` 数组,实际上 `byte` 仍然占有一个字节之多,可以优化成 `bit`来代替,这里也仅仅是用于方便模拟。另外我也创建了三个不同的`hash`函数,其实也就是借鉴`HashMap`哈希抖动的办法,分别使用自身的 `hash `和右移不同位数相异或的结果。并且提供了基础的 `add` 和 `contains` 方法。下面我们来简单测试一下这个布隆过滤器的效果如何:```javapublic static void main(String

2021-08-05 13:08:02 83 1

原创 Spring事务扩展机制,独家!阿里云大师深入拆解Java虚拟机(1)

Java的基本类型Java虚拟机是如何加载Java类的JVM是如何执行方法调用的?(上)JVM是如何执行方法调用的?(下)JVM是如何处理异常的?JVM是如何实现反射的?JVM是怎么实现invokedynamic的?(上)JVM是怎么实现invokedynamic的?(下)Java对象的内存布局垃圾回收(上)垃圾回收(下)Java内存模型Java虚拟机是怎么实现synchronized的?Java语法糖与Java编译器16即时编译(上)即时编译(下

2021-08-05 13:06:58 43

原创 【好文推荐】Java高级:mysql创建用户密码(1)

MySQL常见的三种存储引擎(InnoDB、MyISAM、MEMORY)的区别?MySQL的MyISAM与InnoDB两种存储引擎在,事务、锁级别,各自的适用场景?查询语句不同元素(where、jion、limit、group by、having等等)执行先后顺序?什么是临时表,临时表什么时候删除?MySQL B+Tree索引和Hash索引的区别?sql查询语句确定创建哪种类型的索引?如何优化查询?聚集索引和非聚集索引区别?有哪些锁(乐观锁悲观锁),select..

2021-08-04 20:55:50 53

原创 【大牛系列教学】jQuery框架实现元素显示及隐藏动画【附案例分析

在jQuery框架中对元素对象进行显示和隐藏有三种方式,分别是**“默认方式显示和隐藏”、“滑动方式显示和隐藏”、“淡入淡出显示和隐藏”。**接下来我们就分别对这三种方法进行介绍。一、默认方式显示和隐藏===============在默认方法下显示元素的方法是show([speed,[easing],[fn]])其中的参数含义为:**speed:**动画的速度。三个预定义的值(“slow”,“normal”, “fast”)或表示动画时长的毫秒数值(如:1000)**easing:

2021-08-04 20:54:27 108

原创 【大牛疯狂教学】Java中使用Spring-security(二)

<security:authentication-manager> <security:authentication-provider user-service-ref="loginService"> </security:authentication-provider></security:authentication-manager>在这里,您执行SQL查询以从数据库中的“users”表中获取用户名和密码。类似地,用户名的授权权限也从“

2021-08-04 20:53:31 75

原创 【吐血整理】Java中高级核心知识全面解析(3)

*/ public Boolean contains(Object value) { Boolean ret = true; for (SimpleHash f : func) { ret = ret && bits.get(f.hash(value)); } return ret; }/** * 静态内部类。用于 hash 操作! */ public static class SimpleHash { private int cap; priv.

2021-08-04 20:52:17 55

原创 【原理+实战+视频+源码】Spring学习总结:IOC基础

}Studentpackage com.kevin.spring.demo2.entity;/**学生*/public class Student extends Person{/** * 身高 */public int height;/** * 有参构造函数 * @param name * @param height */public Student(String name,int height) { this.name =

2021-08-04 20:50:54 47

原创 【一步教学,一步到位】MySQL-数据库优化,看这篇就够了

2、优化笔者将优化分为了两大类,软优化和硬优化,软优化一般是操作数据库即可,而硬优化则是操作服务器硬件及参数设置.2.1 软优化2.1.1 查询语句优化1、首先我们可以用EXPLAIN或DESCRIBE(简写:DESC)命令分析一条查询语句的执行信息.2.例:DESC SELECT * FROM `user`显示:其中会显示索引和查询数据读取数据条数等信息.2.1.2 优化子查询在MySQL中,尽量使用JOIN来代替子查询.因为子查询需要嵌套查询,嵌套查询时会建立一张临时表,临时表的

2021-08-04 20:49:55 36

原创 【一步教学,一步到位】Java中高级核心知识全面解析(12)

Thread coreThread = new Thread( () -> { final int currentValue = atomicInteger.get(); System.out.println(Thread.currentThread().getName() + " ---- – currentValue=" + currentValue); // 这段目的:模拟处理其他业务花费的时间 try { Thread...

2021-08-04 20:48:55 55

原创 五面拿下阿里飞猪offer,Javaweb视频教程百度云

回答一共五种(一)String这个其实没啥好说的,最常规的set/get操作,value可以是String也可以是数字。一般做一些复杂的计数功能的缓存。(二)list使用List的数据结构,可以做简单的消息队列的功能。另外还有一个就是,可以利用lrange命令,做基于redis的分页功能,性能极佳,用户体验好。(三)hash这里value存放的是结构化的对象,比较方便的就是操作其中的某个字段。博主在做单点登录的时候,就是用这种数据结构存储用户信息,以cookieId作为key,设置30分

2021-07-30 14:58:39 88

原创 互联网寒冬!docker安装nacos集群

一面:hashmap,怎么扩容,怎么处理数据冲突?怎么高效率的实现数据迁移?Linux的共享内存如何实现,大概说了一下。Linux 中的用户模式和内核模式是什么含意?在 Java 中 Lock 接口比 synchronized 块的优势是什么?你需要实现一个高效的缓存,它允 许多个用户读,但只允许一个用户写,以此来保持它的完整性,你会怎样去实现它?socket网络编程,说一下TCP的三次握手和四次挥手同步IO和异步IO的区别?Java GC机制?GC Roots有哪些?如和判断一个对象是否

2021-07-30 14:57:48 294 4

原创 中高级Java面试题目汇总解答:dockerswarm集群实现负载均衡

蚂蚁一面⼀⾯就做了⼀道算法题,要求两⼩时内完成,给了⻓度为N的有重复元素的数组,要求输出第10⼤的数。典型的TopK问题,快排算法搞定。算法题要注意的是合法性校验、边界条件以及异常的处理。另外,如果要写测试⽤例,⼀定要保证测试覆盖场景尽可能全。加上平时刷刷算法题,这种考核应该没问题的。蚂蚁二面⾃我介绍下呗开源项⽬贡献过代码么?(Dubbo提过⼀个打印accesslog的bug算么)⽬前在部⻔做什么,业务简单介绍下,内部有哪些系统,作⽤和交互过程说下Dubbo踩过哪些坑,分别是怎么解决的?(说了

2021-07-30 14:57:03 305

原创 中高级Java开发应该要了解!Java前端技术栈

Dubbo面试专题JVM面试专题Java并发面试专题Kafka面试专题MongDB面试专题MyBatis面试专题MySQL面试专题Netty面试专题RabbitMQ面试专题Redis面试专题Spring Cloud面试专题SpringBoot面试专题zookeeper面试专题言尽于此,完结无论是一个初级的 coder,高级的程序员,还是顶级的系统架构师,应该都有深刻的领会到设计模式的重要性。第一,设计模式能让专业人之间交流方便,如下:程序员A:这

2021-07-30 14:55:22 113

原创 中高级Java开发应该要了解!docker启动镜像时读取配置

一面介绍一下自己问项目经历, 聊"数据同步"接着聊上了 K8S 的项目有没有什么钻研得比较深得技术?(大佬:kubernetes, golang, prometheus, java)kubernetes 的架构是怎么样的?这个问题很大,拆成 apiserver、controller、kubelet、scheduler 讲了一下golang 与 java 的比较这个问题又很大,当时主要对比了 vm、协程支持、面向对象和泛型的区别、以及自己对各自使用场景的一些理解

2021-07-30 14:54:31 151

原创 两年Java开发经验,线程面试题Java

01 如何理解高并发?高并发意味着大流量,需要运用技术手段抵抗流量的冲击,这些手段好比操作流量,能让流量更平稳地被系统所处理,带给用户更好的体验。我们常见的高并发场景有:淘宝的双11、春运时的抢票、微博大V的热点新闻等。除了这些典型事情,每秒几十万请求的秒杀系统、每天千万级的订单系统、每天亿级日活的信息流系统等,都可以归为高并发。很显然,上面谈到的高并发场景,并发量各不相同,那到底多大并发才算高并发呢?1、不能只看数字,要看具体的业务场景。不能说10W QPS的秒杀是高并发,而1W QPS的信息流就

2021-07-30 14:53:44 164

原创 两年Java开发经验,简述Java的反射机制和使用场景

拼多多二面:多线程+乐观锁和悲观锁+并发、一面1、并发编程三要素?2、实现可见性的方法有哪些?3、多线程的价值?4、创建线程的有哪些方式?5、创建线程的三种方式的对比?6、什么是线程池?有哪几种创建方式?7、线程池的优点?8、CyclicBarrier 和 CountDownLatch 的区别二面1、介绍你的项目?2、什么是乐观锁和悲观锁3、sleep 方法和 wait 方法有什么区别?4、多线程同步有哪几种方法?5、Linux 环境下如何查找哪个线程使用 CPU 最长6、J

2021-07-30 14:52:53 97

原创 两年Java开发经验,对日JavaPG招聘

网站基础知识(网站架构及其演变过程+常见协议和标准+DNS的设置+Java中Socket的用法+HTTP协议+详解Servlet+Tomcat分析)俯视 Spring MVC(SpringMVC 之初体验+创建SpringMVC之器+SpringMVC之用)Spring MVC 组件分析(HandlerMapping+HandlerAdapter+ViewResolver+RequestToViewName-Translator+HandlerExceptionResolver+Multipa

2021-07-30 14:52:02 82

原创 mysql重装失败

一. 为什么使用spring cloud alibaba很多人可能会问,有了spring cloud这个微服务的框架,为什么又要使用spring cloud alibaba这个框架了?最重要的原因在于spring cloud中的几乎所有的组件都使用Netflix公司的产品,然后在其基础上做了一层封装。然而Netflix的服务发现组件Eureka已经停止更新,大多公司在使用的时候就发现过其一个细小的Bug;而其他的众多组件也将停止维护。所以急需其他的一些替代产品,也就是spring cloud alib

2021-07-29 19:44:40 23

原创 mysql重置密码linux

蚂蚁花呗第一次技术面(60min):Java容器有哪些?哪些是同步容器,哪些是并发容器?ArrayList和LinkedList的插入和访问的时间复杂度?java反射原理, 注解原理?说说一致性 Hash 原理新生代分为几个区?使用什么算法进行垃圾回收?为什么使用这个算法?HashMap在什么情况下会扩容,或者有哪些操作会导致扩容?HashMap push方法的执行过程?HashMap检测到hash冲突后,将元素插入在链表的末尾还是开头?1.8还采用了红黑树,讲讲红黑树的特性,为什么人家

2021-07-29 19:43:53 49

原创 mysql重置root密码的方法

面:为什么要使用双亲委派机制去加载类?答:避免多份同样字节码的加载,浪费内存。类的加载方式隐式加载:new显示加载:loadClass、forName等类的装载过程如下图:面:loadClass和forName的区别?Class.forName得到的class是已经初始化完成了的 (MySQL加载驱动时,需要调用静态代码块完成一些操作)ClassLoader.loadClass得到的class是还没有链接的。(用于Spring IoC中的延迟加载机制)Java内存模型JVM内存

2021-07-29 19:43:01 39

原创 mysql配置超详细教程

01 Mysql1. 数据库三范式及判断、E-R图2. innodb和myisam存储引擎的区别3. 索引分类(主键、唯一索引、全文索引、覆盖索引等等),最左前缀原则,哪些条件无法使用索引4. B树、B+树区别,索引为何使用B+树5. 聚集索引与非聚集索引(使用非聚集索引的查询过程)6. 事务的ACID(原子性、一致性、隔离性、持久性)7. 事务隔离级别和各自存在的问题(脏读、不可重复读、幻读)和解决方式(间隙锁及MVCC)8. 乐观锁和悲观锁、行锁与表锁、共享锁与排他锁(inndob如何手

2021-07-29 19:42:16 360

原创 mysql选择当前数据库

目录部分内容展示深入浅出索引(上)索引的常见模型InnoDB 的索引模型索引维护小结深入浅出索引(下)覆盖索引最左前缀原则索引下推为什么这些SQL语句逻辑相同,性能却差异巨大?案例一:条件字段函数操作案例二:隐式类型转换案例三:隐式字符编码转换小结读写分离有哪些坑?强制走主库方案Sleep 方案判断主备无延迟方案配合 semi-sync等主库位点方案GTID 方案小结总结面试前的“练手”还是很重要的,所以开始面试之前一

2021-07-29 19:41:22 224

原创 mysql连接数多少合适

第一篇:脑图篇1.1 手绘 Spring 架构脑图1.2 手绘 Spring5 架构脑图1.3 手绘 Spring Security 架构脑图1.4 手绘 Spring Boot 架构脑图1.5 手绘Spring Cloud 架构脑图1.6 手绘Spring MVC 架构脑图第二篇:面试篇2.1 Spring 灵魂100问基本概念面试题集( Spring相关概念梳理)1.谈谈对Spring loC的理解?⒉谈谈对Spring Dl的理解?3.BeanFacto

2021-07-29 19:40:35 132

原创 mysql连接字符串时区

纯手打“RocketMQ笔记”第一节:RocketMQ介绍1.1 核心概念(主题、生产者、消费者、消息)1.2 RocketMQ的设计理念和目标(设计理念、设计目标)第二节:RocketMQ中消息的发送2.1 单向[OneWay]发送(代码演示、Producer Group、Producer实例、Message Key、Tag)2.2 可靠同步发送(代码演示、Message ID、SendStatus、Queue)2.3 可靠异步发送(代码演示)2.4 Rock

2021-07-29 19:39:44 447

原创 mysql远程连接数据库的二种方法

什么是 RPC?RPC原理是什么?什么是 RPC?RPC(Remote Procedure Call)—远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。比如两个不同的服务 A、B 部署在两台不同的机器上,那么服务 A 如果想要调用服务 B 中的某个方法该怎么办呢?使用 HTTP请求 当然可以,但是可能会比较慢而且一些优化做的并不好。 RPC 的出现就是为了解决这个问题。RPC原理是什么?服务消费方(client)调用以本地调用方式调用服务;client

2021-07-29 19:38:58 243

原创 mysql解析json数组转字符串

Java架构进阶之面试篇面试这一块,分别有基础、中级、高级等三部分,一步一步检测。Java基础面试+解析Java中级开发面试+解析Java高级面试+解析Java架构进阶之技能导图篇筑基框架分布式微服务Java架构进阶之架构筑基篇架构筑基篇:Java基础+并发编程+JVM+MySQL+Tomcat+网络+数据结构与算法JAVA基础:反射+注解+内部类+泛型+序列化+复制并发编程JVMMySQLTomcat架

2021-07-29 19:38:06 1790

原创 mysql视图创建

一,session共享首先第一个要解决的就是sesison共享的问题,如下图。通常有两种解决方案,第1种是配置nginx的负载集群策略为ip_hash,第2种是将session存储到其它地方,一般推荐放到redis中。第1种方案适合于临时解决或者是为了兼容历史项目,但是从应用服务器无状态的角度考虑,推荐把用户会话session放到redis,如下图。二,本地缓存如果使用本地缓存,当从单体迁移到集群后,就会面临缓存同步的问题,如下图。最佳实践是上分布式缓存,既解决了缓存同步的问题,也释放了应

2021-07-29 19:37:16 25

原创 Java数组找最大值

正文1、什么是微服务?(暗藏杀机)2、什么是微服务扩展性和高可用-可扩展性、高可用性和性能3、架构师在微服务架构中的角色是什么?决定整个软件系统的布局。 帮助确定组件的分区。 为开发微服务的团队提供某些工具和技术的建议。 提供技术治理,以便技术开发团队遵循微服务原则。4、什么是 CI 持续集成5、什么是Canary Releasing?说说你在项目中的应用一种降低在生产中引入新软件版本的风险的技术,通过将变更缓慢地推广到一小部分用户,然后将其发布到整个基础架构。浅谈下你在项目中引进的新技术之类

2021-07-28 19:51:49 60

原创 Java数据库连接池原理

1. 一致性(Consistency)一致性(Consistency)是指多副本(Replications)问题中的数据一致性。可以分为强一致性、顺序一致性与弱一致性。1.1 强一致性(Strict Consistency)也称为:**原子一致性(Atomic Consistency)**线性一致性(Linearizable Consistency)强一致性有两个要求:任何一次读都能读到某个数据的最近一次写的数据。系统中的所有进程,看到的操作顺序,都和全局时钟下的顺序一致。简言之,在任意时

2021-07-28 19:51:01 81

原创 Java数据库开发环境

一面自我介绍项目中的监控:那个监控指标常见的有哪些?微服务涉及到的技术以及需要注意的问题有哪些?注册中心你了解了哪些?consul 的可靠性你了解吗?consul 的机制你有没有具体深入过?有没有和其他的注册中心对比过?项目用 Spring 比较多,有没有了解 Spring 的原理?AOP 和 IOC 的原理Spring Boot除了自动配置,相比传统的 Spring 有什么其他的区别?Spring Cloud 有了解多少?Spring Bean 的生命周期HashMap 和 has

2021-07-28 19:50:08 86

原创 Java数据同步解决方案

1. 垃圾回收机制Stop-the-World:  JVM由于要执行GC而停止了应用程序的执行称之为Stop-the-World,该情形会在任何一种GC算法中发生。当Stop-the-world发生时,除了GC所需的线程以外,所有线程都处于等待状态直到GC任务完成。事实上,GC优化很多时候就是指减少Stop-the-world发生的时间,从而使系统具有 高吞吐 、低停顿 的特点。2. java运行时的内存划分1. 程序计数器记录当前线程所执行的字节码行号,用于获取下一条执行的字节码。当多线程运

2021-07-28 19:49:23 1002

原创 Java数据同步方案

原理讲解前,先看一个最经典的业务场景,如开发一个电商网站,要实现支付订单的功能,流程如下:创建一个订单之后,如果用户立刻支付了这个订单,我们需要将订单状态更新为“已支付”扣减相应的商品库存通知仓储中心,进行发货给用户的这次购物增加相应的积分如上,微服务的应用场景和核心竞争力:降低耦合:每一个微服务专注于单一功能,并通过定义良好的接口清晰表述服务边界。由于体积小、复杂度低,每个微服务可由一个小规模开发团队完全掌控,易于保持高可维护性和开发效率。独立部署:由于微服务具备独立的运行进程,所以

2021-07-28 19:48:28 1230

原创 Java教学软件设计大学本科毕业论文

Linux 专题微服务专题微服务架构有哪些优势?微服务有哪些特点?设计微服务的最佳实践是什么?微服务架构如何运作?微服务架构的优缺点是什么?单片,SOA 和微服务架构有什么区别?在使用微服务架构时,您面临哪些挑战?SOA 和微服务架构之间的主要区别是什么?什么是 REST / RESTful 以及它的用途是什么?什么是不同类型的微服务测试?Kafka 专题Kafka 是什么消费者设计如何获取 topic 主题的列表生产者和消费者的命令行是什么?为什么需要消息系统,

2021-07-28 19:46:49 73

原创 Java敏捷开发gins

美团面试经历(还原最真实的4面)美团一面:1、自我介绍2、聊项目相关介绍项目怎么保证redis与Mysql的数据一致性见你写了个加随机数预防缓存雪崩,解释一下未改进和改进后的Jmter测试性能对比3、Redis为什么选择Redis作为缓存?为什么Redis的性能十分的高?说一下单进程、单线程的Redis和你平时写的多线程程序的对比如何保证Redis的高可用?(哨兵、持久化策略RDB、AOF)解释一下哨兵、RDB、AOF主从一致性Redis数据淘汰策略能说一下分布式事务吗

2021-07-28 19:46:03 58

原创 Java操作日志

基于 Servlet 容器的 Web MVC身为 Java 开发者,对于 Spring 框架并不陌生。它起源于 2002 年、Rod Johnson 著作《Expert One-on-One J2EE Design and Development》中的 Interface 21 框架,到了 2004 年,推出 Spring 1.0,从 XML 到 3.0 之后,支持 JavaConfig 设定;进一步,在 2014 年时,除了 Spring 4.0 之外,首次发表了Spring Boot,最大的亮点是采用

2021-07-28 19:45:12 279

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除