- 博客(86)
- 资源 (3)
- 收藏
- 关注
原创 RabbitMQ交换机与队列
当这样做的时候,我们需要明白一点,在AMQP 0-9-1中,消息的负载均衡是发生在消费者(consumer)之间的,而不是队列(queue)之间。延时队列,队列内部是有序的,最重要的特性就体现在它的延时属性上,延时队列中的元素是希望在指定时间到了以后或之前取出和处理,简单来说,延时队列就是用来存放需要在指定时间被处理的元素的队列。(7)x-dead-letter-routing-key:死信消息路由键,在消息发送到死信交换器时会使用该路由键,如果不设置,则使用消息的原来的路由键值。
2024-01-23 15:25:04 1677 1
原创 RabbitMQ发布确认
confirm 模式最大的好处在于他是异步的,一旦发布一条消息,生产者应用程序就可以在等信道返回确认的同时继续发送下一条消息,当消息最终得到确认之后,生产者应用便可以通过回调方法来处理该确认消息,如果 RabbitMQ 因为自身内部错误导致消息丢失,就会发送一条 nack 消息,生产者应用程序同样可以在回调方法中处理该 nack 消息。这种确认方式有一个最大的缺点就是:发布速度特别的慢, 因为如果没有确认发布的消息就会阻塞所有后续消息的发布,这种方式最多提供每秒不超过数百条发布消息的吞吐量。
2024-01-23 15:24:27 664
原创 rabbitMQ Work Queues
工作队列(又称任务队列)的主要思想是避免立即执行资源密集型任务,而不得不等待它完成。相反我们安排任务在之后执行。我们把任务封装为消息并将其发送到队列。在后台运行的工作进程将弹出任务并最终执行作业。当有多个工作线程时,这些工作线程将一起处理这些任务。
2024-01-23 15:24:03 1105
原创 RabbitMQ介绍
Broker:接收和分发消息的应用, RabbitMQ Server 就是 Message Broker:出于多租户和安全因素设计的,把 AMQP 的基本组件划分到一个虚拟的分组中,类似于网络中的 namespace 概念。当多个不同的用户使用同一个 RabbitMQ server 提供的服务时,可以划分出多个 vhost,每个用户在自己的 vhost 创建 exchange/ queue 等Connection: publisher/ consumer 和 broker 之间的 TCP 连接。
2024-01-20 20:35:07 1455
原创 消息队列介绍
MQ(message queue),本质是个队列,FIFO 先入先出,只不过队列中存放的内容是 message 而已,还是一种跨进程的通信机制,用于上下游传递消息。在互联网架构中,MQ 是一种非常常 见的上下游“逻辑解耦+物理解耦”的消息通信服务。使用了 MQ 之后,消息发送上游只需要依赖 MQ,不 用依赖其他服务。
2024-01-20 20:34:10 1194
原创 SpringBoot整合WebSocket
WebSocket 是基于 TCP 的一种新的网络协议。它实现了浏览器与服务器全双工通信——浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的连接, 并进行双向数据传输。HTTP是短连接WebSocket是长连接HTTP通信是单向的,基于请求响应模式WebSocket支持双向通信HTTP和WebSocket底层都是TCP连接**思考:**既然WebSocket支持双向通信,功能看似比HTTP强大,那么我们是不是可以基于WebSocket开发所有的业务功能?
2024-01-18 19:47:15 936
原创 Spring Task
是Spring框架提供的任务调度工具,可以按照约定的时间自动执行某个代码逻辑。定位:定时任务框架作用:定时自动执行某段Java代码。
2024-01-18 19:46:39 371
原创 小程序微信支付
支付大家应该都不陌生了,在现实生活中经常购买商品并且使用支付功能来付款,在付款的时候可能使用比较多的就是微信支付和支付宝支付了。在苍穹外卖项目中,选择的就是微信支付这种支付方式。要实现微信支付就需要注册微信支付的一个商户号,这个商户号是必须要有一家企业并且有正规的营业执照。只有具备了这些资质之后,才可以去注册商户号,才能开通支付权限。个人不具备这种资质,所以我们在学习微信支付时,最重要的是了解微信支付的流程,并且能够阅读微信官方提供的接口文档,能够和第三方支付平台对接起来就可以了。
2024-01-17 21:56:22 1029
原创 HttpClient
HttpClient 是Apache Jakarta Common 下的子项目,可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。发送HTTP请求接收响应数据当我们在使用扫描支付、查看地图、获取验证码、查看天气等功能时应用程序本身可能并未实现这些功能,都是在应用程序里访问提供这些功能的服务,访问这些服务需要发送HTTP请求,并且接收响应数据,可通过HttpClient来实现。
2024-01-12 18:41:32 1019
原创 JWT---JSON Web Token
JSON Web Token (JWT)是一个开放标准(RFC 7519),它定义了一种紧凑的、自包含的方式,用于作为JSON对象在各方之间安全地传输信息。传统的做法是将已经认证过的用户信息存储在服务器上,比如Session。HTTP协议是无状态的,也就是说,如果我们已经认证了一个用户,那么他下一次请求的时候,服务器不知道我是谁,我们必须再次认证。然而,Session是在服务器端的,而JWT是在客户端的。基于Token的身份认证是无状态的,服务器或者Session中不会存储任何用户信息。
2024-01-11 20:51:25 1042
原创 SpringBoot 操作Redis
Spring Data Redis是Spring的一部分,对Redis底层开发包进行了高度封装。在Spring项目中,可以使用Spring Data Redis来简化操作。配置Redis数据源详情。
2024-01-11 20:49:37 494
原创 SpringBoot AOP
自定义注解 @AutoFill/*** 自定义注解,用于标识某个方法需要进行功能字段自动填充*///数据库操作类型:UPDATE、INSERT。
2024-01-10 20:11:37 498 1
原创 Git常用命令
Git是一个分布式版本控制系统,可以快速高效地处理各种项目。版本控制是一种记录文件内容变化,以便将来查阅特定版本修订情况地系统。版本控制其实最重要的是可以记录文件修改历史记录,从而让用户能够查看历史版本,方便版本切换。
2022-12-30 22:55:55 879 2
原创 scala
Scala是一门以Java虚拟机(JVM)为运行环境并将面向对象和函数式编程的最佳特性结合在一起的 静态类型编程语言(静态语言需要提前编译的如:Java、c、c++等,动态语言如:js)。
2022-11-18 15:10:18 768
原创 hadoop分布式文件系统
分布式文件系统:管理网络中跨多台计算机存储的文件系统称为分布式文件系统。提出背景:当数据集的大小超过一台独立的物理计算机的存储能力时,就有必要对它进行分区(partition)并存储到若干台单独的计算机上。Hadoop的分布式文件系统称为HDFS(Hadoop Distributed Filesystem)。
2022-11-10 20:12:53 2560 1
原创 Yarn资源调度器
Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台,而MapReduce等运算程序则相当于运行于操作系统之上的应用程序。
2022-11-06 15:51:19 215
原创 MapReduce内核
(1)Read阶段:MapTask通过InputFormat获得的RecordReader,从输入InputSplit中解析出一个个key/value。 (2)Map阶段:该节点主要是将解析出的key/value交给用户编写map()函数处理,并产生一系列新的key/value。 (3)Collect收集阶段:在用户编写map()函数中,当数据处理完成后,一般会调用OutputCollector.collect()输出结果。
2022-11-06 15:48:35 87
原创 MapRecuce框架原理
(1)如果RedceTask的数量>getPatition的结果数,则会多产生几个空的输出文件part-r-000xx;(2)如果1
2022-11-06 15:47:02 253
原创 人工智能导论期末复习一
机器学习: 经典定义: 利用经验改善系统自身的性能机器学习专门研究计算机怎样模拟或实现人类的学习行为,以获得新知识或技能。
2022-11-05 15:53:27 508
原创 MapReduce概述
序列化就是把内存中的对象,转换成字节序列(或其他数据传输协议)以便于存储到磁盘(持久化)和网络传输。反序列化就是将收到字节序列(或其他数据传输协议)或者是磁盘的持久化数据,转换成内存中的对象。实现Writable接口反序列化时,需要反射调用空参构造函数重写方法 write 和 readFields 方法注意反序列化的顺序和序列化的顺序完全一致要想把结果显示在文件中,需要重写toString()
2022-11-04 16:51:47 549
原创 HDFS概述
HDFS(Hadoop Distributed File System),他是一个文件系统,用于存储文件,通过目录树来定位文件。它是分布式文件管理系统。
2022-10-27 14:29:35 204
原创 Hadoop集群配置
core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml四个配置文件存放在$HADOOP_HOME/etc/hadoop这个路径上,用户可以根据项目需求重新进行修改配置。
2022-10-27 14:26:41 131
原创 JDK与Hadoop安装
bin:存放对Hadoop相关服务(hdfs,yarn,mapred)进行操作的脚本。etc:Hadoop的配置文件目录,存放Hadoop的配置文件。share:存放Hadoop的依赖jar包、文档和官方案例。sbin:存放启动或停止Hadoop相关服务的脚本。lib:存放Hadoop的本地库。
2022-10-27 14:24:42 247
原创 Generator和Async简介
Generator和Async简介迭代器 Itreator迭代器Iterator 是 ES6 引⼊的⼀种新的遍历机制,同时也是⼀种特殊对象,它具有⼀些专⻔为 迭代过程设计的专有接⼝。每个迭代器对象都有⼀个next()⽅法,每次调⽤都返回⼀个当前结果对象。当前结果对象中有 两个属性:value:当前属性的值done:用于判断是否遍历结束, 当没有更多可返回的数据时,返回true。 每调⽤⼀次next()⽅法,都会返回下⼀个可⽤的值,直到遍历结束。生成器 Generator⽣成器是⼀种返回迭代器
2022-05-17 20:58:35 123
原创 Promise规范及应用
Promise规范及应用Promise规范术语promise 是⼀个有then⽅法的对象或者是函数,⾏为遵循本规范thenable是一个有then方法或者是函数value是promise状态成功时的值,也就是resolve的参数,包括各种数据类型, 也包括 undefined/thenable 或者是 promisereason是promise状态失败的值,也就是reject的参数,表示拒绝的原因exception 是一个使用throw抛出的异常值规范promise states
2022-04-27 21:19:44 402
原创 redis数据类型
Redis 键(key)keys * 查看当前库所有key (匹配:keys *1)exists key 判断某个key是否存在type key查看key的类型del key删除指定的key数据unlink key根据value选择非阻塞删除 仅将keys从keyspace元数据中删除,真正的删除会在后续异步操作expire key timetime秒钟:为给定的key设置过期时间ttl key 查看还有多少秒过期,-1表示永不过期,-2表示已过期select命令切换数据库dbsize查看当前数据库
2022-04-18 22:01:45 318
原创 SQL语句中LIKE逻辑运算符
SQL语句中LIKE逻辑运算符LIKELIKE主要运用在模糊查询子句中,如果操作数是一种模糊匹配,那么就返回true通配符%包含0个或多个字符的任意字符串%在前如:.....where name like '%周'模糊匹配以 周 结尾的名字%在后如:.....where name like '周%'模糊匹配以 周 开头的名字%前后都有如:.....where name like '%周%'模糊匹配名字中有 周 的名字_任意单个字符_在前,如:.....wh
2022-04-18 10:13:30 515
原创 Redis安装
Redis简介Redis是一个开源的key-value存储系统。 2. 和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。 3. 这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。 4. 在此基础上,Redis支持各种不同方式的排序。 5. 与memcached一样,为了保证效率,数据都.
2022-04-17 22:13:18 183
原创 NoSQL简介
NoSQL数据库简介技术的分类解决功能性的问题:java、jsp、RDBMS、Tomcat、HTML、Linux、JDBC、SVN解决扩展性的问题:Struts、Spring、SpringMVC、Hibernate、Mybatis解决性能的问题:NoSQL、java线程、Hadoop、Nginx、MQ、ElasticSearchWeb1.0Web1.0的时代,数据访问量很有限,用一夫当关的高性能的单点服务器可以解决大部分问题。Web2.0随着Web2.0的时代的到来,用户访问量大幅.
2022-04-17 21:24:10 98
原创 springboot解决跨域问题
springboot解决跨域问题CORS配置package com.music.musicserver.config;import org.springframework.context.annotation.Configuration;import org.springframework.web.servlet.config.annotation.CorsRegistry;import org.springframework.web.servlet.config.annotation.WebM
2022-03-28 21:51:16 209
原创 MyBatis-Plus
MyBatis-Plus简介MyBatis-Plus (简称 MP)是一个 MyBatis (opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。支持数据库任何能使用 MyBatis 进行 CRUD, 并且支持标准 SQL 的数据库,具体支持情况如下,如果不在下列表查看分页部分教程 PR 您的支持。MySQL,Oracle,DB2,H2,HSQL,SQLite,PostgreSQL,SQLServer,Phoenix,Ga.
2022-03-28 10:24:22 1203
原创 前端样式-卡片01
运用到的技术:html + css+ js样式:HTML<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-sc
2022-03-19 20:08:40 3148
原创 E-R模型应用示例
E-R模型应用示例例1-1:设有某计算机系统集成制造公司需要建立一个零配件物资管理系统。该公司组装不同型号计算机所用的零配件由不同供货商供给,存放在多个仓库中,由多名仓库管理员管理。试用E-R模型对该公司的零配件管理工作进行分析。根据该公司的零配件管理需求以及业务流程,涉及的实体型有:(1)仓库(仓库号,名称,面积,电话)(2)零件(零件号,名称,型号,单价)(3)供货商(供货商号,名称,地址,电话,传真,银行帐号)(4)计算机(型号,名称,成本,功能)(5)仓库管理员(职工号,姓名,年龄,
2022-03-07 15:02:25 1978
原创 概念数据模型(E-R模型)
概念数据模型(E-R模型)概念数据模型是现实世界第一层次的抽象,是数据库设计人员和用户交流的工具,因此要求概念数据模型一方面应该具有较强的语义表达能力,能够方便、直接地表达应用中的各种语义知识,另一方面应该简单、直观和清晰,能为不具备专业知识或者专业知识较少的用户所理解。概念数据模型的表示方法很多,其中最常用的是P.P.S. Chen于1976年提出的实体-联系方法(Entity Relationship Approach),简称E-R方法或E-R模型。E-R模型用E-R图来抽象表示现实世界中客观事物及
2022-03-07 14:29:02 15393
原创 Dos命令
Dos命令Dos命令使用基本步骤通过 win+r操作打开运行面板,输入cmd进入操作系统终端在终端输入具体的Dos命令回车执行Dos命令一般由 命令+参数组成,参数可以为0,也可为多个,命令名称与参数之间,多个参数之间一般用空格隔开常用的Dos命令time: 显示当前时间 需要手动退出才能执行下个命令ctrl+c: 退出当前执行的命令stutdown /s /t: 设置当前计算机定时关机 /s /t左右都要空格shutdown /a: 取消自动关机
2022-02-25 15:38:09 522
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人