自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

風雨无阻

路漫漫其修远兮,吾将上下而求索

  • 博客(19)
  • 资源 (1)
  • 收藏
  • 关注

原创 Dubbo的基本使用

Dubbo的基本使用1、Dubbo概述2、Dubbo处理流程3、服务注册中心Zookeeper4、Dubbo基本使用4.1、基于注解模式4.2、基于XML模式1、Dubbo概述Apache Dubbo是一款高性能的Java RPC框架。其前身是阿里巴巴公司开源的一个高性能、轻量级的开源Java RPC框架,可以和Spring框架无缝集成。官网提供了用户文档与开发指南,基本对所有功能有大概的描述与使用方式官方网址:https://dubbo.apache.org/zh/2、Dubbo处理流程

2021-07-23 16:13:10 5245 2

原创 Zookeeper

Zookeeper1、Zookeeper简介2、Zookeeper环境搭建3、Zookeeper基本使用4、Zookeeper应用场景5、Zookeeper深入进阶6、Zookeeper源码探索1、Zookeeper简介Zookeeper是⼀个开源的分布式协调服务,其设计⽬标是将那些复杂的且容易出错的分布式⼀致性服务封装起来,构成⼀个⾼效可靠的原语集,并以⼀些简单的接⼝提供给⽤户使⽤。 zookeeper是⼀个典型的分布式数据⼀致性的解决⽅案,分布式应⽤程序可以基于它实现诸如数据订阅/发布、负载均衡、命

2021-07-13 23:54:03 313

原创 Zookeeper基本使用

Zookeeper基本使用1、Zookeeper系统模型2、Zookeeper命令行操作3、Zookeeper原生api使用4、Zookeeper开源客户端1、Zookeeper系统模型ZooKeeper数据模型Znode在ZooKeeper中,数据信息被保存在⼀个个数据节点上,这些节点被称为znode。 ZNode 是Zookeeper 中最⼩数据单位,在 ZNode 下⾯⼜可以再挂 ZNode,这样⼀层层下去就形成了⼀个层次化命名空间 ZNode 树,我们称为 ZNode Tree,它采⽤了类似⽂

2021-07-13 23:48:35 5750 4

原创 Linux环境Zookeepr环境搭建

Linux环境Zookeeper环境搭建1、单机模式2、集群模式(伪集群)1、单机模式1. 下载:下载稳定版本zookeeper(本文使用3.4.14版本): http://zookeeper.apache.org/releases.html2. 上传将下载完成的压缩包zookeeper-3.4.14.tar.gz上传到linux系统3. 解压压缩包tar -zxvf zookeeper-3.4.14.tar.gz -C /usr/local/zookeeper-3.4.144. 进入解压

2021-07-13 22:50:52 212

原创 Nginx

NginxNginx简介Nginx安装Nginx之反向代理Nginx之负载均衡Nginx之动静分离Nginx底层进程机制Nginx简介Nginx是什么?百度百科:Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。Nginx是一款轻量级的Web 服务器/反向代理服

2021-07-09 17:32:52 81

原创 从BIO到NIO再到Netty

从IO到NIO再到Netty1、BIO2、NIO2.1、缓存区Buffer2.2、通道Channel2.3、选择器Selector2.3、基于NIO的socket通信示例3、Netty3.1 Netty简介3.2 线程模型3.2.1 传统阻塞 I/O 服务模型3.2.2 Reactor 模型3.2.2.1 单 Reactor 单线程3.2.2.2 单 Reactor多线程3.2.2.3 主从 Reactor 多线程3.3、简单案例3.4、Netty中粘包与拆包3.4.1、粘包与拆包介绍3.4.2、粘包和拆包

2021-07-07 16:28:41 95

转载 使用nginx代理socket端口

本文将介绍如何使用nginx代理socket端口。nginx自1.9.0版本开始支持 ngx_stream_core_module 模块。环境准备:该功能需要使用nginx的 ngx_stream_core_module 模块,且该模块在安装时并不是默认构建的。因此在执行 ./configure 时需要加上参数 --with-stream安装流程:1.下载nginx安装包地址:http://nginx.org/download/或wget http://nginx.org/download

2021-07-06 00:07:10 4384 3

原创 基于Netty的简易群聊

基于Netty的简易群聊1、JavaSE版本1.1、创建服务端1.2、创建服务端自定义业务处理类1.3、创建客户端1.3、创建客户端业务处理类1.4、测试2、基于Netty的websocket网页版群聊1、JavaSE版本通过main函数直接启动服务端或者客户端。实现内容: 其中一个客户端发送消息,其他客户端均能接收到该客户端的消息,服务端实现消息转发功能。1.1、创建服务端具体步骤见代码注释,代码如下:package com.ljfngu.server;import com.ljfngu.

2021-07-03 13:15:47 94

原创 NIO ServerSocketChannel配合使用Selector简单案例

NIO ServerSocketChannel简单案例1、创建服务端2、客户端创建3、测试1、创建服务端具体步骤请看代码注释,代码:package com.ljfngu.nioSocket;import java.io.IOException;import java.net.InetSocketAddress;import java.nio.ByteBuffer;import java.nio.channels.*;import java.nio.charset.StandardChars

2021-06-30 14:45:37 530

原创 基于TCP协议的Socket通信

基于TCP协议的Socket通信1、什么是Socket2、简单的Socket例子2.1、服务端创建2.2、客户端创建2.3、测试通信1、什么是Socket所谓套接字(Socket),就是对网络中不同主机上的应用进程之间进行双向通信的端点的抽象。一个套接字就是网络上进程通信的一端,提供了应用层进程利用网络协议交换数据的机制。从所处的地位来讲,套接字上联应用进程,下联网络协议栈,是应用程序通过网络协议进行通信的接口,是应用程序与网络协议根进行交互的接口2、简单的Socket例子Java中Socket

2021-06-29 11:20:06 253

原创 分布式集群架构场景化解决⽅案

分布式集群架构场景化解决⽅案一致性Hash算法集群时钟同步方案分布式ID解决⽅案分布式调度框架Elastic-Job一致性Hash算法一致性Hash算法集群时钟同步方案集群时钟同步方案分布式ID解决⽅案分布式ID解决⽅案分布式调度框架Elastic-Job分布式调度框架Elastic-Job欢迎各位评论,互相讨论学习~...

2021-06-26 20:47:01 60

原创 分布式调度框架Elastic-Job

分布式调度框架Elastic-JobElastic-Job介绍主要功能介绍Elastic-Job-Lite应⽤Elastic-Job介绍Elastic-Job是当当⽹开源的⼀个分布式调度解决⽅案,基于Quartz⼆次开发的,由两个相互独⽴的⼦项⽬Elastic-Job-Lite和Elastic-Job-Cloud组成。我们要学习的是 Elastic-Job-Lite,它定位为轻量级⽆中⼼化解决⽅案,使⽤Jar包的形式提供分布式任务的协调服务,⽽Elastic-Job-Cloud⼦项⽬需要结合Mesos以

2021-06-26 20:41:27 142

原创 分布式ID解决⽅案

分布式ID解决⽅案1、UUID2、独立数据库的自增ID3、SnowFlake雪花算法4、Redis的Incr命令获取全局唯一ID1、UUID可以使用UUID 是指Universally Unique Identifier,翻译为中⽂是通⽤唯⼀识别码产⽣重复 UUID 并造成错误的情况⾮常低,是故⼤可不必考虑此问题。Java中得到⼀个UUID,可以使⽤java.util包提供的⽅法public class MyTest { public static void main(String[] args

2021-06-26 20:28:09 76

原创 集群时钟同步方案

集群时钟同步方案1、分布式集群中服务节点均可访问互联网2、分布式集群中某一个节点可以访问互联网或都不能访问互联网1、分布式集群中服务节点均可访问互联网操作方式:#使⽤ ntpdate ⽹络时间同步命令ntpdate -u ntp.api.bz #从⼀个时间服务器同步时间2、分布式集群中某一个节点可以访问互联网或都不能访问互联网操作方式:1)选取集群中的⼀个服务器节点A(172.17.0.17)作为时间服务器(整个集群时间从这台服务器同步,如果这台服务器能够访问互联⽹,可以让这台服务器和⽹

2021-06-26 20:21:30 158

原创 一致性哈希算法

一致性哈希算法1、Hash算法应用场景2、普通Hash算法存在的问题3、一致性Hash算法4、Nginx配置一致性Hash负载均衡策略1、Hash算法应用场景Hash算法在分布式集群架构中的应用场景:请求的负载均衡(如:nginx的ip_hash策略)Nginx的ip_hash策略可以在客户端ip不变的情况下,将其发出的请求始终路由到同⼀个⽬标服务器上,实现会话粘滞,避免处理session共享问题。分布式存储在集群存储的架构下,数据通过Hash算法确定存储的服务器节点。2、普通Hash算法

2021-06-26 20:14:25 247

原创 Tomcat系统架构与原理

Tomcat系统架构与原理1、Tomcat系统架构1.1、浏览器访问服务器的流程1.2、Tomcat系统总体架构1.2.1、Tomcat 请求处理⼤致过程1.2.2、Tomcat Servlet容器处理流程1.2.3、Tomcat 系统总体架构1.3 Tomcat 连接器组件 Coyote1.3.1 Coyote简介1.4、Tomcat Servlet 容器 Catalina1.4.1、Tomcat 模块分层结构图1.4.2、Servlet 容器 Catalina 的结构1.4.3、Container 组件

2021-06-20 22:39:28 148

原创 Spring Boot自动配置与run执行流程

Spring Boot自动配置与run执行流程1、自动配置1.1、@SpringBootApplication1.2、@SpringBootConfiguration1.3、@EnableAutoConfiguration1.3.1、@AutoConfigurationPackage1.3.2、@Import(AutoConfigurationImportSelector.class)1.3.2.1、自动配置实现逻辑的入口方法1.3.2.2、自动配置的主要逻辑1.3.2.2.1、深入getCandidate

2021-06-15 00:35:50 489 2

原创 Spring MVC源码剖析

Spring MVC源码剖析Spring MVC简介MVC体系结构Spring MVC是什么Spring MVC工作流程Spring MVC 请求处理流程Spring MVC九大组件Spring MVC源码剖析前端控制器DispatcherServlet继承结构重要时机点分析核心步骤getHandler方法剖析核心步骤getHandlerAdapter方法剖析核心步骤ha.handle方法剖析核心步骤processDispatchResult方法剖析Spring MVC九大组件初始化Spring MVC简

2021-05-29 15:16:27 101

原创 Spring之IoC与AOP

Spring高级框架之IoC与AOP1 Spring概述1.1 Spring简介1.2 Spring的优势1.3 Spring的核心结构2 核心思想IoC与AOP2.1 IoC2.2 AOP3 Spring IoC高级应用3.1 Spring IoC基础知识3.1.1 BeanFactory与ApplicationContext区别3.1.1.1 启动IoC容器的方式3.1.1.1.1 java环境下启动IoC容器3.1.1.1.2 Web环境下启动IoC容器3.1.2 XML模式3.1.2.1 实例化Be

2021-05-24 21:16:24 386

NettyWebChat.zip

基于Netty的简易群聊

2021-07-03

空空如也

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

TA关注的人

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