敲代码敲他Y

mq的面试题 20200908 1、如何使用 ActiveMQ 解决分布式事务? 在互联网应用中,基本都会有用户注册的功能。在注册的同时,我们会做出如下操作: 1. 收集用户录入信息,保存到数据库 2. 向用户的手机或邮箱发送验证码 等等… 如果是传统的集中式架构,实现这个功能非常简单:开启一个本地事务,往本地数据库中插入一条用户数据,发送 验证码,提交事物。 但是在分布式架构中,用户和发送验证码是两个独立的服务,它们都有各自的数据库,那么就不能通过本地事物 保证操作的原子性... 阅读详情

MQ

1.rabbitMq

        rabbitMq 几万级数据量,基于erlang语言开发,因此响应速度快些,并且社区活跃度比较活跃,可视化界面。缺点就是数据吞吐量相对与小一些,并且是基于erlang语言开发,比较重的问题难以维护。

Queue

消息队列,提供了FIFO的处理机制,具有缓存消息的能力。rabbitmq中,队列消息可以设置为持久化,临时或者自动删除。

  1. 设置为持久化的队列,queue中的消息会在server本地硬盘存储一份,防止系统crash,数据丢失
  2. 设置为临时队列,queue中的数据在系统重启之后就会丢失
  3. 设置为自动删除的队列,当不存在用户连接到server,队列中的数据会被自动删除

Exchange

类似于数据通信网络中的交换机,提供消息路由策略。rabbitmq中,producer不是通过信道直接将消息发送给queue,而是先发送给Exchange。一个Exchange可以和多个Queue进行绑定,producer在传递消息的时候,会传递一个ROUTING_KEY,Exchange会根据这个ROUTING_KEY按照特定的路由算法,将消息路由给指定的queue。和Queue一样,Exchange也可设置为持久化,临时或者自动删除。

Binding

所谓绑定就是将一个特定的 Exchange 和一个特定的 Queue 绑定起来。Exchange 和Queue的绑定可以是多对多的关系。

2.rocketMq

        rocketMq几十万级别数据量,基于Java开发,应对了淘宝双十一考验,并且文档十分的完善,拥有一些其他消息队列不具备的高级特性,如定时推送,其他消息队列是延迟推送,如rabbitMq通过设置expire字段设置延迟推送时间。又比如rocketmq实现分布式事务,比较可靠的。

RocketMQ是开源的消息中间件,它主要由NameServer,Producer,Broker,Consumer四部分构成。

NameServer:NameServer主要负责Topic和路由信息的管理,功能类似Dubbo的zookeeper。

Producer:消息生产者,负责产生消息,一般由业务系统负责产生消息。

Broker:消息中转角色,负责存储消息,转发消息。

Consumer:消息消费者,负责消息消费,一般是后台系统负责异步消费。
 

Sentinel熔断(降级)/限流

熔断参数:

资源名/熔断策略(慢调用比例/异常比例/异常个数)/熔断时长/请求数/统计时长/阈值

熔断机制是应对雪崩效应的一种微服务链路保护机制。当某个微服务不可用或者响应时间太长时, 会进行服务降级,进而熔断该节点微服务的调用,快速返回“错误”的响应信息。当检测到该节点微
服务调用响应正常后恢复调用链路。
限流
限流的目的防止恶意请求流量、恶意攻击,或者防止流量超过系统峰值。
流控的方式包括默认,关联,链路。阈值
Sentinel默认的流控处理就是【直接->快速失败】
实现BlockExceptionHandler可以自定义异常

单点登陆系统实现

为什么要用单点登陆系统

用户通过不同系统登陆,不同系统调用统一的认证授权服务,然后统一调用数据库.
解决方案1:    用户登陆成功以后,将用户登陆状态存储到redis数据库
说明:    用户登录成功后,会基于UUID生成一个token,然后与用户信息绑定在一起存储到数据库.
后续用户在访问资源时,基于token从数据库查询用户状态,这种方式因为要基于数据库存储和查询用户状态,所以性能表现一般.

解决方案2:用户登陆成功以后,将用户信息存储到token(令牌),然后写到客户端进行存储。
说明:    在这套方案中,用户登录成功后,会基于JWT技术生成一个token,用户信息可以存储到这个token中.

单点具体实现

1.定义Spring Security配置类,为了配置认证规则

2.定义配置类 public class Oauth2Config extends AuthorizationServerConfigurerAdapter

为了安全规则/配置检验规则/令牌生成规则


    后续用户在访问资源时,对token内容解析,检查登录状态以及权限信息,无须再访问数据库.

构建登陆系统模块需要实现---接受前端请求并传递给后端,将后端返回的数据绑定在Token上传给前端.

构建(JWT)配置类,用于生成令牌(具体就是实现一下AuthorizationServerConfigurerAdapter,重写他的方法)

三个方法:认证服务安全配置器/客户端详细服务配置器/认证服务终端配置器

配置:

1.对什么请求进行认证(默认是post)

2.对用户信息(将来绑定到Token中)进行规定

别再手动敲页码了!Word分节符+域代码,搞定毕业论文页脚‘第X页/共Y页’ 本文详细介绍了如何利用Word分节符和域代码精准设置毕业论文页脚的'第X页/共Y页'格式。通过分节符划分文档逻辑部分,结合域代码控制页码统计范围,解决封面、目录等非正文部分被计入总页数的常见问题,实现专业化的页码管理系统。 阅读详情

相关推荐

【pyCharm Git】根据dev分支新建dev_y分支,本地也新建dev_y分支,并将代码提交到Gitlab上的新分支dev_y上。

根据dev分支新建dev_y分支,本地也新建dev_y分支,并将代码提交到Gitlab上的新分支dev_y上。

水w的博客 1514

CGB2005 0924 SpringCloud03 RabbitMQ简单模式+Hystrix降级熔断

上午 Hystrix服务说明 降级 还是向后调用 执行当前的一部分 Hystrix设计超时响应 是为了性能 为了反应迅速 熔断 直接不调用 向后返回 熔断条件(正常执行降级 除非意外过热 请求量过大) 降级操作的具体实现 添加依赖后 加注解 我们昨天的设置 延迟只要超过一秒 直接超时 返回降级结果 报错误提示 访问用户或者订单服务器的话 直接失败 因为没启动 自我实现 在ribbon06服务器加一个hystrix起步依赖 主启动类 主程序添加 @EnableC

qq_43765881的博客 487

写一个敲木鱼的程序

要编写一个敲木鱼的程序,你可以使用Python语言,结合pygame库来处理图形和声音。在这个程序中,我们创建了一个名为WoodenFish的类,它代表一个木鱼。每当鼠标点击木鱼时,它会播放一个音效,并将木鱼向下移动一定距离。如果木鱼移动到屏幕外,它的速度会反转,使其回到屏幕中央。请注意,为了使这个程序工作,你需要有一个名为ding.wav的音效文件,以及一个名为fish.png的木鱼图像文件。这些文件应该位于你的Python脚本所在的同一目录中。

weixin_45995698的博客 1877

Sentinel 为 RocketMQ 服务保驾护航

在 Apache RocketMQ 中,当消费者去消费消息的时候,无论是通过 pull 的方式还是 push 的方式,都可能会出现大批量的消息突刺。如果此时要处理所有消息,很可能会导致系统负载过高,影响稳定性。但其实可能后面几秒之内都没有消息投递,若直接把多余的消息丢掉则没有充分利用系统处理消息的能力。我们希望可以把消息突刺均摊到一段时间内,让系统负载保持在消息处理水位之下的同时尽可能地处理更多消息,从而起到“削峰填谷”的效果: 上图中红色的部分代表超出消息处理能力的部分。我们可以看到消息突刺往往都是

weixin_42073629的博客 945

Plot双y轴绘制常用代码

代码: %绘制双y图; x=0:0.001:5; figure('color',[1 1 1]); %将背景设置为白色 [hAx,hLine1,hLine2]=plotyy(x,SRFlateral,x,Dy); %这里的SRFlateral,Dy是从simulink导出到workspace的变量 title('The numerical changes of SRFlateral an...

吉大秦少游 1398

关于并网继电器的继电器自检逻辑及实现方式

对于常规的光伏并网逆变器来说,继电器控制至关重要。继电器一般位于逆变电感后,共模电感前,用于将逆变电压与电网电压脱开,一般国外有双继电器的安规强制认证要求,国内目前只需要单继电器要求(后续应该会有双继电器要求,个人感觉)

weixin_29982209的博客 2616

redis和rabbitmq实现队列的区别

队列:先进先出 redis队列: Redis不仅可作为缓存服务器,还可用作消息队列。它的列表类型天生支持用作消息队列。 由于Redis的列表是使用双向链表实现的,保存了头尾节点,所以在列表头尾两边插取元素都是非常快的。 所以可以直接使用redis的list实现消息队列,只需简单的两个指令lpush和rpop或者rpush和lpop。 rabbitmq使用参考网址: Python之操作Rab...

weixin_45135702的博客 899

浙江大学Fast-Lab从0制作自主空中机器人公开课教程补充及部分注意事项(适用于ubuntu系统和ROS零基础)

浙江大学Fast-Lab从0制作自主空中机器人公开课纯萌新补充(适用于从没接触过ubuntu系统),记录了一些自己不会的地方以及踩过的坑

qq_39986834的博客 2986

两个linux shell小技巧,助你提高敲命令效率!

技巧一.sudo! 1.在linux命令行敲命令时,你是不是也碰到过这种情况:敲了一长串命令,潇洒的一回车,结果发现Permission denied。 当你意识到需要在行首加一个sudo,用root用户执行该命令,这时你会怎么做?通常的做法可能是这样的: 1.按↑重新显示之前的命令 2.fn +←j将光标定位到行首 3.敲个sudo,然后回车。 真的需要这么麻...

anma5413的博客 224

深入理解「二进制掩码」:从原理到实践

二进制掩码本质上是一个二进制数,用于通过位操作(如与、或、非、异或等)选择性地操作目标数据的某些位。掩码的每一位(bit)可以看作一个“开关”,决定是否对目标数据的对应位进行操作。二进制掩码是位操作的灵魂,掌握它不仅能提升代码效率,还能解锁许多高级编程技巧。从基础的位提取到复杂的子集枚举,掩码的应用无处不在。希望本文的讲解和代码示例能帮助你快速上手,并在实际项目中灵活运用。如果你有更多关于掩码的疑问或应用场景,欢迎在评论区留言交流!

m0_73494933的博客 2433

FPGA高速接口Aurora8B/10B协议实战:从IP核配置到数据流优化

本文详细介绍了FPGA高速接口Aurora8B/10B协议的实战应用,从IP核配置到数据流优化的全流程。通过Aurora8B/10B协议,开发者可以在FPGA间实现高效的数据传输,适用于高速接口设计。文章涵盖了协议基础、IP核配置、AXI4-Stream接口实战技巧以及性能优化策略,帮助读者快速掌握这一关键技术。

weixin_29280657的博客 268

敲代码的小技巧

敲代码的小技巧 有部分人打字一般用:一阳指,二指禅 1、手介绍: 大拇指 食指:指人指事 中指:赞美别人的 无名指:用来结婚离婚再结婚的 小拇指:表示可以勾引的 2、手指摆放位置 左手食指F 右手食指J 3、手指负责范围 左手食指:4RFV5TGB 左手中指:3EDC 左手无名指:2WSX 左手小拇指:1QAZ`以及左边全部 右手食指:7UJM6YHN 右手中值:8IK, 右手无名指:9OL. 右...

qq_46031627的博客 3433

伺服电机的位置控制模式:PP模式与CSP模式的比较

在轮廓位置模式下,上位机给定目标绝对位置(或相对位置)、速度、加速度等参数,伺服内部的轨迹发生器根据这些参数生成目标位置曲线指令,通过伺服驱动器内部实现三环控制(位置环、速度环、力矩环)。如果还不理解,不妨看看下面的类比:轮廓位置模式中,上位控制器对伺服电机说,我给你个位置,怎么去哪,走那条路,那是你自己的事,这个时候伺服电机是有自己的思想的。同期同步位置模式红,上位机控制器对伺服电机的管理就和 严格,除了告诉你目标位置,走那条路都是控制器说的算,伺服电机就是个没有灵魂的工具。重点关注,轮廓位置模式。

m0_49968063的博客 5810

敲砖块 动态规划

敲砖块 题目描述 在一个凹槽中放置了N层砖块,最上面的一层有N块砖,从上到下每层依次减少一块砖。每块砖都有一个分值,敲掉这块砖就能得到相应的分值,如图所示。 如果你想敲掉第i层的第j块砖的话,若i=1,你可以直接敲掉它,若i>1,则你必须先敲掉第i-1层的第j和第j+1块砖。 你现在可以敲掉最多M块砖,求得分最多能有多少。 输入格式 输入文件第一行有两个正整数N和M; 接下来的N行,描述这N层砖...

Bell的博客 893

AT32F403A ADC通道管理与转换模式实战解析

本文深入解析AT32F403A微控制器的ADC模块,重点阐述其通道管理机制与四种转换模式(序列模式、抢占自动转换模式、反复模式、分割模式)的实战应用。通过详细的配置步骤与代码示例,帮助开发者高效实现模拟数字转换,优化数据采集性能与系统响应。

sky77的博客 279

华为OD机试双机位C卷-几何平均值最大子数组(Py/Java/C/C++/Js/Go)

华为OD机试(机考)2026双机位C卷 【几何平均值最大子数组】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试真题【几何平均值最大子数组】。

qq_45776114的博客 1367

今天又是上网课划水敲代码学习的一天

学校在辽宁,从3.13日起学校实施封闭式管理,所以课程变为网课,且周末开始补17.18周的课,今天依旧7点起,简单洗漱,吃了点就来到教学楼里学习,不过到了上课点还需打开网课,有些课我是挂着直接不听的,有些课没办法必须还得听着点,有时候老师点名啊,回答问题,课堂小测之类的,前面刚敲完三子棋代码,正在学扫雷的代码,听得有点上头,迟到了2分钟,突然微信弹了出来,室友说 上课了,于是我才进去,老师还说疫情期间保证安全最好别外出,我说:我在教师学习呢,真的无语。 我昨天写的三子棋子试了几遍但没成果,代码应该没啥

buxiaoupup的博客 4306

SAP Clean Core 对传统 ABAP 开发人员来说意味着什么:机遇和挑战

SAP Clean Core是一种战略方法,旨在优化和现代化 SAP S/4HANA 系统,通过尽量减少定制,确保核心系统的稳定性、高效性和对云环境的兼容性。Clean Core 作为一种设计思路,致力于让 ERP 系统的核心功能保持简洁、规范,避免不必要的复杂化,最终维持一个标准化的核心,使系统更容易升级、性能更优越,同时支持快速的创新能力。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 611

P1437 [HNOI2004]敲砖块

P1437 [HNOI2004]敲砖块 题意: 在一个凹槽中放置了 n 层砖块、最上面的一层有 n 块砖,从上到下每层依次减少一块砖。每块砖都有一个分值,敲掉这块砖就能得到相应的分值,如下图所示: 14 15 4 3 23 33 33 76 2 2 13 11 22 23 31 如果你想敲掉第 i 层的第 j 块砖的话,若 i=1,你可以直接敲掉它;若 i>1,则你必须先敲掉第 i-1 层的第 j 和第 j+1 块砖。 你现在可以敲掉最多 m 块砖,求得

qq_35975367的博客 381

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

y++ 与++y

x = y++ (1)先用y,即x = y, (2)后y = y + 1 x = ++y (1)y = y + 1 (2)x = y

TsinLau的博客 5821

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Winform中实现ZedGraph的多条Y轴示例代码推荐

Winform中实现ZedGraph的多条Y轴示例代码推荐 【下载地址】Winform中实现ZedGraph的多条Y轴示例代码 本仓库提供了一个示例代码,展示了如何在Winform应用程序中使用ZedGraph库实现多条Y轴的功能。通过这个示例,您可以学习如何在同一个图表中显示多个Y轴,并根据不同的数据系列进行自定义配置...

gitblog_09723的博客 1007

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

前端敲代码工具

代码工具 工欲善其事,必先利其器。 以前敲代码没有智能联想先就忍了,现在都2020年了,推荐几款常用的工具 DreamWeaver DreamWeaver刚开始接触前端的时候我就是用这一款工具,这个软件初学者比较适合,这个软件上手快,用起来比较简便,几乎不需要什么配置。 1.用dreamweaver创建一个web项目 首先就是我们要新建一个站点就是一个工作区 2.点击新建,然后选择一个本地的文件...

Jy123_的博客 1024

如何敲代码

今天是2015.6.17学java的第二天,今天老师教的是如何写代码!        写代码必须要有编写代码的软件,也就是JDK,程序设计有五个步骤:分析、设计、编码实现、调试、维护。       这是写代码简单的流程:       import javax.swing.JOptionPane; public class shuzhi{     public static void

jiahao7的博客 1138

Echarts y轴相关配置

使用Echarts的坐标轴配置,如y轴位置,y轴偏移量、y轴刻度、y轴最大最小值、次刻度、轴间隔等;

蓑笠翁 3万+

python敲代码一

python手感练习小心情正文scikit_learn 很重要的机器学习库,建立在scipy之上 小心情 疫情在家待了好久,所在地湖北黄冈。每天沉迷与论文、欢乐斗地主和东华帝君之间,我可真花心,哈哈哈哈。 python工具类软件还是要多敲代码,不然眼睛说我会了,手又给你Pia!(o ‵-′)ノ”(ノ﹏<。)Pia!(o ‵-′)ノ”(ノ﹏<。)打脸。 BTW:喜欢Rstudio的原因是...

优快云sue的博客 866

pytorch代码解析:loss = y_hat - y.view(y_hat.size())

代码解析:pytorch中loss = y_hat - y.view(y_hat.size()) import torch y_hat = torch.tensor([[-0.0044], [-0.0015], [-0.0010], [-0.0053], [-0.0107], [ 0.0055], [-0.0073], [ 0.0070], [ 0.0041],

集电极 1499
上一篇: 电商项目介绍
下一篇: kafka 学习心得
HelloWouldH
博客等级 码龄5年 696粉丝 18原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值