你知道Java是如何解决可见性和有序性问题的吗?
Java 内存模型这个概念,在职场的很多面试中都会考核到,是一个热门的考点,也是一个人并发水平的具体体现。原因是当并发程序出问题时,需要一行一行地检查代码,这个时候,只有掌握 Java 内存模型,才能慧眼如炬地发现问题。
阿里面试官:知道 MySQL 逻辑备份与恢复测试么?
大家都知道,数据库在返回数据给我们使用的时候都是按照我们最初所设计期望的具有一定逻辑关联格式的形式一条一条数据来展现的,具有一定的商业逻辑属性,而在物理存储的层面上数据库软件却是按照数据库软件所设计的某种特定格式经过一定的处理后存放。
Spring JdbcTemplate详解,这都看不懂就安心去当个咸鱼吧!
Java程序使用JDBC接口访问关系数据库的时候,需要以下几步: 创建全局DataSource实例,表示数据库连接池;在需要读写数据库的方法内部,按如下步骤访问数据库:从全局DataSource实例获取Connection实例;通过Connection实例创建PreparedStatement实例;执行SQL语句,如果是查询,则通过ResultSet读取结果集,如果是修改,则获得int结果。
Java高级架构面试知识点:基于 Hystrix 信号量机制实现资源隔离
Hystrix里面核心的一项功能,其实就是所谓的资源隔离,要解决的最最核心的问题,就是将多个依赖服务的调用分别隔离到各自的资源池内。
Java高级架构面试知识点整理:基于 Hystrix 线程池技术实现资源隔离
资源隔离,就是说,你如果要把对某一个依赖服务的所有调用请求,全部隔离在同一份资源池内,不会去用其它资源了,这就叫资源隔离。哪怕对这个依赖服务,比如说商品服务,现在同时发起的调用量已经到了 1000,但是线程池内就 10 个线程,最多就只会用这 10 个线程去执行,不会说,对商品服务的请求,因为接口调用延时,将 tomcat 内部所有的线程资源全部耗尽。
每日一学: Routing路由模式
Routing模式要求队列在绑定交换机时要指定routing key,消息会转发到符合routing key的队列。
每日一学:Publish/Subscribe发布与订阅模式
发布订阅模式:1.每个消费者监听自己的队列。2.生产者将消息发给broker,由交换机将消息转发到绑定此交换机的每个队列,每个绑定交换机的队列都将接收到消息
每日一学:你知道如何在 RabbitMQ 中实现 Work queues工作队列模式吗?
Work Queues 与入门程序的简单模式相比,多了一个或一些消费端,多个消费端共同消费同一个队列中的消息。
每日一学:如何在RabbitMQ中搭建Topics通配符模式
Topic 类型与 Direct 相比,都是可以根据 RoutingKey 把消息路由到不同的队列。只不过 Topic 类型 Exchange 可以让队列在绑定 Routingkey 的时候使用通配符!
每日一学:如何在 Spring Boot 整合 RabbitMQ ?
在Spring项目中,可以使用Spring-Rabbit去操作RabbitMQ
Sleuth服务跟踪大厂高频面试题:整合 Zipkin
Zipkin是Twitter的一个开源项目,是一个致力于收集所有服务的监控数据的分布式跟踪系统,它提供了收集数据和查询数据两大接口服务。有了Zipkin我们就可以很直观地对调用链进行查看,并且可能很方便看出服务之间的调用关系以及调用耗费的时间。
Sleuth服务跟踪:整合 Logstash
比如ELK,可以将多台服务器上的日志信息统一收集起来,在出问题的时候我们可以轻松根据 traceId 来搜索出对应的请求链路信息。
今日教学:RestTemplate 结合 Ribbon 使用
Ribbon 是可以单独使用的,但是在 Spring Cloud 中使用 Ribbon 会更简单。因为 Spring Cloud 在 Ribbon 基础上进行了一层封装,将很多配置都集成好了。本文将在 Spring Cloud 中使用 Ribbon !
Netty权威指南:Java的I/O演进
正是由于Java传统BIO的拙劣表现,才使得Java支持非阻塞I/O 的呼声日渐高涨,最终,JDK1.4 版本提供了新的NIO类库,Java终于也可以支持非阻塞I/0了。
Netty权威指南:I/O 多路复用技术
在I/O编程过程中,当需要同时处理多个客户端接入请求时,可以利用多线程或者I/O多路复用技术进行处理。I/O多路复用技术通过把多个I/O的阻塞复用到同一个select的阻塞上,从而使得系统在单线程的情况下可以同时处理多个客户端请求。
Netty权威指南:Linux网络 I/O 模型简介
Linux的内核将所有外部设备都看做一个文件来操作,对一个文件的读写操作会调用内核提供的系统命令,返回一个file descriptor (fd,文件 描述符)。而对一个socket的读写也会有相应的描述符,称为socketfd ( socket描述符),描述符就是一个数字,它指向内核中的一个结构体(文件路径,数据区等一些属性)。
SpringMVC 常见面试真题分享,助力金三银四后半段冲刺!
SpringMvc 是 spring 的一个模块,基于 MVC 的一个框架,无需中间整合层来整合。
Spring 高级源码核心思想:Spring IoC
注意:IOC和AOP不是spring提出的,在spring之前就已经存在,只不过更偏向于理论化,spring在技术层次把这两个思想做了⾮常好的实现(Java)
脸打肿都不要忘了呀,Java 重写时应当遵守的 11 条规则
重写(Overriding)算是 Java 中一个非常重要的概念,理解重写到底是什么对每个 Java 程序员来说都至关重要,这篇文章就来给大家说说重写过程中应当遵守的 12 条规则。
Mybatis 中如何优雅的增强日志功能?
因 此 在 日 志 模 块 中 有 BaseJdbcLogger 、 ConnectionLogger 、 PreparedStatementLogger 和 ResultSetLogge 通过动态代理负责在不同的位置打印日志;