摘要:
本系列文章翻译自:http://tutorials.jenkov.com/netty/index.html 由Jakob Jenkov于2016-2017年所写,共6篇文章 在此之前,先学习Java NIO相关的教程可能会帮助理解:https://www.cnblogs.com/lay2017/p/ 阅读全文
摘要:
在1.4以前Java的网络编程从BIO开始。jdk1.4开始,Java提供了NIO软件包,为高性能的网络编程提供了有力的帮助。 本教程共17篇,翻译自:http://tutorials.jenkov.com/java-nio/index.html 注意:这是原作者 Jakob Jenkov 于201 阅读全文
摘要:
目录 seata分布式事务框架 基础篇 seata简介 springboot项目使用seata实现分布式事务 源码篇 客户端 seata自动配置 GlobalTransactionalInterceptor拦截器 TransactionalTemplate处理全局事务 DataSourceProxy 阅读全文
摘要:
事务,是软件开发的一个很重要的专题。java方向的开发人员通常从数据库和框架(比如spring)提供的机制开始接触事务。再到软件发展为分布式项目,就自然而然的接触分布式事务,比如阿里的fescar或者tx-lcn分布式事务框架。以及mq中间件之类的也会涉及事务问题。 总得来说,事务是一个很重要的概念 阅读全文
摘要:
springcloud是一个基于springboot的一站式企业级分布式应用开发框架。springboot为其提供了创建单一项目的便利性,springcloud组合了现有的、常用的分布式项目的解决方案,融合为一个全家桶。对于中小企业来说,这将使其轻易就能够构建出分布式应用。 对于研发人员来说,学会使 阅读全文
摘要:
对于长时间基于spring框架做web开发的我们,springmvc几乎成为了开发普通web项目的标配。本系列文章基于快速启动的springboot,将从源码角度一点点了解springboot中mvc自动配置的面貌。在此之前,或许了解一些springboot启动流程会有所帮助。 目录: 1. 自动配 阅读全文
摘要:
restTemplate是spring实现的,基于restful风格的http请求模板。使用restTemplate可以简化请求操作的复杂性,同时规范了代码风格。本系列文章,将根据以下目录顺序,从源码的角度解析restTemplate。 目录: 阅读全文
摘要:
springboot出现有段时间了,不过却一直没有怎么去更多地了解它。一方面是工作的原因,另一方面是原来觉得是否有这个必要,但要持续做java似乎最终逃不开要去了解它的命运。于是考虑花一段时间去学习一下,计划按照如下目录让自己有一个整体概念,也希望遇到一些问题能够基于这个目录的知识去挖出问题点,即使 阅读全文
摘要:
mvcc全称是,多版本并发控制: multi version concurrency control 并发问题 我们注意到一个关键词是concurrency,表明了mvcc的初衷就是为了并发问题而设计的。既然mvcc是为了并发而生,那么是为了什么并发问题呢? 我们看这么一个例子,以下有一条数据 na 阅读全文
摘要:
为什么要有三范式 数据库是用来干啥的?毫无疑问主要的工作就是存储数据,本质上就是将数据一点点写入到硬盘上放起来。 但是我们知道,资源不是无限的。硬盘空间大小是有限的,所以你能够存储的数据量是有限的。机器IO能力是有限的,所以程序从数据库读写数据的能力就是有限的。我们没办法让资源无穷无尽,所以我们需要 阅读全文
摘要:
所有文章 https://www.cnblogs.com/lay2017/p/12922074.html 正文 除了服务端,netty还可以构建客户端。客户端你需要 1.创建EventLoopGroup 2.配置Bootstrap 3.创建ChannelInitializer 4.启动 示例代码如下 阅读全文
摘要:
所有文章 https://www.cnblogs.com/lay2017/p/12922074.html 正文 要构建netty的tcp服务端,你需要 1.创建EventLoopGroup 2.配置一个ServerBootStrap 3.创建ChannelInitializer 4.启动服务 代码如 阅读全文
摘要:
所有文章 https://www.cnblogs.com/lay2017/p/12922074.html 正文 ChannelPipeline是netty中非常核心的概念之一。每个SocketChannel都会包含ChannelPipeline,ChannelPipeline包含一系列Channel 阅读全文
摘要:
所有文章 https://www.cnblogs.com/lay2017/p/12922074.html 正文 为了了解netty的工作机制,这里有几个概念需要知道 1.BootStrap 2.EventLoopGroup 3.EventLoop 4.SocketChannel 5.ChanneIn 阅读全文
摘要:
所有文章 https://www.cnblogs.com/lay2017/p/12922074.html 正文 在Java项目安装netty,需要你下载jar包,并添加到类路径。 maven方式 比较流行的方式是直接采用项目管理工具,比如maven <dependency> <groupId>io. 阅读全文
摘要:
所有文章 https://www.cnblogs.com/lay2017/p/12922074.html 正文 netty是一个高性能的Java IO工具包。本教程简单讲解如何上手netty,但是不会涉及太多的细节。 官网 https://netty.io/ 优点 比起Java原生的API,nett 阅读全文
摘要:
所有文章 https://www.cnblogs.com/lay2017/p/12901123.html 正文 我们什么时候该使用IO,什么时候该使用NIO呢? 本文会罗列一些NIO和IO的不同点,和用法,以及它们都是如何影响设计的。 主要的不同点 IO NIO 面向流 面向缓冲区 阻塞IO 非阻塞 阅读全文