- 博客(14)
- 资源 (2)
- 收藏
- 关注
原创 什么是指令重排序?
在代码的世界里,指令重排序是一个比较大众的技术,主要是优化书写的源代码执行效率。计算机在执行程序时候,为了提高代码、指令的执行效率,编译器和处理器会对指令进行重新排序,一般分为编译器对于指令的重新排序、指令并行之间的优化、以及内存指令的优化。这么多优化都是保证在单线程的情况下,执行的结果是不变的,下图就是描述整个的指令重排的优化的过程:但是,在这里,重排序的先决条件是,重排序后的指令执行不可以影响指令原有所有实现的功能。也就是说单线程环境里确保程序的最终执行的结果和代码顺序执行的结果是一致的。各种指令
2022-01-21 12:37:27 2026
原创 Spring的启动过程
Spring的启动过程Spring的启动过程1、新建我们的IOC容器2、调用refresh();方法,初始化我们的IOC容器3、第一步:准备上下文环境;prepareRefresh();4、第二步:得到一个beanFactory对象:ConfigurableListableBeanFactory beanFactory = obtainFreshBeanFactory();5、第三步:预处理beanFactory组件:prepareBeanFactory(beanFactory);5.1 首先告诉bean
2020-06-14 08:40:51 468
原创 常用的RPC框架
为什么要使用RPC?RPC(remote procedure call)是指远程过程调用,比如两台服务器A和B,A服务器上部署一个应用,B服务器上部署一个应用,A服务器上的应用想调用B服务器上的应用提供的接口,由于不在一个内存空间,不能直接调用,所以需要通过网络来表达调用的语义和传达调用的数据。RPC(remote procedure call,远程过程调用):首先,要解决通讯的问题,主要是...
2020-02-19 09:14:50 1495
原创 使用Java的NIO写的一个小的聊天系统
使用Java的NIO写的一个小的聊天系统一、服务端二、客户端代码三、运行的结果一、服务端/** * 群聊的服端 * * @author :breakpoint/赵立刚 * @date : 2020/08/13 */public class GroupChatServer { // 定义相关的属性 private Selector selector; private ServerSocketChannel listenChannel; private stat
2020-08-13 19:13:53 191
原创 SpringBoot的自动装配原理(精髓所在)
文章目录一、主启动类二、@SpringBootApplication注解的功能三、@EnableAutoConfiguration的功能3.1 @AutoConfigurationPackage注解的功能3.2 AutoConfigurationImportSelector的功能3.3 getCandidateConfigurations四、如何将组件加入到IOC容器呢?4.1 META-INF/spring.factories文件到底是什么样的4.2 举例说明如何自动配置五、后记SpringBoot是
2020-08-08 07:37:20 534 1
原创 SpringBoot的启动过程(核心的启动过程)
文章目录SpringBoot的启动过程一、运行环境介绍二、启动的过程2.1 创建SpringApplication对象并且执行run方法。2.2 新建SpringApplication对象2.3 执行run方法三、后记SpringBoot的启动过程今天我们通过调试的方式讲述一下SpringBoot的启动的过程,加深自己的理解。一、运行环境介绍我们的运行环境是web的运行环境。JDK:1.8SpringBoot:2.2.2.RELEASE<?xml version="1.0" en
2020-08-07 20:53:04 825
原创 SpringCloud服务注册中心简介(服务治理)
文章目录零、服务注册中心简介(服务治理)一、Eureka 服务注册中心1.1 搭建服务注册中心1.2 搭建高可用服务注册中心1.3 搭建服务提供者服务1.3.1 创建服务提供者项目1.3.2 配置pom.xml文件1.3.3 配置application.yml文件1.3.4 创建主启动类1.3.5 创建业务类1.3.6运行测试1.4 搭建服务消费者服务二、Consul 服务注册中心2.1 下载并安装consul2.2 配置项目1 配置pom.xml配置2. 启动测试三、ZooKeeper 服务注册中心3.1
2020-07-31 10:52:02 402
原创 Springcloud简介
这里写自定义目录标题简介一、包含的内容1.1 服务注册中心1.2 服务调用1.3 服务降级1.4 服务网关1.5 服务配置中心1.6 消息驱动1.7分布式请求链路追踪二、Spring Cloud Alibaba2.1 分布式配置、服务注册、消息总线(SpringcloudAlibaba Nacos)2.2 实现熔断与限流(SpringcloudAlibaba sentinel)2.3 Springcloud Alibaba seata 处理分布式事务三、版本的相关配置3.1 运行环境介绍3.2 整体父项目环
2020-07-31 10:42:03 260
原创 如何实现web请求的异步处理
如何实现web请求的异步处理目前,我们编写的代码基本上都是同步请求的,我们每次请求,都会站哟过客户端的一个资源,一个链接,导致连接数减少。如何进行异步处理,那么我们处理的速度会大大的增加。方法一:servlet3.0后,我们的servlet支持了异步请求的方式来执行我们的业务逻辑。通过request.startAsync(request, response)来将同步请求转为异步,该方法返回一个AsyncContext 对象,在A中将该对象保存起来,等B的响应到来的时候,就可以利用该对象来拿到re
2020-06-17 21:39:37 966
原创 Spring AOP的实现原理
Spring的Aop原理本文讲解Spring AOP的整体的流程。一、基本术语:前置通知:@Before 在执行方法之前执行后置通知:@After 方法后执行返回通知:@AfterReturning 方法执行完返回执行异常通知:@AfterThrowing 出现异常的时候执行环绕通知:@Around 环绕通知在切面类上加入@Aspect说明这个类是通知类在配置类上用@EnableAspectJAutoProxy开启通知的功能二、@EnableAspectJAutoProx
2020-06-15 17:40:59 619
原创 Redis的集群配置的基本操作和遇到的坑
Redis的集群配置的基本操作和遇到的坑今天自己学习了redis的集群的配置,在配置的期间,发现了许多的坑的存在,现在将配置的过程以及具体的问题进行分析下载并安装redis 首先在redis的官网上面下载最新版本的redis并进行安装基本的集群的配置 打开redis的目录,配置redis.conf的文件 复制6份这个配置文件 配置其中的一个配置文件,其他的同理 ...
2018-06-06 11:59:25 816
原创 Shiro识别多种用户并从不同的表中获取信息并进行登录
1.重写UsernamePasswordToken,加上所属的功能/** * 自己定义token * * @author :breakpoint/赵立刚 * @date : 2018/01/02 */@Getterpublic class LocalUsernamePasswordToken extends UsernamePasswordToken { /**
2018-01-05 14:47:53 2628
原创 easyui 实现复制与撤销
程序的主要代码/*** 点击显示隐藏的效果 ----赵立刚* @param target* @returns*/function copyClomns(target){/*** 复制的属性*/var copyField=[];/*** 复制的数据*/var copyData=null;var commonFiled=[];
2017-07-22 11:03:15 1111
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人