解耦神器:MQ MQ是分布式架构中的解耦神器,应用非常普遍。有些分布式事务也是利用MQ来做的。由于其高吞吐量,在一些业务比较复杂的情况,可以先做基本的数据验证,然后将数据放入MQ,由消费者异步去处理后续的复杂业务逻辑,这…
分类:编程语言
数据库索引
01.在创建索引的时候都会考虑哪些因素呢? :对于查询概率比较高,经常作为where条件的字段设置索引。 02.做联合索引多个字段之间顺序你们是如何选择的呢? :识别度最高的字段放到最前面。在创建多列索引时,我们根据业务…
一个知名网站的微服务架构最佳实现
编者语:如果你的项目正在从单体升级为微服务而忧心;或者你在实践微服务过程中手忙脚乱,本文都是你不容错过的好文。 微服务架构的目标是帮助工程团队更快、更安全、更高质量地交付产品。拆分服务允许团队快速迭代的同时,保证了对系统…
2年java,蚂蚁一面,卒
其实我一个都没答上来。并不是因为我笨,是因为我不会。在大扰的帮助下,现在我会了,求求你再给我一个机会。 TreeSet/HashSet 区别 顾名思义,首先是结构上的不同 1、TreeSet背后的结构是TreeMap,也…
Kafka集群部署指南
一、前言 1、Kafka简介 Kafka是一个开源的分布式消息引擎/消息中间件,同时Kafka也是一个流处理平台。Kakfa支持以发布/订阅的方式在应用间传递消息,同时并基于消息功能添加了Kafka Connect、Ka…
垃圾回收的常见算法
垃圾回收的常见算法 2.1 引用计数法 2.1.1 原理 2.1.2 优缺点 2.2 标记清除法 2.2.1 原理 2.2.2 优缺点 2.3 标记压缩算法 2.3.1 原理 2.3.2 优缺点 2.4 复制算法 2.4…
struts下载文件错误,想不明白为什么更改变量名就不报错了
java.lang.IllegalArgumentException: Can not find a java.io.InputStream with the name [is] in the invocation st…
Eclipse MyBatis generator 1.3.7插件的核心包(中文注释)
一、最近刚搭建一个项目框架,使用springboot + mybatis,但是在使用Eclipse开发时发现开发mybatis的Dao、mapper.xml和entity时特别不方便,手工去写肯定是不可能的,太浪费时间,…
IntelliJ IDEA 快捷键(转载收藏)
自动代码 常用的有fori/sout/psvm+Tab即可生成循环、System.out、main方法等boilerplate样板代码 。 例如要输入for(User user : users)只需输入user.for+…
spring5 源码深度解析— IOC 之 属性填充
doCreateBean() 主要用于完成 bean 的创建和初始化工作,我们可以将其分为四个过程: createBeanInstance() 实例化 bean populateBean() …
Java多态的本质
今天复习了java多态,感觉收获颇多。多态的实现方式有两种,继承父类和实现接口。本质体现在重写上,不同的类重写时体现出不同的特征。编译时和运行时的不同上。编译时只能调用父类的方法,如果调用了子类独有的方法,如果是在n…
Java 添加、读取、删除PPT文档属性
文档属性是一些描述性的信息,它未包含在文件的实际内容中,但提供了有关文件的信息,可用来帮助查找和整理文件。以下示例中将介绍通过Java程序来添加PPT文档属性、读取、删除PPT文档中已有属性的方法。 使用工…