自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 资源 (4)
  • 收藏
  • 关注

原创 学习笔记---分布式事务的简单总结

分布式事务:基于单机事务展开的,而单机事务是基于数据库的ACID来的,离开数据库的话,事务将无从谈起;因此,实现分布式事务,本质上就是实现整个事务链的ACID,也就意味着事务链上的事务都要实现ACID;CAP理论:意思就是分区容错性,一致性以及系统的可用性,三者不可兼得,那么只能是牺牲一致性或者可用性了,来保全其余的两个,因此产生了强一致性和弱一致性的处理;但是考虑到具体的情况,假如说在单体应用的事务(非分布式事务)事务链特别长,在执行的业务逻辑的过程也会牵扯到可用性的问题了,个人看法是CAP理论不仅仅.

2020-05-16 00:03:57 258 1

原创 学习笔记---io&netty的初步概述

2020-04-12 00:51:19 156

原创 学习笔记---redis 的使用简单记录

Redis 缓存,可用于多种数据类型存储:String,List,Set,Zset,MapRedis 对处理过期时间的Key处理方式:1.惰性处理:客户端访问时判断是否过期 2.积极处理:Redis 周期性在设置了设定时间的 Key 选择一部分来删除;发布订阅:pub/sub,消费者提供者机制,订阅一个通道,不支持多协议,哨兵模式下的集群使用了这个方式;使用场景少,特定场景还是使用 MQ ...

2020-04-06 18:11:31 160

原创 学习笔记---JVM 简单分析

个人粗浅的认为,JVM 的学习比较抽象,基本都是建立在概念上的。JVM 可以从两方面分析:软件层面机器码的翻译内存管理软件层面机器码的翻译: Java 号称一次编译到处运行,是建立在对应与不同版本的JVM上的,对应不同OS的JVM 可以将编译好的文件代码翻译成对应的OS版本的机器码,来达到实现的;内存管理:上图:1本地方法栈:C语言方法运行时数据存储对应的内存区域,比如 Thr...

2020-04-05 21:59:13 122

原创 学习笔记---springboot的aop实现简单分析

上文讲到 springboot 的自动装配,本文来记录下 aop 的学习:个人粗浅认为 springboot 的 aop 功能是利用递归+数组+动态代理+扩张接口来实现的:先来写一个简单的实现版:1,接口:BaseAdvice2.前置增强:3.后置增强:3.责任链的类:3.测试类:执行的打印结果:现在来说明:Chain类 封装了增强类 ADVICE 的集合,AD...

2020-04-05 02:30:59 187

原创 学习笔记---springboot的自动装配实现的简单分析

个人粗浅认为,springboot在功能上基本是实现三个:1.解决spring的大量xml等配置,利用的是:spring的注解扩张+spi 机制+javaConfig,也就是实现自动装配,用户也可以在此功能上开发自己的配置类Starter; 2.实现servlet3.0 规范; 3.内置servlet容器功能;先来分析笔记的自动装配:如上面总结所说,是利用原生的spring的注...

2020-04-04 22:23:03 149

原创 学习笔记---spring bean的生命周期的简单分析

先来一张概图来展示生命周期:个人觉得spring bean的生命周期的是建立在各种扩展点上的:1.BeanPostProcessor2.InitializingBean3.DisposableBean4.BeanNameAware5.BeanClassLoaderAware6.BeanFactoryAware下面来记录下学习过程: @Override public void ...

2020-04-03 20:24:25 166

原创 学习笔记---注册中心zookeeper客户端源码简单分析

11

2020-03-17 13:38:29 167

原创 学习笔记---分布式限流阿里sentinel源码限流流程简单分析

我们都知道,由于业务的增大,单机服务难以承受,业务集中在一个jvm上,开发维护会后期变得很困难,访问量的增大也对单机服务造成很大的压力,按照业务将不同的服务拆分以及部署多台服务实行负载均衡,很大原因都是为了减少服务器的压力;然而当访问量上来的时候,不管是否加了缓冲中间件或者是用mq来存储,都压力峰值,所以最终对访问服务实现限流降级熔断是解决的最终办法;跟xxlJob一样,sentinel可以按照...

2020-03-15 17:30:24 706

原创 学习笔记---分布式调度之xxlJob任务自动生成与注册的改造

在前面几篇的学习总结中,可以得到:

2020-03-10 00:53:54 4717 1

原创 学习笔记---分布式调度之xxlJob的调度任务源码分析

在学习笔记—分布式调度之xxlJob执行器的启动源码解析以及学习笔记—分布式调度之xxlJob调度中心的启动源码解析中可以知道,执行器已经开始nettyServer时刻等待任务调度并且开启了后台线程时刻监视着回调队列是否有数据,有数据则立马执行http调用调度中心的对外暴露http接口,而调度中心也在后台开启了日志线程监视是否有失败执行日志,有则生成代理对象,并且打开nettyClient来走rp...

2020-03-08 23:54:31 1088

原创 学习笔记---分布式调度之xxlJob调度中心的启动源码解析

调度中心的代码启动源码是从:XxlJobAdminConfig 入口;直接进入: xxlJobScheduler.init();第一个: initI18n() 处理国际化;第二个:JobRegistryMonitorHelper.getInstance().start(); 创建启动后台线程来维护在线的执行器组下的机器列表,从上篇学习笔记—分布式调度之xxlJob执行器的启动源码解析可以...

2020-03-08 22:00:14 924

原创 学习笔记---分布式调度之xxlJob执行器的启动源码解析

可以实现调度任务的手段蛮多的,比如说spring本身的定时任务SpringTask,或者是jdk的Timer、时间线程池ScheduledExecutorService,Quartz等,如果要实现分布式调度的话,则以上方式需要分布式锁的机制,加之如果需要做到统一管理这些调度任务的以及可配置的话,则上面的方式需要额外的逻辑处理才行,许雪晴老师的xxlJob以及当当网开发的elasticJob可以...

2020-03-08 18:52:27 2183

原创 学习笔记---DUBBO请求处理线程模型以及源码分析

继续以netty为底层通讯框架来分析,个人认为dubbo的线程模型设计思路是居于netty的线程模型延伸开来的的;在netty中,处理开发者的业务逻辑如果过于复杂耗时的话,开发者利用线程池来另外创建线程来处理业务逻辑,这样不会占着IO线程的资源;反之如果业务逻辑简单计算较快的话,则使用IO线程来处理,则减少线程的损耗;dubbo就是在这基础上提炼,通过官网我们了解到:dubbo提供了5个线...

2020-03-06 22:04:04 231

原创 学习笔记---DUBBO的服务调用(服务端)

dubbo默认的是以netty为通讯框架,有了解过netty的清楚,不管是客户端还是服务端,在通讯过程中所产生的事件:连接断开,读/写,接受等事件,必定在:ChannelPipeline里面处理,而在:ChannelPipeline具体处理的就是:ChannelHandler了,据此,我们从学习笔记—DUBBO的服务暴露以及源码分析分析过,服务在暴露过程中,会建立NettyServer并且打开通道...

2020-03-06 14:59:48 218

原创 学习笔记---DUBBO的服务调用(消费端)

dubbo的服务调用的逻辑可以拆分为两部分来处理:消费端的调用;提供端的响应;消费端的调用:代码分析:从: String hello = demoService.sayHello(“world”) 开始,由上次dubbod的服务引入分析可以知道,这个:demoService就是Invoker包装类的代理对象,下一步执行的逻辑: @Override public Object ...

2020-03-06 01:23:10 255

原创 学习笔记---DUBBO的服务引入以及源码解析

dubbo的服务引入分为以下步骤:dubbo的服务暴露分为以下步骤:1.URL的准备过程;2.Invoker的执行责任链生成过程;3.启动netty服务,存储对应的nettyServer服务4.与注册中心的结合,客户端的连接,注册对应的节点以及监听;5.最终生成exporter,封装了Invoker以及serviceBean的信息...

2020-03-04 15:31:49 231

原创 学习笔记---DUBBO的服务暴露以及源码分析

本篇笔记重点在与服务暴露逻辑,牵扯到的dubbo的spi与adaptive以及与spring的结合的逻辑不在此赘述;比较重要的元素:1.URL:主要在启动的过程中将启动参数,xml配置,控制台配置在注册中心的参数按照级别依次来覆盖存储,以启动参数的配置级别最为优先;以及在此过程中,按照配置的子节点优先于父节点的级别来配置;再结合dubbo本身的spi自适应功能来生成或者实例化对应的实现类来执行...

2020-03-03 23:22:09 228

PLC通过HMI储存数据到SQL教程

对于AB工控自动化,存储数据方法值得推荐!

2015-02-12

解组态王的pid控制

借助这位仁兄的设计,可以清楚的了解组态王的pid控制

2014-04-24

西门子软件

绝对好用,这个西门子编程软件,不过适用于32位

2014-04-24

64位加载通用控件

64位win7win8系统如何注册通用控件,一把手教你,绝对好用

2014-04-21

空空如也

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

TA关注的人

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