02 2019 档案

摘要:⒈Linux下磁盘说明 1)Linux硬盘分IDE硬盘和SCSI硬盘,目前基本上是SCSI硬盘。 2)对于IDE硬盘,使用“hdx~”标识符,“hd”代表IDE硬盘。 对于SCSI硬盘,使用“sdx~”标识符,“sd”代表SCSI硬盘。 “x”为盘号(若电脑有多块硬盘,则依次排列,a为基本盘,b为基 阅读全文
posted @ 2019-02-28 22:22 SpringCore 阅读(336) 评论(0) 推荐(0) 编辑
摘要:⒈概述 任务调度:是指系统在某个时间执行的特定的命令或程序 分类:1)系统任务:有些重要的工作必须周而复始的执行,例如病毒扫描等 2)用户任务:个别用户可能希望定时执行某些程序,例如mysql定时备份 ⒉基本语法 crontab [选项] ⒊常用选项 -e:编辑crontab定时任务 -l:查询cr 阅读全文
posted @ 2019-02-28 20:48 SpringCore 阅读(616) 评论(0) 推荐(0) 编辑
摘要:⒈Linux组基本介绍 1)在Linux中的每个用户必须属于一个组,不能独立于组外。 2)Linux中每个文件都有所有者、所在组、其它组的概念 ①所有者 一般(默认)为文件的创建者,谁创建了该文件,就自然的成为该文件的所有者 相关指令: ⅰ ls -ahl 查看文件的所有者 ⅱ chown 用户名 阅读全文
posted @ 2019-02-28 20:15 SpringCore 阅读(195) 评论(0) 推荐(0) 编辑
摘要:⒈gzip ①gzip 文件 压缩文件,只能将文件压缩为*.gz文件 ②gunzip 文件.gz 用于解压文件 ⒉zip ①zip [选项] xxx.zip 需要压缩的内容 压缩文件和目录 常用选项: -r:递归压缩,即压缩目录 ②unzip [选项] xxx.zip 解压缩文件 常用选项: -d< 阅读全文
posted @ 2019-02-28 19:34 SpringCore 阅读(245) 评论(0) 推荐(0) 编辑
摘要:⒈find [搜索范围] [选项] find指令将从指定目录下递归的遍历其各个子目录,将满足条件的文件或者目录显示在终端 选项说明: ⒉locate 搜索文件 locate指令可以快速定位文件路径,locate指令利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件,lo 阅读全文
posted @ 2019-02-28 19:22 SpringCore 阅读(427) 评论(0) 推荐(0) 编辑
摘要:⒈date [Options] 显示/设置当前日期 基本语法: date 显示当前时间 date +"%Y" 显示当前年份 date +"%m" 显示当前月份 date +"%d" 显示当前是那一天 date +"%Y-%m-%d %H:%M:%S" 显示当前年月日时分秒 date -s 字符串时间 阅读全文
posted @ 2019-02-28 18:20 SpringCore 阅读(338) 评论(0) 推荐(0) 编辑
摘要:⒈pwd 显示当前工作目录的绝对路径 ⒉ls [Options] [目录或文件] 常用选项: -a:显示当前目录下所有的文件和目录,包括隐藏的。 -l:以列表的方式显示信息。 ⒊cd [目录的绝对路径] 切换工作目录到指定目录 常用参数: cd ~或者cd:切换到当前用户的主目录 cd ..:回到当 阅读全文
posted @ 2019-02-28 17:54 SpringCore 阅读(453) 评论(0) 推荐(0) 编辑
摘要:⒈man [命令或配置文件] 获得帮助信息 ⒉help 命令 获得shell内置命令的帮助信息 ⒊FQ找谷歌 阅读全文
posted @ 2019-02-28 17:05 SpringCore 阅读(169) 评论(0) 推荐(0) 编辑
摘要:0:关机 1:单用户(找回丢失密码)此模式下所有用户不需要密码即可登录,可用于重置密码 2:多用户状态没有网络服务 3:多用户状态有网络服务 ★ 4:系统未使用保留给用户 5:图形界面 ★ 6:系统重启 常用运行级别是3和5 修改默认的运行级别: ①修改/etc/inittab的id:5:initd 阅读全文
posted @ 2019-02-28 17:00 SpringCore 阅读(441) 评论(0) 推荐(0) 编辑
摘要:⒈增加用户组 ①groupadd 用户组名 ⒉删除用户组 ①groupdel 用户组名 ⒊修改用户所在的用户组 ①usermod -g 用户组 用户名 ★用户和用户组的相关文件 ①/etc/passwd文件 用户(user)的配置文件,记录用户的各种信息。 每行的含义:用户名:口令:用户标识号:用户 阅读全文
posted @ 2019-02-28 16:50 SpringCore 阅读(167) 评论(0) 推荐(0) 编辑
摘要:⒈添加用户 ①useradd [Options] 用户名 useradd -d 指定用户目录 用户名 useradd -g 用户组 用户名 ⒉指定/修改用户密码 ①passwd 用户名 ⒊删除用户(建议一般删除时保留用户主目录) ①userdel 用户名 删除用户但保留用户目录 ②userdel - 阅读全文
posted @ 2019-02-28 16:04 SpringCore 阅读(142) 评论(0) 推荐(0) 编辑
摘要:⒈注销 ①在命令行使用logout,此指令在图形界面无效。 阅读全文
posted @ 2019-02-28 15:43 SpringCore 阅读(386) 评论(0) 推荐(0) 编辑
摘要:⒈shutdown ①shutdown -h now 立即关机 ②shutdown -h 1 1分钟后关机 ③shutdown -r now 立即重启 ⒉halt 立即关机 ⒊reboot 立即重启 ⒋sync 把内存的数据同步到磁盘上 ★无论是重启还是关闭系统,都应首先执行sync命令,把内存中的 阅读全文
posted @ 2019-02-28 11:58 SpringCore 阅读(331) 评论(0) 推荐(0) 编辑
摘要:⒈Vi和Vim的三种模式 ①正常模式 在正常模式下可以使用快捷键 默认进入的是正常模式 ②编辑模式(插入模式) 在该模式下可以输入内容 按下I,i,O,o,A,a,R,r等任何一个字母之后才可以进入该模式,一般使用i。 ③命令行模式 在该模式下,可以使用相关指令完成读取、存盘、替换、离开Vim、显示 阅读全文
posted @ 2019-02-28 11:47 SpringCore 阅读(658) 评论(0) 推荐(0) 编辑
摘要:⒈下载 ⒉运行 ⒊参数介绍 -p 端口映射 --name 容器实例名称 -d 后台运行 8161 ActiveMQ客户端交互、管理控制台 61613 ActiveMQ 61616 ActiveMQ消息通讯端口 访问http://ip:8161 默认用户:admin 默认密码:admin ****20 阅读全文
posted @ 2019-02-27 20:31 SpringCore 阅读(1082) 评论(0) 推荐(0) 编辑
摘要:⒈下载 ⒉运行 ⒊参数介绍 -p 端口映射 --name 容器实例名称 -d 后台运行 2181 Zookeeper客户端交互端口 2888 Zookeeper集群端口 3888 Zookeeper选举端口 阅读全文
posted @ 2019-02-27 20:27 SpringCore 阅读(2638) 评论(0) 推荐(0) 编辑
摘要:1.下载 docker pull elasticsearch:8.16.3 2.运行 docker run -d \ --name es \ -e "http.host=0.0.0.0" \ -e "cluster.name=elasticsearch" \ -e "ES_JAVA_OPTS=-Xm 阅读全文
posted @ 2019-02-27 20:23 SpringCore 阅读(588) 评论(0) 推荐(0) 编辑
摘要:⒈下载 docker pull rabbitmq:3.8.3-management 带management为携带web管理界面的镜像 ⒉运行 docker run -d -p 5672:5672 -p 15672:15672 --name myrabbitmq rabbitmq:3.8.3-mana 阅读全文
posted @ 2019-02-27 20:17 SpringCore 阅读(929) 评论(0) 推荐(0) 编辑
摘要:⒈下载 docker pull redis:6.2.7 ⒉运行 docker run --restart=always -p 6379:6379 --name redis-6 -v /mnt/docker/redis/data:/data -v /mnt/docker/redis/conf/redi 阅读全文
posted @ 2019-02-27 20:09 SpringCore 阅读(233) 评论(0) 推荐(0) 编辑
摘要:⒈下载 docker pull mysql:5.7.40 ⒉运行 docker run -p 3306:3306 --name mysql -v /fanqi/mysql/conf:/etc/mysql/conf.d -v /fanqi/mysql/logs:/logs -v /fanqi/mysq 阅读全文
posted @ 2019-02-27 19:21 SpringCore 阅读(170) 评论(0) 推荐(0) 编辑
摘要:⒈是什么? DockerFile是用来构建Docker镜像的构建文件,是由一系列命令和参数构成的脚本文件。 ⒉步骤 ①手动编写一个符合规范的DockerFile文件(编写) ②使用docker build执行这个文件生成自定义镜像(构建) ③docker run(执行) * DockerFile = 阅读全文
posted @ 2019-02-27 13:30 SpringCore 阅读(373) 评论(0) 推荐(0) 编辑
摘要:⒈Docker容器中数据如何持久化? ①通过commit命令使容器反向为镜像 ②以容器数据卷的方式将数据抽离 ⒉容器数据卷的作用? ①容器数据的持久化 ②容器间继承、共享数据 ⒊能干嘛? 卷就是目录或文件,存在于一个或多个容器中,由Docker拦截到容器,但不属于联合文件系统,因此能够绕过联合文件系 阅读全文
posted @ 2019-02-27 13:23 SpringCore 阅读(360) 评论(0) 推荐(0) 编辑
摘要:⒈是什么? 镜像是一种轻量级、可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件,它包含运行某个软件所需的所有内容,包括代码、运行时、库、环境变量以及配置文件等。 引用 UnionFs(联合文件系统):union文件系统(UnionFs)是一种分层、轻量级并且高性能的文件系统,它支持对 阅读全文
posted @ 2019-02-27 12:06 SpringCore 阅读(2386) 评论(0) 推荐(0) 编辑
摘要:★根本前提:本地主机有镜像才能创建容器 ⒈docker run [Options] 镜像名称或镜像ID [Command] [Arg...] 用途:利用镜像创建容器实例 Options说明(常用):注意,有些命令是一个减号,有些是两个减号 --name="容器实例名称":为容器实例指定一个名称 -d 阅读全文
posted @ 2019-02-27 10:23 SpringCore 阅读(1312) 评论(0) 推荐(0) 编辑
摘要:⒈docker images [Options] 用途:列出本地主机上的镜像 Options说明: -a:列出本地所有的镜像(含中间映像层) -q:只显示镜像ID --digests:显示镜像的摘要信息 --no-trunc:显示完整的镜像信息 选项说明: REPOSITORY:表示镜像的仓库源 T 阅读全文
posted @ 2019-02-26 22:26 SpringCore 阅读(558) 评论(0) 推荐(0) 编辑
摘要:①docker version ②docker info ③docker --help 阅读全文
posted @ 2019-02-26 22:24 SpringCore 阅读(179) 评论(0) 推荐(0) 编辑
摘要:1.Docker有着比虚拟机更少的抽象层,由于Docker不需要Hypervisor实现硬件资源虚拟化,运行在Docker容器上的程序直接使用的都是实际物理机的硬件资源,因此在Cpu、内存利用率上Docker将会在效率上有明显优势。 2.Docker利用的是宿主机的内核,而不需要Guest OS,因 阅读全文
posted @ 2019-02-26 21:15 SpringCore 阅读(3934) 评论(0) 推荐(2) 编辑
摘要: 阅读全文
posted @ 2019-02-26 21:02 SpringCore 阅读(251) 评论(0) 推荐(0) 编辑
摘要:~~我使用的是阿里云的镜像加速。~~ #### 1.~~在阿里云申请自己的Docker镜像加速地址~~ [获取最新的公开加速地址] [~~阿里云镜像加速申请~~](https://cr.console.aliyun.com/cn-qingdao/mirrors "阿里云镜像加速申请") [最新公开镜 阅读全文
posted @ 2019-02-26 20:23 SpringCore 阅读(4188) 评论(0) 推荐(0) 编辑
摘要:2020/6/19补充,新版的Docker19.03安装方式可能与先前不同,如果本文指导下你的Docker仍未安装成功,请参照此文章https://www.cnblogs.com/fanqisoft/p/13162033.html 从 2017 年 3 月开始 Docker 在原来的基础上分为两个分 阅读全文
posted @ 2019-02-26 19:54 SpringCore 阅读(450) 评论(0) 推荐(0) 编辑
摘要:一.镜像(Image) Docker镜像(Image)就是一个只读的模板,镜像可以用来创建Docker容器,一个镜像可以创建很多容器。 类(class) 二.容器(Container) 1.Docker利用容器(Container)独立运行一个或一组应用 2.容器使用镜像创建的运行实例 3.容器可以 阅读全文
posted @ 2019-02-26 18:15 SpringCore 阅读(2473) 评论(0) 推荐(0) 编辑
摘要:1.理念 通过对应用组件的封装、分发、部署、运行等生命周期的管理,使用户的App(可以是一个Web应用或数据库应用等)及其运行环境能够做到“一次封装,处处运行”。 2.一句话总结 解决运行环境和配置问题的软件容器,方便做持续集成并有助于整体发布的容器虚拟化技术。 3.虚拟机技术缺点 ①占用资源多 ② 阅读全文
posted @ 2019-02-26 17:53 SpringCore 阅读(169) 评论(0) 推荐(0) 编辑
摘要:1.是什么? 主从复制,主机数据更新后根据配置和策略,自动同步到备机的master/slaver机制,master以写为主,slave以读为主。 2.能干嘛? ①读写分离 ②容灾恢复 3.复制三个配置文件并修改 3.如何设置主从关系? 首先,配从(库)不配主(库),可以通过info replicat 阅读全文
posted @ 2019-02-26 16:55 SpringCore 阅读(235) 评论(0) 推荐(0) 编辑
摘要:1.修改Redis配置文件 2.防火墙开启端口 阅读全文
posted @ 2019-02-26 16:04 SpringCore 阅读(228) 评论(0) 推荐(0) 编辑
摘要:Centos7.5默认使用firewalld作为防火墙 1.查看firewalld服务状态 2.查看firewalld的状态 3.开启、重启、关闭firewalld服务 4.查看防火墙规则 5.查询、开放、移除端口 ⒍一些补充 阅读全文
posted @ 2019-02-26 15:59 SpringCore 阅读(6384) 评论(0) 推荐(1) 编辑
摘要:1.集群 Redis通过服务器配置实现集群 MemCache通过客户端驱动实现集群 2.持久化 Redis可以通过数据文件、日志文件持久化恢复数据 3.数据结构 Redis提供更高级的数据结构、队列、栈都提供支持。 4.线程 Redis单线程 MemCache多线程 阅读全文
posted @ 2019-02-25 18:52 SpringCore 阅读(353) 评论(0) 推荐(0) 编辑
摘要:本来要把Redis事务的笔记搬上来,结果在园中发现一篇特别详细的文章。 文章地址:https://www.cnblogs.com/kyrin/p/5967620.html 文章作者:kyrin so,我就直接照搬过来了,如有侵权请留言,我看到留言就会立即删除。 因为自己收藏的很多文章有些地址就失效了 阅读全文
posted @ 2019-02-25 18:09 SpringCore 阅读(361) 评论(0) 推荐(0) 编辑
摘要:一.是什么? AOF是以日志的形式来记录每个写操作,将Redis执行过的所有写操作记录下来(读操作不做记录),只许追加文件不可以改写文件,Redis启动之初会读取该文件重新构建数据,换言之,Redis重启的话就根据日志文件的内容将写操作指令从前到后执行一次以完成数据的恢复工作。 二.配置方式? 配置 阅读全文
posted @ 2019-02-25 13:56 SpringCore 阅读(590) 评论(0) 推荐(0) 编辑
摘要:一.是什么? 在指定的时间间隔内将内存中的数据集快照写入磁盘,也就是行话讲的Snapshot快照,它恢复时是将快照文件直接读到内存里。 Redis会单独创建(fork)一个子进程来进行持久化,会先将数据写入到一个临时文件中,待持久化过程都结束了,再用这个临时文件替换上次持久化好的文件,整个过程中,主 阅读全文
posted @ 2019-02-25 11:14 SpringCore 阅读(2472) 评论(0) 推荐(0) 编辑
摘要:Redis在源码包中存放了一个Redis配置实例文件,文件中对各个配置点进行了简单的介绍,我也通过这个文件来对Redis的一些配置进行一些简单介绍。 一.UNITS(单位)【了解】 1.Redis服务如果要指定配置文件,则配置文件的路径必须作为第一参数。eg:redis-server /path/t 阅读全文
posted @ 2019-02-23 13:20 SpringCore 阅读(686) 评论(0) 推荐(0) 编辑
摘要:1.库相关 select 索引 =》 选择库 dbsize =》 查询当前库中Key的数量 flushdb =》 清空当前库 flushall =》 清空所有库(建议不要用,除非你跑路) 2.Key相关 keys * =》 取出当前库所有Key exists {Key} =》 判断Key是否存在,存 阅读全文
posted @ 2019-02-22 17:17 SpringCore 阅读(226) 评论(0) 推荐(0) 编辑
摘要:1.String(字符串) String是Redis最基本的类型,一个Key对应一个Value。 String类型是二进制安全的,意思是Redis的String可以包含任何数据,比如jpg图片或者序列化的对象。 String类型是Redis最基本的数据类型,一个Redis中字符串Value最多可以是 阅读全文
posted @ 2019-02-22 15:37 SpringCore 阅读(733) 评论(0) 推荐(0) 编辑
摘要:1.单线程 单线程模型来处理客户端的请求,对读写等事件的相应是通过对epoll函数的包装来做到的,Redis的实际处理速度完全依靠主线程的执行效率。 Epoll是Linux内核为处理大批量文件描述符而作了改进的epoll,是Linux下多路复用IO接口select/poll的增强版本,它能显著提高程 阅读全文
posted @ 2019-02-22 15:23 SpringCore 阅读(176) 评论(0) 推荐(0) 编辑
摘要:*以Linux下安装Redis4.0.13为例 (1)、下载(下载地址二选一即可) 1.https://redis.io/ (Redis官网) 2.http://www.redis.cn/ (Redis中文网) (2)、安装 1.解压下载的源码包 2.安装编译所需环境(如已安装请忽略) Ubuntu 阅读全文
posted @ 2019-02-22 13:48 SpringCore 阅读(157) 评论(0) 推荐(0) 编辑
摘要:是什么? Redis(Remote Dictionary Server)远程字典服务器是完全开源免费的,用C语言编写,遵守BSD协议,是一个高性能的(Key/Value)分布式内存数据库,基于内存运行并支持持久化的NoSQL数据库,是当前最热门的NoSQL数据库之一,也被人们称为数据结构服务器。 R 阅读全文
posted @ 2019-02-22 11:44 SpringCore 阅读(164) 评论(0) 推荐(0) 编辑
摘要:(1)、下载 http://www.haproxy.org/#down (2)、解压 (3)、安装 1)、编译 2)、安装(指定目录) 3)、新建一个配置文件 4)、指定配置文件 阅读全文
posted @ 2019-02-20 20:05 SpringCore 阅读(652) 评论(0) 推荐(0) 编辑
摘要:1 var connectionFactory = new ConnectionFactory() 2 { 3 //HostName = "192.168.205.128", 集群不在此处声明 4 UserName = "guest", 5 P... 阅读全文
posted @ 2019-02-19 20:35 SpringCore 阅读(1125) 评论(0) 推荐(0) 编辑
摘要:RabbitMQ中队列有两种模式 1.默认 Default 2.镜像 Mirror 【类似于mongoDB,从一直在通过主的操作日志来进行同步】 *如果将队列定义为镜像模式,那么这个队列也将区分主从,从而做到了队列高可用。【通过一个master(主)和多个slave(从)组成】,消息发布到队列中将被 阅读全文
posted @ 2019-02-19 19:09 SpringCore 阅读(2261) 评论(0) 推荐(0) 编辑
摘要:前一篇搭建RabbitMQ集群(通用)只是把笔记直接移动过来了,因为我的机器硬盘已经满了,实在是开不了那么虚拟机。 还好,我的Linux中安装了Docker,这篇文章就简单介绍一下Docker中搭建RabbitMQ集群吧。当然,理念还是通用的,包括命令啥的。只是操作方式有所不同而已。 我将在今后的D 阅读全文
posted @ 2019-02-19 17:44 SpringCore 阅读(2176) 评论(0) 推荐(0) 编辑
摘要:RabbitMQ在Erlang node(节点)上 Erlang天生具有集群特性,非常好搭建集群,每一个节点(node)上具有一个叫erlang.Cookie的东西,也是一个标识符,可以互认。 1)、n台Linux的防火墙都是关闭的(推荐) 2)、erlang节点名称:【host映射】方便机器之间的 阅读全文
posted @ 2019-02-19 16:46 SpringCore 阅读(790) 评论(0) 推荐(0) 编辑
摘要:1【短链接】:BasicGet(String queue, Boolean autoAck) 通过request的方式独自去获取消息,断开式,一次次获取,如果返回null,则说明队列中没有消息。 隐患:每次获取消息都会创建channel。 优点:最安全的获取方式且性能不算太差。 2【长链接】: 1) 阅读全文
posted @ 2019-02-18 22:29 SpringCore 阅读(3661) 评论(0) 推荐(0) 编辑
摘要:懒队列:lazy Queue,即用到的时候才会加载,3.6.0及之后新添加的。当新添加数据后,不会将其放入到内存中,而是将其放入到磁盘中。 普通队列:1)、in-memory,数据直接放入到内存中。 2)、on-desk,将数据放入到内存中的同时,还会将消息放到磁盘中,当内存压力升高或GC需要回收内 阅读全文
posted @ 2019-02-18 18:30 SpringCore 阅读(1625) 评论(0) 推荐(0) 编辑
摘要:AMQP协议:是一个金融级的消息队列,确保消息万无一失 1、消息发布端的确认 手动确认消息是否已经发送 场景:发布消息到RabbitMQ中,我们需要知道这个消息是否发布成功了。 *发布确认影响性能 confirm机制对性能的影响 < tx机制对性能的影响 1)、confirm机制 2)、tx机制 2 阅读全文
posted @ 2019-02-17 20:26 SpringCore 阅读(692) 评论(0) 推荐(0) 编辑
摘要:方法: 1、QueueDeclare 声明队列 3、QueueDeclarePassive 消极的队列声明 被用来检测队列是否存在,不存在则抛出异常,存在则不做任何操作。 参数: 1.x-message-ttl:Number 1个发布的消息在队列中存在多长时间后被取消(单位毫秒) *可以对单个消息设 阅读全文
posted @ 2019-02-16 20:09 SpringCore 阅读(4287) 评论(0) 推荐(0) 编辑
摘要:(1)、发布者 (2)、接收者 阅读全文
posted @ 2019-02-16 19:42 SpringCore 阅读(992) 评论(0) 推荐(0) 编辑
摘要:(1)、引入依赖 RabbitMQ.Client (2)、编写发布者代码 (3)、编写消费者代码 阅读全文
posted @ 2019-02-16 19:02 SpringCore 阅读(515) 评论(1) 推荐(0) 编辑
摘要:(1)、 /bin ☆ (/usr/bin、/usr/local/bin) 是Binary的缩写,目录存放着最经常使用的命令 (2)、 /sbin (/usr/sbin、/usr/local/sbin) S代表着Super User,存放着系统管理员使用的系统管理程序 (3)、 /home ☆ 存放 阅读全文
posted @ 2019-02-12 14:33 SpringCore 阅读(166) 评论(0) 推荐(0) 编辑
摘要:基本3个就可以了 阅读全文
posted @ 2019-02-12 13:34 SpringCore 阅读(286) 评论(0) 推荐(0) 编辑
摘要:①桥连接:Linux可以和其它的系统通信,但可能会造成IP冲突(分配当前网关下的IP地址) ②NAT:网络地址转换方式,Linux可以访问外网,不会造成IP冲突(将当前物理机作为网关,分配IP地址) ③主机模式:将当前Linux作为一个独立的主机,不能访问外网 推荐使用NAT模式 阅读全文
posted @ 2019-02-12 13:20 SpringCore 阅读(113) 评论(0) 推荐(0) 编辑
摘要:① 1.sudo password root //给指定用户设置密码 2.sudo passwd root //给指定用户设置密码 ②su root //切换到指定用户 阅读全文
posted @ 2019-02-12 13:17 SpringCore 阅读(1626) 评论(0) 推荐(0) 编辑
摘要:Netty是一个异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端,它极大的简化了TCP和UDP套接字服务器等网络编程。 BIO(Blocking IO):每一个请求,一个Socket,一个线程,任务没完成之前线程都不会被释放,服务器不能处理大量请求。 NIO(Non-Bl 阅读全文
posted @ 2019-02-12 13:13 SpringCore 阅读(691) 评论(0) 推荐(0) 编辑
摘要:RPC同步调用流程:(异步另说) 1)服务消费方(Client)以本地的调用方式调用远程服务。 2)客户端代理(Client Stub)接收到调用后负责将方法、参数等组装成能够进行网络传输的消息体。 3)客户端代理(Client Stub)找到服务地址,将消息发送到服务端。 4)服务端代理(Serv 阅读全文
posted @ 2019-02-11 21:07 SpringCore 阅读(186) 评论(0) 推荐(0) 编辑
摘要:简介:Hystrix旨在通过控制那些访问远程系统、服务和第三方库的节点从而对延迟和故障提供更强大的容错能力,Hystrix具备拥有回退机制和断路器功能的线程和信号隔离、请求缓存和请求打包以及监控和配置等功能。 1)、在pom文件中导入依赖(服务提供者和服务消费者都需要导入) 2)、在主程序启动类上添 阅读全文
posted @ 2019-02-11 19:47 SpringCore 阅读(2227) 评论(0) 推荐(0) 编辑
摘要:当一个服务调用另一个远程服务出现错误时的外观 Dubbo提供了多种容错方案,默认值为failover(重试) 1)、Failover Cluster(默认) 失败自动切换,当出现失败,重试其他服务器,通常用于读操作,但重试会带来更长延迟,可以通过属性retries来设置重试次数(不含第一次) 2)、 阅读全文
posted @ 2019-02-11 19:28 SpringCore 阅读(555) 评论(0) 推荐(0) 编辑
摘要:当服务器压力剧增的情况下,根据实际业务情况及流量,对一些服务和页面有策略的不处理或简单处理,从而释放服务器资源以保证核心业务正常运作或高效运作。 可以通过服务降级功能临时屏蔽某个出错的非关键服务并定义降级后的返回策略。 Dubbo支持两种服务降级策略 1)、mock=force:return+nul 阅读全文
posted @ 2019-02-11 19:04 SpringCore 阅读(1064) 评论(0) 推荐(0) 编辑
摘要:在集群负载均衡时,Dubbo提供了4种均衡策略,默认为Random(随机调用) 负载均衡策略: 1)、Random LoadBalance(随机,按照权重的设置随机概率) 2)、RoundRobin LoadBalance(轮询,按照权重设置轮询比率) 3)、LeastActive LoadBala 阅读全文
posted @ 2019-02-10 21:42 SpringCore 阅读(2030) 评论(0) 推荐(0) 编辑
摘要:高可用:通过设计减少系统不能提供服务的时间 (1)、zookeeper宕机 原因:zookeeper宕机 现象:zookeeper注册中心宕机,还可以消费dubbo暴露的服务。 健壮性: 监控中心宕掉不影响使用,只是丢失部分采样数据。 数据库宕掉后,注册中心仍能通过缓存提供服务列表查询,但不能注册新 阅读全文
posted @ 2019-02-10 21:18 SpringCore 阅读(369) 评论(0) 推荐(0) 编辑
摘要:*必须首先导入dubbo-starter (1)、使用SpringBoot配置文件(application.properties或application.yml) (2)、使用dubbo.xml配置文件的方式 1)、编写xml配置文件(以服务提供者配置文件为例) 2)、在SpringBoot主程序启 阅读全文
posted @ 2019-02-10 21:05 SpringCore 阅读(19776) 评论(0) 推荐(0) 编辑
摘要:在远程调用服务提供者的实现之前,如果需要做一些参数验证、缓存、判断、小功能等等,满足要求再调用服务提供者的远程服务,则我们可以通过编写一个本地存根来实现这种功能。 (1)、在公共项目中或服务消费者项目中编写一个远程接口的本地存根实现。 (2)、在服务消费者配置文件中配置本地存根 阅读全文
posted @ 2019-02-10 18:57 SpringCore 阅读(2134) 评论(0) 推荐(0) 编辑
摘要:当服务提供者提供的服务接口出现不兼容升级时,可以设置版本号,使用多个版本号(version)进行过渡。 1)、服务提供者配置文件 2)、服务消费者配置文件 阅读全文
posted @ 2019-02-10 13:00 SpringCore 阅读(3531) 评论(0) 推荐(0) 编辑
摘要:服务超时后重试次数【retries】,不包含第一次调用,0代表不重试 *我们应该在幂等方法上设置重试次数【查询、删除、修改】,在非幂等方法上禁止设置重试次数。 ★幂等:指多次运行方法所产生的最终效果是一致的 阅读全文
posted @ 2019-02-10 12:40 SpringCore 阅读(4436) 评论(0) 推荐(0) 编辑
摘要:服务消费者引用服务提供者的服务时可能由于网络原因导致长时间未返回相应,此时大量的线程将会阻塞,引起性能下降等问题。可以通过引入服务超时来解决该问题 服务超时指服务在给定的时间内未返回相应将立即终止该请求,一般配合retries(重试次数)使用。单位毫秒,默认值1000 示例:服务消费者 配置优先级( 阅读全文
posted @ 2019-02-10 12:35 SpringCore 阅读(2221) 评论(0) 推荐(0) 编辑
摘要:Dubbo在启动时会检查服务提供者所提供的服务是否可用,默认为True。 (1)、单个服务关闭启动时检查(check属性置为false) 1)、基于xml文件配置方式 2)、基于注解配置方式 (2)、全部服务关闭启动时检查(通过配置服务消费者的统一规则来关闭服务检查) 1)、基于xml文件配置方式 阅读全文
posted @ 2019-02-10 12:16 SpringCore 阅读(1193) 评论(0) 推荐(0) 编辑
摘要:总结为: 1)、Java运行时虚拟机参数 eg:-Ddubbo.protocol.port=20880 2)、dubbo.xml || application.properties(SpringBoot) eg:<dubbo:protocol port="30880"/> 3)、dubbo.prop 阅读全文
posted @ 2019-02-10 11:55 SpringCore 阅读(1404) 评论(0) 推荐(0) 编辑
摘要:(1)、dubbo-admin(管理控制台) 1)、从https://github.com/apache/incubator-dubbo-ops下载解压 2)、修改dubbo-admin配置文件中zookeeper的注册地址 3)、使用Maven命令打包 mvn clean package 4)、使 阅读全文
posted @ 2019-02-09 21:31 SpringCore 阅读(7444) 评论(0) 推荐(0) 编辑
摘要:(1)、新建一个普通Maven项目,用于存放一些公共服务接口及公共的Bean等。 公共Bean: 公共服务接口: (2)、新建一个普通Maven项目,用作与服务提供者 1)、导入相关依赖 2)、编写服务提供者配置文件,新建provider.xml 3)、启动服务提供者 (3)、新建一个普通Maven 阅读全文
posted @ 2019-02-09 20:56 SpringCore 阅读(410) 评论(1) 推荐(0) 编辑
摘要:(1)、添加starter依赖 (2)、配置相关信息 *更多设置可以查看官网文档。 *监控管理请求映射表 *(3)、自定义健康状态指示器 1.编写一个指示器实现HealthIndicator接口 2.指示器的名称 xxxHealthIndicator 3.将自定义的指示器加入到容器中 阅读全文
posted @ 2019-02-09 16:34 SpringCore 阅读(755) 评论(0) 推荐(0) 编辑
摘要:(1)、新建一个普通Maven项目,用于存放一些公共服务接口及公共的Bean等。 项目结构: 公共Bean: 公共服务接口: (2)、新建SpringBoot项目用作与Eureka注册中心 1)、导入依赖(或者在SpringBoot初始化向导中勾选cloud Discovery =》 Eureka 阅读全文
posted @ 2019-02-09 16:13 SpringCore 阅读(4472) 评论(0) 推荐(1) 编辑
摘要:(1)、新建一个普通Maven项目,用于存放一些公共服务接口及公共的Bean等。 项目: 公共Bean: 公共服务接口: (2)、新建SpringBoot项目用作与服务提供者 1)、添加依赖 * dubbo-spring-boot-starter的版本与SpringBoot的版本之间有相应的对照关系 阅读全文
posted @ 2019-02-09 12:21 SpringCore 阅读(219) 评论(0) 推荐(0) 编辑
摘要:⒈添加starter依赖 ⒉使用配置类定义授权与定义规则 ⒊编写控制器类(略) ⒋编写相关页面 阅读全文
posted @ 2019-02-09 11:04 SpringCore 阅读(2384) 评论(0) 推荐(0) 编辑
摘要:(1)、导入starter依赖 (2)、配置相关属性 (3)、使用JavaMailSenderImpl发送邮件 *我在测试代码的过程中发生了javax.mail.MessagingException: Could not connect to SMTP host: smtp.163.com, por 阅读全文
posted @ 2019-02-09 10:31 SpringCore 阅读(6265) 评论(1) 推荐(0) 编辑
摘要:(1)、异步任务 (2)、定时任务 cron表达式: 0-7或SUN-SAT 0,7代表SUN 特殊字符对照表 阅读全文
posted @ 2019-02-08 21:21 SpringCore 阅读(221) 评论(0) 推荐(0) 编辑
摘要:(1)、添加starter依赖 (2)、配置相关属性 *cluster-name可以在ip:9200里面查看 *SpringDataElasticSearch与ES版本之间有相应的适配关系,低版本的SpringDataElasticSearch不兼容高版本的ES。 解决方案: 1.升级SpringB 阅读全文
posted @ 2019-02-08 20:24 SpringCore 阅读(10241) 评论(0) 推荐(1) 编辑
摘要:(1)、添加依赖 (2)、配置文件中配置相关属性 (3)、使用JestClient操作ES 阅读全文
posted @ 2019-02-06 20:15 SpringCore 阅读(3026) 评论(0) 推荐(0) 编辑
摘要:(1)、导入starter依赖 (2)、在配置文件中配置rabbitmq相关属性 (3)、配置rabbitmq使用json进行消息的序列化(默认使用JDK进行消息的序列化) (4)主程序类添加@EnableRabbit注解开启基于注解的RabbltMQ模式 (5)、使用AmqpAdmin创建和删除Q 阅读全文
posted @ 2019-02-06 19:45 SpringCore 阅读(433) 评论(0) 推荐(0) 编辑
摘要:(1)、添加starter依赖 (2)、配置相关信息 (3)、配置类 (4)、主程序类使用@EnableJms注解开启基于注解的Jms模式 (5)、使用JmsTemplate发送和接收消息 (6)、在service层所需方法上添加@JmsListener注解用于监听队列,当队列中新添加了消息那么此方 阅读全文
posted @ 2019-02-04 23:22 SpringCore 阅读(412) 评论(0) 推荐(0) 编辑
摘要:AMQP中消息的路由过程和Java开发者熟悉的JMS存在一些差别,AMQP中增加了Exchange和Binding的角色,生产者把消息发布到Exchange上,Binding决定发布到Exchange上的消息应该发送到那个队列上,消息最终到达队列并被消费者接收。 Exchange(交换器)类型 Ex 阅读全文
posted @ 2019-02-04 13:00 SpringCore 阅读(858) 评论(0) 推荐(0) 编辑
摘要:Rabbit是一个由erlang开发的AMQP开源实现 核心概念: 1.Message(消息) 消息,消息是不具名的,它由消息头和消息体组成,消息体是不透明的,而消息头则由一系列的可选属性组成,这些属性包括routing-key(路由键)、Priority(相较于其他消息的优先权)、delivery 阅读全文
posted @ 2019-02-04 11:26 SpringCore 阅读(214) 评论(0) 推荐(0) 编辑
摘要:作用:提升系统异步通信,扩展解耦能力。 系统发送消息到消息代理接管,消息代理保证消息传送到指定目的地。 主要的两种形式: 1.队列(Queue):点对点通信 每一条消息只有一个接收者获取,当某条消息被一个接收者获取后,该消息将被移出队列,其余接收者无法获取该消息。 2.发布(Publish)/ 订阅 阅读全文
posted @ 2019-02-04 10:37 SpringCore 阅读(1142) 评论(0) 推荐(0) 编辑
摘要:(1)、添加依赖 (2)、配置Redis (3)、使用 配置好Redis后,缓存注解就会把数据缓存到Redis中了,如果我们想要手动添加缓存可以使用 StringRedisTemplate 仅仅操作字符串 RedisTemplate 操作Key-Value对象 **Redis默认使用Jdk序列化机制 阅读全文
posted @ 2019-02-03 21:09 SpringCore 阅读(461) 评论(0) 推荐(0) 编辑
摘要:(1)、使用@EnableCaching注解开启基于注解的缓存 (2)、对使用缓存的方法添加缓存注解 *缓存支持的SpEL表达式 当前方法调用使用的缓存列表 (如@cacheable(value={"cache1","cache2"}),则有两个cache) 阅读全文
posted @ 2019-02-03 18:21 SpringCore 阅读(234) 评论(0) 推荐(0) 编辑
摘要:作用:加速系统访问、提升系统性能 (1)、JSR107 Java Caching定义了5个核心接口,分别是CachingProvider、CacheManager、Cache、Entry、Expiry (2) Spring的缓存抽象接口 Spring从3.1开始定义了org.springframew 阅读全文
posted @ 2019-02-03 17:31 SpringCore 阅读(257) 评论(0) 推荐(0) 编辑
摘要:(1)、这个场景所需要的依赖 (2)、编写自动配置 @Configuration //指定这个类是一个配置类 @ConditionalOnxxx //在指定条件成立的情况下自动配置类生效 @AutoConfigureAfter //指定自动配置类的顺序 @Bean //给容器中添加组件 @Confi 阅读全文
posted @ 2019-02-02 21:11 SpringCore 阅读(306) 评论(0) 推荐(0) 编辑
摘要:(1)、需要配置在META-INF/Spring.factories 1.ApplicationContextInitializer 2.SpringApplicationRunListener (2)、只需要放到ioc容器中即可 1.ApplicationRunner 2.CommandLineR 阅读全文
posted @ 2019-02-02 20:03 SpringCore 阅读(2480) 评论(0) 推荐(0) 编辑
摘要:(1)、添加依赖 (2)、编写实体类 (3)、配置Jpa (4)、编写一个Dao接口来操作实体类对应的数据表(Repository) 使用@PageableDefault注解控制默认的分页参数 相关测试及调用可以借鉴https://www.cnblogs.com/fanqisoft/p/103566 阅读全文
posted @ 2019-02-01 20:24 SpringCore 阅读(557) 评论(0) 推荐(0) 编辑
摘要:(1)、添加依赖 (2)、编写Mapper接口类 (3)、编写Mybatis配置文件 (4)、编写Mapper接口对应的Mapper配置文件 (5)、在配置文件中配置mybatis 阅读全文
posted @ 2019-02-01 20:06 SpringCore 阅读(184) 评论(0) 推荐(0) 编辑
摘要:详情可以参考Mybatis官方文档 http://www.mybatis.org/spring-boot-starter/mybatis-spring-boot-autoconfigure/ (1)、引入Mybatis针对SpringBoot制作的Starter依赖 (2)、配置Mybatis设置 阅读全文
posted @ 2019-02-01 19:03 SpringCore 阅读(605) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示
more_horiz
keyboard_arrow_up light_mode palette
选择主题