- 博客(19)
- 收藏
- 关注
原创 三个服务注册中心对比
首先,先说明服务注册中心解决的问题服务注册和服务发现服务注册:服务实例将自身服务信息注册到注册中心。这部分服务信息包括服务所在主机IP和提供服务的Port,以及暴露服务自身状态以及访问协议等信息。服务发现:服务实例请求注册中心获取所依赖的服务信息。服务实例通过注册中心,获取到注册到其中的服务实例的信息,通过这些信息去请求他们提供的服务。除了这两个核心功能外,一般服务注册中心还需要监控服务实例的运行状态,负载均衡等问题。监控:服务实例一直处于动态的变化中,因此我们需要监控服务实例的健康状况,从
2021-07-21 18:15:38
467
原创 Springcloud 服务注册与发现(Consul)
Consul是一套开源的分布式服务发现和配置管理系统,由HashiCorp公司用Go语言开发。提供了微服务系统中的服务致力、配置中心、控制总线等功能。这些功能中的每一个都可以根据需要单独使用,也可以一起使用以构建全方位的服务网络,总之Consul提供了一种完整的服务网格解决方案。它具有很多优点:基于raft协议,比较简洁;支持健康检查,同时支持HTTP和DNS协议,支持跨数据中心的WAN集群,提供图形化界面,跨平台,支持Linux、Mac、Windows。Consul官方文档:https://www.
2021-07-21 15:48:23
233
2
原创 Springcloud 服务注册与发现(Zookeeper)
在前一篇中,提到服务注册中心Eureka,Eureka1.0版本,在当时大受欢迎,很快便发布了2.0版本,但是2.0版本将近三年,依然没有面世,背后的原因有很多,神仙相互不服,所以导致Eureka停更,后继版本也无望,所以,他的替代品,或者说比他更厉害的组件一个个跳出来。比如Zookeeper、Consul、Nacos,接下来就介绍一下Zookeeper。Zookeeper它是一个分布式协调工具,可以实现注册中心功能,需要下载相应的软件,下载链接放在文末。关闭Linux的防火墙后启动zookeeper
2021-07-21 13:23:10
237
原创 Springcloud 服务注册与发现(Eureka)
服务注册与发现 的意思是服务进程在注册中心注册自己的位置,客户端应用进程向注册中心发起查询,来获取服务的位置。服务注册与发现作用服务注册:服务进程在注册中心注册自己的位置,它通常注册自己的主机和端口号,有时还有身份验证信息、协议、版本号,以及运行环境的详细资料。服务发现:客户端应用进程向注册中心发起查询,来获取服务的位置。服务发现的一个重要作用就是提供一个可用的服务列表。服务注册、服务注册表、服务发现三者的关系是:通过服务注册机制将启动服务的信息上传至服务注册表,服务发现机制通过服务注册表实现
2021-07-21 12:34:33
283
原创 仓管系统(使用数组和类)
需求:增查:精准查询(使用货号进行精准查询、使用数量进行查询、使用类型进行查询)、模糊查询(使用名称中的某个字进行查询)改package com.wyh.practice;public class Good { int gno; String gname; String gtype; int gnum; public Good() { } public Good(int gno, String gname, String gtype
2021-05-22 17:33:55
195
原创 java内存管理机制(堆栈篇)
java把内存分为栈内存、堆内存、方法区(常量池、静态池)、程序计数、本地方法栈、执行引擎。今天,我就来聊一聊堆栈,在我的理解了,java算是一场堆栈的游戏,所有的东西,都是堆栈的各种形式。堆内存是存放对象的具体信息,在程序之中是由new来创建栈内存保存的是一块堆内存的地址,即通过地址找到堆内存对象信息New拥有开辟内存的最高级别Person p1=new Person();p1.name ="猪悟能";Person p2 = new Person();System.out.print
2021-05-22 11:29:49
219
原创 操作系统-存储管理
小编整理了一些关于存储管理的知识,第一次学操作系统的时候,这些问题我就没有搞清楚,还好,现在还有机会再去学一遍,终于搞清楚了,下面,开始介绍内容。我们之前提到分区化管理,就是我们在内存中划分一个区域,供用户调用内存时使用的,这种方式往往是把一整个程序调入到内存当中,这也就意味着如果说内存是4G大,用户空间2个G,如果我要运行2G以上的程序,是完全不可能的,甚至我要运行1G以上的程序都会出现错误,因为我们在运行程序时,他这个2G的空间很有可能是被打碎的,不是一整个2G空间,所以分成的N个片段,可能每个片段都
2021-03-17 17:24:25
147
原创 Linux小知识
最近学校排了linux课程,刚开始接触这个东西,感觉蛮有趣,就整理了一些小东西,希望对大家有所帮助。Linux是一种开放源代码和自由传播的计算机操作系统,linux这个词本身指标是Linux内核,但是人们已经习惯使用Linux来熊蓉整个基于Linux内核,并且使用GUN计划中众多外围程序的操作系统,Linux的内核原型是1991年由托瓦兹(linus Torvalds)写出来的。linux的优点:稳定的系统免费或少许费用安全性、漏洞快速修补多任务、多使用者相对比较不耗资源适合需要小核心程序
2021-03-13 16:07:32
197
原创 进程管理-PV操作
临界资源:进程间需要互斥方式对其进行共享的资源,如打印机、磁带机等临界区:每个进程中访问临界资源的那段代码称为临界区信号量:是一种特殊的变量未引入PV操作为了充分理解PV操作的含义,首先我们先将生产者与消费者进程中的PV操作去掉,我们以单缓冲区为例,也就是市场只有一个,只能容纳一个产品。生产者生产一号产品,并且送到缓冲区,市场便拥有一号产品,这时假使消费者进程并未进行,再次运行生产者进程,生产者进程生产看2号产品,此时要将2号产品放入市场中,会产生溢出的情况。假使开始时,消费者先执行,生产.
2021-03-09 17:55:50
994
5
原创 进程管理
进程的状态运行状态:进程所需要的所有资源都已配齐,并且给它CPU资源就绪状态:进程所需要的所有资源都已配齐,但并未给它CPU资源等待状态:除了没有CPU资源,还缺其他资源,比如说:还需要与外设进行交流等当其他资源都准备好,但CPU资源未给时,等待状态将转入就绪状态要注意的是等待状态不能直接到达运行状态,必须是进入就绪态,排队获取到最为核心的CPU资源,之后转为运行态运行状态之后会发生时间片轮转的情况,以获得CPU资源,因为所有的进程都会争相去获得CPU资源,所以要采取一定的手段来分配。一
2021-03-09 11:15:21
180
原创 存储器
Cache(高速缓冲存储器)⑴ Cache的功能:提高CPU的数据输入输出速率,突破冯.诺依曼瓶颈,即CPU与存储系统间数据传送带宽限制。⑵ 在计算机的存储系统体系中,Cache的访问速度是最快的层次。⑶使用Cache改善系统性能的依据是程序的局部性原理主存⑴ 随机存取存储器DRAM(Dynamic Ram,动态RAM)-SDRAMSRAM(Static RAM,静态)⑵只读存储器MROM(Mask ROM,拖掩式ROM)PROM(Programmable ROM ,一次可编程 RO.
2021-03-06 19:57:36
970
2
原创 流水线-流水线相关计算
流水线-流水线计算一个造车厂生产一辆车分为ABCD四道工序,1号车开始生产,A道工序结束,进入B道工序,再之后C道工序,然后D,最后完工,2号车开始生产,同上,结束后三号车生产,但随之而来的问题是,当A工序进行完后,进行B工序,对应的A工序的工作人员就会有一段时间的空窗期,这段空窗期时间很长,长到BCD全部结束,所以工厂的老板会血亏,流水线生产模式随之而来。1号车A工序结束进入B工序,则二号车立马进行A工序,待1号车进入C工序后,二号车进入B工序,3号车进入A工序,这样会有效避免工作人员的空窗期,会提
2021-03-06 17:18:42
11756
8
原创 浮点数
在学完码制之后,发现其实整数之间的运算并不复杂,而真正复杂的是浮点数之间的运算,在这里我简单说明一下浮点数的运算。浮点数的表示:N=M*Rⁿ,其中M成为尾数,n是指数,R是基数.例如 : 1000=1.0×10³,其中1.0 是尾数,3是指数也是阶码,10是基数。浮点数运算一般包括三步:⑴对阶对阶,即阶码相对,也就是将阶码化为一致的。求阶差 x=a×2ⁿ¹, y=b×2ⁿ²阶差∆j=n¹-n²当∆j=0时,n¹=n²,已对奇当∆j>0时,n¹>n²,此时有两种
2021-03-06 10:39:00
2425
1
原创 移码
移码移码表示法是在数X上增加一个偏移量来定义的,常用于表示浮点数中的阶码,如果机器字长为n,规定偏移量为2的n-1次,则移码的定义为:若X是纯整数,则[X]移=2的n-1次 +X ,-(2的n-1次)≤X<2的n-1次若X是纯小数,则[X]移=1+X。-1≤X<1若机器字长为8位,分别给出+1,-1,+127,-127,+45,-45,+0.5,-0.5的移码表示[+1]移=1 0000001[-1]移=0 1111111[+127]移=1 1111111[-127]移=
2021-03-05 16:34:02
12587
1
原创 补码
补码若机器字长n,则补码的定义如下:若X是纯整数,则[X]补=X,0≤X≤2的n-1次 -1[X]补=2的n次+X,-(2的n-1次)≤X≤0若X是纯小数,则[X]补=X,0≤X<1[X]补=X+2,-1≤X<0若机器字长为8位,分别给出+1,-1,+127,-127,+45,-45,+0.5,-0.5的补码表示[+1]补=1 0000001[-1]补=0 1111111[+127]补=0 1111111[-127]补=1 0000001[+45]补=0 010
2021-03-05 15:35:17
2760
7
原创 进制
进制的转化R进制转十进制使用按权展开的方法,具体方法为:将R进制数的每一位数值用R的K次形式表示,即幂的底数是R,指数是K,K与该位和小数点之间的距离有关。当该位位于小数点左边,K值是该位与小数点之间数码的个数,而当该位位于小数点右边,K值是负值,其绝对值是该位和小数点之间数码的个数加1。 小数点左边的次幂一次是0、1、2、3… 小数点右边的次幂依次是-1、-2、-3…例如二进制 10100.01 = 1* 2的四次+12的2次+12的-2次例如七进制 604.01=67的2次+47的0次+1
2021-03-05 14:42:34
180
2
原创 反码
反码表示法,如果机器字长为n,则反码表示如下:若X是整数[X]反=X,0≤X≤2的n-1次 -1;[X]反=2的n次 -1 ,-(2的n-1次 + X) ≤ X ≤0若X是小数[X]反=X,0≤X<1;[X]反=2- 2的-(n-1)次 +X ,- 1< X ≤0以上方法较为繁琐,不过是最为正确的方法,对于求原码的反码还有一些比较简便的方法,小编在这里告诉大家。对于整数而言,无论是其原码,还是其反码,都是本身的二进制数,当然这里是正整数。而负整数的反码则是其正整数
2021-03-03 16:16:50
1194
1
原创 原码
原码如果机器字长为n(即采用n个二进制位表示数据),则原码表示方法如下:整数原码当X是纯整数时[X]原= X, 0 ≤ X ≤2的n-1次 -1[X]原= 2的n-1次 + (X的绝对值) , -(2的n-1次 -1) ≤ X ≤ 0小数原码当X是小数时[X]原= X, 0 ≤ X < 1[X]原=2的0次+(X的绝对值) , -1 < X ≤ 0这些方法是书上给的方法,但是相对而言比较繁琐,小编给大家化简一下,其实不难。
2021-03-03 11:26:54
3615
2
转载 springboot项目中各层次之间的关系
**springboot项目中各层次之间的关系**model层model层级数据库实体层,往往也被称为entity层,pojo层。一般数据库一张表对应一个实体类,类中属性与表中字段一一对应。dao层dao层即数据持久层,也被称作mapper层(springboot+mabatis中会用到)。dao层的作用是访问数据库,向数据库发送SQL语句,完成数据的增删改查。service层service层即业务逻辑层。service层的作用是完成功能设计。service层调用dao层接口,接收d
2020-12-21 09:49:58
1734
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人