【Dubbo3 终极特性】「云原生三中心架构」带你探索 Dubbo3 体系下的配置中心和元数据中心、注册中心的原理及开发实战(中)

承接上文

通过之前的【Dubbo3终极特性】「云原生三中心架构」带你探索 Dubbo3 体系下的配置中心和元数据中心、注册中心的原理及开发实战(上),让我们对Dubbo3的三中心架构体系有了一定的认识和了解。

Dubbo3的三中心部署架构

回顾一下部署架构(注册中心、配置中心、元数据中心),了解Dubbo3的三大中心化组件,它们各自的职责、工作方式。

微服务框架,Dubbo SDK跟随着微服务组件被部署在分布式集群各个位置,为了在分布式环境下实现各个微服务组件间的协作。

Dubbo定义了一些中心化组件

  • 注册中心:协调 Consumer 与 Provider 之间的地址注册与发现
  • 配置中心:
    • 存储Dubbo3启动阶段的全局配置,保证配置的跨环境共享与全局一致性。
    • 负责服务治理规则(路由规则、动态配置等)的存储与推送。
  • 元数据中心:
    • 接收Provider上报的服务接口元数据,为Admin等控制台提供运维能力(如:服务测试、接口文档等)。
    • 服务发现机制的补充,提供额外的接口/方法级别配置信息的同步能力,相当于注册中心的额外扩展。

上图完整的描述了Dubbo3微服务组件与各个中心的交互过程。

使用Nacos服务建立三中心体系

开展我们启动Nacos服务的搭建过程,此部分我们可以参考之前的文章:【深入浅出 Dubbo3 原理及实战】「SpringCloud-Alibaba 系列」基于 Nacos 作为注册中心进行发布 SpringCloud-alibaba 生态的 RPC 接口实战,进行部署对应的Nacos即可。

Nacos对接Dubbo的注册中心、配置中心和元数据中心

接下来我们需要针对于Nacos如何配置和对接我们的三中心体系进行相关的介绍和分析。Dubbo的注册中心、配置中心和元数据中心

Nacos如何对接Dubbo3的配置中心和元数据中心

针对于Nacos对接注册中心的方案之前我们已经对接过了,在这里我们就不过多的赘述,我们目前主要针对于配置中心以及元数据中心进行分析如何开发。

元数据中心

首先我们需要针对于SpringBoot的项目的配置进行配置添加dubbo3的配置,进行配置maven依赖。

zookeeper的元数据中心的配置(3.0.7的dubbo版本)
<dependency>
    <groupId>org.apache.dubbo</groupId>
    <artifactId>dubbo-metadata-report-zookeeper</artifactId>
    <version>3.0.7</version>
</dependency>
redis的元数据中心的配置(3.0.7的dubbo版本)
<dependency>
    <groupId>org.apache.dubbo</groupId>
    <artifactId>dubbo-metadata-report-redis</artifactId>
</dependency>
nacos的元数据中心的配置(3.0.7的dubbo版本)
<dependency>
    <groupId>org.apache.dubbo</groupId>
    <artifactId>dubbo-metadata-report-nacos</artifactId>
</dependency>

在这里我们选择的是nacos的配置,之后进行配置选择,针对于application.properties文件的配置如下:

元数据中心的applicaion.properties配置
dubbo.metadata-report.address=nacos://${nacos.address:127.0.0.1}:8848?username=nacos&password=nacos
dubbo.metadata-report.retry-times=5
dubbo.metadata-report.retry-period=5000
dubbo.metadata-report.cycle-report=false

对应的常用配置:

  • dubbo.metadata-report.address:元数据中心的地址,此时可以配置nacos的地址,nacos的地址为 nacos://ip:8848,代表dubbo会把nacos作为元数据中心,进行上报对应的接口信息和应用名称关系等。

  • dubbo.metadata-report.retry-times: 元数据中心的地址,如果上报数据之后,出现了失败场景,会进行重试的次数,我们可以配置5次。,默认100

  • dubbo.metadata-report.retry-period: 重试执行的间隔时间,单位为毫秒,重试周期,默认3000ms。

  • dubbo.metadata-report.cycle-report: 定时刷新,默认开启(true),可以通过设置cycleReport=false进行关闭。

即可完成元数据中心的对应的Dubbo3的对接配置。

配置中心

相比配置中心不支持redis,所以我们主要采用nacos去实现配置中心的挂载对接。

nacos的配置中心的配置(3.0.7的dubbo版本)
<dependency>
      <groupId>org.apache.dubbo</groupId>
      <artifactId>dubbo-configcenter-nacos</artifactId>
      <version>3.0.7</version>
 </dependency>
zookeeper的配置中心的配置(3.0.7的dubbo版本)
<dependency>
      <groupId>org.apache.dubbo</groupId>
      <artifactId>dubbo-configcenter-zookeeper</artifactId>
      <version>3.0.7</version>
 </dependency>
配置中心的applicaion.properties配置

zookeeper的配置

dubbo.config-center.address=zookeeper://${config-center.address:127.0.0.1}:2181

nacos的配置

dubbo.config-center.address=nacos://${nacos.address:127.0.0.1}:8848?username=nacos&password=nacos

即可完成对应的配置中心的配置机制

最后配置中心和元数据中心对接Nacos内部的配置分析,大家可以尝试配置一下看看对应的效果即可。下一篇文章会给大家展示效果。

本文来自博客园,作者:洛神灬殇,转载请注明原文链接:http://www.cnblogs.com/liboware/p/17057589.html,任何足够先进的科技,都与魔法无异。

本文转载于网络 如有侵权请联系删除

相关文章

  • 给你一个亿的keys,Redis如何统计?

    前言不知你大规模的用过Redis吗?还是仅仅作为缓存的工具了?在Redis中使用最多的就是集合了,举个例子,如下场景:签到系统中,一天对应一系列的用户签到记录。电商系统中,一个商品对应一系列的评论。交友系统中,某个用户的一系列的好友。Redis中集合的特点无非是一个Key对应一系列的数据,但是数据的作用往往是为了统计的,比如:交友系统中,需要统计每天的新增好友,以及双方的共同好友。电商系统中,需要统计评论列表中的最新评论。签到系统中,需要统计连续一个月的签到的用户数量。大型互联网应用中,数据量是巨大的,少说百万,千万,甚至是一个亿,比如电商巨头淘宝,交友巨头微信、微博;办公巨头钉钉等,哪一个的用户不是上亿?只有针对不同场景,选择合适的集合,统计才能更方便。聚合统计聚合统计指的是多个元素聚合的结果,比如统计多个集合的交集、并集、差集在你需要对多个集合做聚合统计的时候,Set集合是个不错的选择,除了其中无重复的数据外,Redis还提供了对应的API交集在上述的例子中交友系统中统计双方的共同好友正是聚合统计中的交集。在Redis中可以userid作为key,好友的userid作为value,

  • 什么是GoogleNet?什么是Inception?GoogleNet结构详解(2014年)

    googleNet是2014年的ILSVRC的冠军模型,GoogleNet做了更大胆的网络上的尝试,而不是像vgg继承了lenet以及alexnet的一切框架。GoogleNet虽然有22层,但是参数量只有AlexNet的1/12。GoogleNet论文指出获得高质量模型最保险的做法就是增加模型的深度,或者是它的宽度,但是一般情况下,更深和更宽的网络会出现以下问题:参数太多,容易过拟合,如果训练数据有限,则这一问题更加突出;网络越大计算复杂度越大,难以应用;网络越深,容易出现梯度消失问题总之更大的网络容易产生过拟合,并且增加了计算量【GoogleNet给出的解决方案】将全连接层甚至一般的卷积都转化为稀疏连接GoogleNet为了保持神经网络结构的稀疏性,又能充分利用密集矩阵的高计算性能,提出了名为Inception的模块化结构来实现此目的。依据就是大量文献都表明,将稀疏矩阵聚类为比较密集的子矩阵可以提高计算性能。(这一块我没有很明白,是百度到的知识,但是关键在于GoogleNet提出了Inception这个模块化结构,在2020年的今日,这个模块依然有巨大作用)1Inception这是

  • 浅谈机器学习-回归与分类的区别

    前言        机器学习的主要任务便是聚焦于两个问题:分类和回归。本文将浅谈下两者的区别。 区别        回归会给出一个具体的结果,例如房价的数据,根据位置、周边、配套等等这些维度,给出一个房价的预测。         分类相信大家都不会陌生,生活中会见到很多的应用,比如垃圾邮件识别、信用卡发放等等,就是基于数据集,作出二分类或者多分类的选择。浅层:两者的的预测目标变量类型不同,回归问题是连续变量,分类问题离散变量。 中层:回归问题是定量问题,分类问题是定性问题。 高层:回归与分类的根本区别在于输出空间是否为一个度量空间。 解释分类和回归的区别在于输出变量的类型。定量输出称为回归,或者说是连续变量预测; 定性输出称为分类,或者说是离散变量预测。举个例子: 预测明天的气温是多少度,这是一个回归任务; 预测明天是阴、晴还是雨,就是一个分类任务。应用场景不同1.回归问题的应用场景        回归问题通常是用来预测一个值,如预测房价、未来的天气情况等等,例如一个产品的实际价格为500元,通过回归分析预测值为499元,我们认为这是一个比较好的回归分析。一个比较常见的回归算法是线性回

  • 怎样修复 Web 程序中的内存泄漏

    每日前端夜话第287篇翻译:疯狂的技术宅 作者:NolanLawson 来源:nolanlawson正文共:4737字预计阅读时间:10分钟从服务器端渲染的网站切换到客户端渲染的SPA时,我们突然不得不更加注意用户设备上的资源,必须做很多工作:不要阻塞UI线程,不要使笔记本电脑的风扇疯狂旋转,不要耗尽手机的电池等。我们将交互性和“类应用程序”行为转换成了更好的新型问题,这些问题实际上并不存在在服务端渲染的世界中。这些问题中最主要的一个是内存泄漏。编码不正确的SPA可能很容易耗尽MB甚至GB的内存,从而继续吞噬越来越多的资源,即使它无辜地存在于后台标签中也是如此。这时页面可能开始变成龟速,或者浏览器终止了标签页,你将会看到熟悉的“Aw,snap!”页面。Chromepagesaying"Awsnap!Somethingwentwrongwhiledisplayingthiswebpage."(当然,服务端渲染的网站也可能会泄漏服务器端的内存。但是客户端泄漏内存的可能性很小,因为每次你在页面之间导航时浏览器都会清除内存。)Web开发文献中没有很好地解决内存泄漏问题的方法

  • 基于注解的SpringAOP源码解析(二)

    在上篇文章中我们搭建了一个阅读源码的demo工程,然后简单介绍了一下@EnableAspectJAutoProxy注解,这个注解最重要的功能就是为向Spring中注入了一个beanAnnotationAwareAspectJAutoProxyCreator,本篇文章就继续来撸AOP的源码前文已经简单提到了这个类的功能,不过这里还是要先看一下这个类的继承图观察类图可知,AnnotationAwareAspectJAutoProxyCreator这个类间接实现了BeanPostProcessor接口。还记得我们之前在对SpringIOC的源码进行解析时提到过,Spring在实例化Bean的前后会分别调用方法postProcessBeforeInstantiation和postProcessAfterInstantiation 而AOP的整体逻辑就是通过这两个方法来实现的postProcessBeforeInstantiation首先看一下这个postProcessBeforeInstantiation方法,它是在bean实例化之前调用的,主要是针对切面类。这个方法不在AnnotationA

  • Django 2.1.7 自定义form表单中上传图片、显示图片

    Django2.1.7Admin管理后台文章Django2.1.7Admin管理后台-注册模型、自定义显示列表字段 Django2.1.7Admin-列表页选项 Django2.1.7Admin-编辑页选项 Django2.1.7Admin-重写模板,自定义后台 Django2.1.7上传图片-Admin后台管理自定义form表单中上传图片上一篇章Django2.1.7上传图片-Admin后台管理说明了使用admin后台上传图片,本篇继续来看看如何自定义上传图片。1)打开assetinfo/views.py文件,创建视图pic_upload。defpic_upload(request): returnrender(request,'assetinfo/pic_upload.html')复制2)打开assetinfo/urls.py文件,配置url。urlpatterns=[ #ex:/assetinfo/pic_upload path('pic_upload',views.pic_upload,name='pic_upload'

  • 学术大讲堂 |(五)网络人工智能—5G时代的试金石

    学术大讲堂今天下午给大家分享一下网络人工智能方向的一些发展情况以及我们在这些方面做过的一些实践活动。首先是人工智能的发展历程,大家都比较熟悉,主要是三个历程,我想说的主要是最近第三次的人工智能发展浪潮,它是以深度学习为代表的发展时期。从1956年人工智能概念提出以来,业界尚未有统一权威的定义,针对第三轮人工智能的发展,我们怎样理解人工智能的内涵,一个是刚提到的,伴随着深度学习理论的爆发式应用,本轮的人工智能发展可以等同于深度学习代表的狭义人工智能,一个从产业角度提人工智能,包括底层的芯片、前期的大数据工作,以及在此之上的各种开源的人工智能框架和算法模型,在最上层,基于这些技术、面向特别应用场景的解决方案和服务,这些都是产业里人工智能会涉及到的内容。网络人工智能是最近两年才提出的说法,我们从2017年着手,2018年4月发布的网络人工智能发展白皮书,白皮书里首先定义了网络人工智能的概念:将人工智能技术应用在运营商网络中,通过网络的智能化或智能子系统替代或优化目前依靠人工进行的工作,使运营商能够更加便捷、高效地提供更加优质的网络服务。这个也是网络人工智能的内涵。另外,人工智能发展的特点,就

  • 【金融数据】挖掘数据价值,打造智能银行

    今天移动互联网正狂飙突进、网上购物平台和网上社交平台也方兴未艾,包括结构化数据、半结构化数据、非结构化数据的大数据爆炸式增长。早在2012年,大数据已经登上美国《纽约时报》的专栏封面,专栏称:“大数据时代已经降临,在商业、经济及其他领域中,决策将日益基于数据和分析,而非基于经验和直觉。”目前银行业在开展业务过程中积累了海量高价值数据,很多银行的数据量级已经超过100TB,其中非结构化正以加速度形式积累。因此,不管传统银行业是拥抱还是抗拒,大数据时代已经呼啸而来。深刻理解大数据的特征转变观念,重视大数据的巨大价值。2015年9月,国务院出台《促进大数据发展行动纲要》,指出:“数据已成为国家基础性战略资源,大数据已成为推动经济转型发展的新动力(310328,基金吧)。以数据流引领技术流、物质流、资金流、人才流,将深刻影响社会分工协作的组织形式。大数据产业正在成为新的经济增长点,成为重塑国家竞优势的新机遇”。《大数据时代》的作者舍恩伯格指出:“数据已经成为有价值的公司资产、重要的经济投入和新型的商业模式基石。虽然数据还没有被列入企业的资产负债表,但这只是时间问题。”MIT商学院的研究表明,决

  • ASP.NET MVC的SNS软件Spacebuilder

    SpacebuilderV4.0展示了全新构建的微博、贴吧、群组、日志、问答、相册、积分商城等社区功能,Spacebuilder开发团队却在V4.0正式版发布之际,突然给大家带来了一份大礼!——“Spacebuilder从此走向开源!”,Spacebuilder从v4.0开始步入开源之路,平台代码开放了90%。Spacebuilder步入开源之路文章提到官方开源的原因:Spacebuilder是拓宇专注6年发展的产品,日益暴露出一些影响产品快速发展的问题:知名度没有达到预期、难以形成以Spacebuilder为平台囊括第三方应用/插件/皮肤的生态系统,开放源代码将有助于解决这些问题。1.开源以后可以让更多的人,了解并使用到Spacebuilder,一个产品一旦使用的人多了发展就会更加迅速起来,这样对用户或开发团队都是很有意义的事。2.开源后第三方开发人员可以对Spacebuilder进行二次开发,开发出来以后的功能,还能够自己使用或出售给使用者,而Spacebuilder本身的“平台+应用”设计思路正好就与第三方开发者形成了,共生共赢的关系。3.当开源触发的Spacebuilder平台

  • Leetcode 223. Rectangle Area

    Findthetotalareacoveredbytwo rectilinear rectanglesina 2D plane.Eachrectangleisdefinedbyitsbottomleftcornerandtoprightcornerasshowninthefigure.Assumethatthetotalareaisneverbeyondthemaximumpossiblevalueof int.求像个矩形覆盖的面积之和。其实搞计算机视觉的时候会经常遇到这个问题,算IOU的时候就是这样。用A的面积+B的面积-相交的面积。计算相交面积之前判断一下是否相交即可。classSolution{ public: intcomputeArea(intA,intB,intC,intD,intE,intF,intG,intH){ intareaA=(C-A)*(D-B); intareaB=(G-E)*(H-F); if(C<E||A>G||B>H||D<F)returnareaA+areaB; intinter=(min(D,H)-max(B,F))*(min

  • 腾讯云区块链可信取证BTOE存证电子凭证查询api接口

    1.接口描述接口请求域名:btoe.tencentcloudapi.com。 用户通过存证编码向BTOE查询存证电子凭证信息。 默认接口请求频率限制:20次/秒。 APIExplorer提供了在线调用、签名验证、SDK代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成SDK调用示例。 2.输入参数以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见公共请求参数。 参数名称 必选 类型 描述 Action 是 String 公共参数,本接口取值:GetDepositCert。 Version 是 String 公共参数,本接口取值:2021-05-14。 Region 是 String 公共参数,详见产品支持的地域列表。 EvidenceId 是 String 存证编码 3.输出参数 参数名称 类型 描述 EvidenceId String 存证编码 EvidenceCert String 存证证书文件临时链接 RequestId String 唯一请求ID,每次请求都会返回。

  • 腾讯云对象存储快速入门

    相关资源 SDK源码下载请参见XMLAndroidSDK。 示例Demo请参见XMLAndroidSDKDemo。 SDK接口与参数文档请参见SDKAPI参考。 SDK文档中的所有示例代码请参见SDK代码示例。 SDK更新日志请参见ChangeLog。 SDK常见问题请参见:AndroidSDK常见问题。 说明: 如果您在使用XML版本SDK时遇到函数或方法不存在等错误,请先将XML版本SDK升级到最新版再重试。如果您仍在使用JSON版本SDK,请升级到XMLAndroidSDK。 准备工作 您需要一个Android应用,这个应用可以是您现有的工程,也可以是您新建的一个空的工程。 请确保您的Android应用目标为API级别15(IceCreamSandwich)或更高版本。 您需要一个可以获取腾讯云临时密钥的远程地址,关于临时密钥的有关说明请参考移动应用直传实践。 第一步:安装SDK方式一:自动集成(推荐) 说明: bintray仓库已经下线,COSSDK已经迁移到mavenCentral,引用路径和之前不同,您在更新的时候请使用新的引用路径。 使用mave

  • Codeforces Round #605 (Div. 3) 题解

    总结 都是些没啥意思的题 卡点:A开始想的贪心,B有点细节,E开始写假了 A 爆搜一下即可,写成循环更方便 #include<bits/stdc++.h> typedeflonglongLL; #definepbpush_back constLLmaxn=3e6+9,inf=0x3f3f3f3f; LLRead(){ LLx(0),f(1);charc=getchar(); while(c<'0'||c>'9'){ if(c=='-')f=-1;c=getchar(); } while(c>='0'&&c<='9'){ x=(x<<3ll)+(x<<1ll)+c-'0';c=getchar(); }returnx*f; } LLT,ans; LLa[maxn]; voidDfs(LLN){ if(N>3){ LLret(abs(a[1]-a[2])+abs(a[1]-a[3])+abs(a[2]-a[3])); ans=std::min(ans,ret);return; }

  • Java IO流-File类的使用示例-创建文件夹和文件的正确方法

    当创建一个文件时,比如:E:\\test\\test.txt,此时若文件夹test不存在,那么直接创建文件会出错,故首先要判断文件夹是否存在,不存在的话要首先创建文件夹。 publicclassFileTest{ publicstaticvoidmain(String[]args){ try{       Filefile=newFile("E:\\test\\test.txt"); if(!file.getParentFile().exists()){ file.getParentFile().mkdirs(); } if(!file.exists()){ file.createNewFile(); } }catch(IOExceptione){ //TODO e.printStackTrace(); } } }复制   生活不止眼前的苟且,还有诗和远方。。。

  • SpringBatch的初步了解

      一、SpringBatch是一个批处理的框架,作为一个Spring组件,提供了通过使用Spring的依赖注入来处理批处理的条件。   什么是批处理呢? 在现代企业应用当中,面对复杂的业务以及海量的数据,除了通过庞杂的人机交互界面进行各种处理外,还有一类工作,不需要人工干预,只需要定期读入大批量数据,然后完成相应业务处理并进行归档。这类工作即为“批处理”。比如近期金融项目中的撮合功能,不需要人工干预,自动对借款人和出借人进行匹配撮合,完成借贷功能。 从上面的描述可以看出,批处理应用有如下几个特点: 数据量大,少则百万,多则上亿的数量级。 不需要人工干预,由系统根据配置自动完成。 与时间相关,如每天执行一次或每月执行一次。 同时,批处理应用又明显分为三个环节: 读数据,数据可能来自文件、数据库或消息队列等 数据处理,如电信支撑系统的计费处理 写数据,将输出结果写入文件、数据库或消息队列等 因此,从系统架构上,应重点考虑批处理应用的事务粒度、日志监控、执行、资源管理(尤其存在并发的情况下)。从系统设计上,应重点考虑数据读写与业务处理的解耦,提高复用性以及可测试性。

  • 简易高效的Delphi原子队列

    本文提供Delphi一个基于原子操作的无锁队列,简易高效。适用于多线程大吞吐量操作的队列。 可用于Android系统和32,64位Windows系统。   感谢歼10和qsl提供了修改建议! 有如下问题: 1.必须事先足够大开辟内存,大到不会出现队列溢出了。 2.队列大小必须是2的幂 3.不能压入空指针 4.本程序还未经过工程应用考验 unitIocp.AtomQueue; interface Uses SysUtils, SyncObjs; Type TAtomFIFO=Class Protected FWritePtr:Integer; FReadPtr:Integer; FCount:Integer; FHighBound:Integer; FisEmpty:Integer; FData:arrayofPointer; functionGetSize:Integer; Public procedurePush(Item:Pointer); functionPop:Pointer; ConstructorCreate(Size:Integer);Virtual;

  • 关于XSS攻击

    1、XSS XSS(CrossSiteScripting)攻击全称跨站脚本攻击,为了不与CSS(CascadingStyleSheets)混淆,故将跨站脚本攻击缩写为XSS,XSS是一种经常出现在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中。 通俗的来说就是我们的页面在加载并且渲染绘制的过程中,如果加载并执行了意料之外的程序或代码(脚本、样式),就可以认为是受到了XSS攻击。 XSS更多是发生在web前端的一种漏洞,所以危害的对象主要还是前端用户。 2、XSS的危害 挂马。 盗取用户Cookie、账号等信息。 DOS(拒绝服务)客户端浏览器。 前端JS挖矿。 钓鱼攻击,高级的钓鱼技巧。 删除目标文章、恶意篡改数据、嫁祸。 劫持用户Web行为,甚至进一步渗透内网。 爆发Web2.0蠕虫。 蠕虫式的DDoS攻击。 蠕虫式挂马攻击、刷广告、刷浏量、破坏网上数据 3、XSS分类 反射型: 也叫非持久型XSS,交互数据一般不会被存在数据库里面,一次性,所见即所得。一般XSS代码出现在请求URL中,作为参数提交到服务器,服务器

  • eclipse设置默认打开Web 浏览器

    可以通过点击Window菜单并选择ShowView>WebBrowser,在选择的对话框的勾选Defaultsystemwebbrowser。  

  • aws ec2 开机自动配置登录密钥

    /etc/init.d/updatessh.sh #!/bin/bash if[!-d/home/ec2-user/.ssh];then mkdir-p/home/ec2-user/.ssh chmod700/home/ec2-user/.ssh fi #FetchpublickeyusingHTTP curl-shttp://169.254.169.254/latest/meta-data/public-keys/0/openssh-key>/tmp/my-key if[$?-eq0];then cat/tmp/my-key>/home/ec2-user/.ssh/authorized_keys chmod700/home/ec2-user/.ssh/authorized_keys rm/tmp/my-key fi复制  

  • Ubuntu20 ssh防止被爆破脚本分析,黑名单添加!

    我的系统是UBUNTU20.4 /var/log/secure并不存在,也许只是PC端是如此 在网上找到篇https://developer.aliyun.com/article/60931 原来在早在Ubuntu16.04.2后就不用/var/log/secure 实际操作才是王道,我们准备台虚拟机尝试ssh登陆看结果 systemctlrestartsshd.service sudonmap-Pn-sS192.168.224.*/24 复制   sshroot@192.168.224.131-p2222 复制 登录几次失败我们可以测下 sudolastb 复制        我们登录失败的次数都被记录在这上面。 sudocat/var/log/btmp 复制 lastlog 复制  最后一次登录的IP cat/var/log/lastlog 复制 cat/var/log/secure|awk'/Failed/{print$(NF-3)}'|sort|uniq-c|awk'{print$

  • 2.1 php与后端基础汇总

    ##apache和php的关系   参考https://blog.csdn.net/ziyifengfei/article/details/80078657 ##三次握手与四次挥手   参考https://www.cnblogs.com/AhuntSun-blog/p/12028636.html ## phpcookie与session   参考https://www.jb51.net/article/64969.htm   https://www.cnblogs.com/gzchenjiajun-php/articles/4898314.html   https://blog.csdn.net/xiaoxiaodongxie/article/details/51880544   https://www.cnblogs.com/haq5201314/p/8337636.html ##第三方cookie   参考https://blog.csdn.net/qq_36157085/article/details/107624035   ##关于token   参考htt

相关推荐

推荐阅读