自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 资源 (2)
  • 收藏
  • 关注

原创 kakfka入门基础

若不可以写入,则新建一个ProducerBatch,判断该消息大小是否超过客户端参数配置 batch.size 的值,不超过,则以 batch.size建立新的ProducerBatch,这样方便进行缓存重复利用;在发送之前,Sender线程将消息以 Map<NodeId, Deque> 的形式保存到InFlightRequests 中进行缓存,可以通过其获取 leastLoadedNode ,即当前Node中负载压力最小的一个,以实现消息的尽快发出。在给定的分区里,每个消息的偏移量都是唯一的。

2023-04-27 11:27:38 138

原创 kafka小记之延时队列及重试队列

Kafka在处理拉取请求时,会先读取一次日志文件,如果收集不到足够多(fetchMinBytes,由参数fetch.min.bytes配置,默认值为1)的消息,那么就会创建一个延时拉取操作DelayedFetch)以等待拉取到足够数量的消息。对于延时生产(消息)而言,如果在使用生产者客户端发送消息的时候将acks参数设置为-1,那么就意味着需要等待ISR集合中的所有副本都确认收到消息之后才能正确地收到响应的结果,或者捕获超时异常。

2023-04-26 09:00:00 400

原创 kafka之消息重复及解决方案

2. unclean.leader.election.enable 配置true,允许选举ISR以外的副本作为leader,会导致数据丢失,默认为false。1.启动kafka的幂等性,设置: enable.idempotence=true ,以及 ack=all 以及 retries > 1。1.ack设置为1或者设置为0,为0时不确认broke是否听到,为1时只是leader副本同步。原因:生产发送的消息没有收到正确的broke响应,导致生产者重试。生产者和broker阶段消息丢失。

2023-04-25 08:00:00 975

原创 kafka小记之一致性保证

一旦Leader接收到Follower发送的FETCH请求,它先从Log中读取相应的数据,给Follower返回数据前,先更新Follower的LEO。比较当前LEO值与FETCH响应中Leader的HW值,取两者的小者作为新的HW值。当尝试确定分区HW时,它会选出所有满足条件的副本,比较它们的LEO(包括Leader的LEO),并选择最小的LEO值作为HW值。Follower副本的LEO值就是日志的LEO值,每当新写入一条消息,LEO值就会被更新。Follower LEO的更新是有区别的。

2023-04-24 15:45:17 90

原创 kafka之可靠性保证小记

每个分区有多个副本,副本又分为Leader副本和Flower副本,Leader副本负责读写,FLower副本负责消息的备份及Leader副本所在Broke挂掉时,及时补位。Flower副本按同步情况又可分为ISR和OSR,ISR表示和Leader副本保持同步一致,OSR表示和Leader副本存在一定滞后,AR表示全部副本,AR=ISR+OSR。可靠性主要通过副本来保证,具体是通过ACK机制,即ACK=ALL(所有副本存储消息)来保证。

2023-04-23 15:30:45 43

原创 kafka系列之控制器小记

控制器遍历这些Follower副本分区,并确定谁应该成为新Leader分区,然后向所有包含新Leader分区和现有Follower的 broker 发送请求。当控制器发现一个 broker 加入集群时,它会使用 broker ID 来检查新加入的 broker 是否包含现有分区的副本。如果有,控制器就把变更通知发送给新加入的 broker 和其他 broker,新 broker上的副本分区开始从Leader分区那里消费消息,与Leader分区保持同步。Kafka集群上创建的主题,包含若干个分区。

2023-04-22 08:00:00 78

原创 kafka事务小记

消费者:自动提交属性(auto.commit)关闭,设置isolation.level:READ_COMMITTED或READ_UNCOMMITTED,不能使用同步或异步提交代码。生产者:配置transactional.id属性,enable.idempotence幂等性设置。

2023-04-21 15:29:39 127 1

原创 SpringSecurity入门实践二

3.2编写MyUserDetailsService并实现UserDetailsService接口,重写loadUserByUsername方法。3.3编写SecurityConfig,继承WebSecurityConfigurerAdapter类,重写配置方法。3.1根据数据库自动生成bean,mapper,service代码。3.4编写访问接口,获取当前用户进行验证。注:用户密码均为123456。3.5接口访问,查看权限。基于数据库的安全认证。三、用户详细信息配置。

2023-04-04 17:21:19 112 1

原创 SpringSecurity入门实践一

如果用户名是 “admin” ,密码是“ admin”,则将字符串"admin:admin" 使用Base64编码算法加密。HttpBasic模式真的是非常简单又简陋的验证模式,Base64的加密算法是可逆的,想要破解并不难。2. 授权: 判断用户拥有什么权限,可以访问什么资源. 解决的是"你能干什么?3.接口访问,出现登录窗口即表示生效,登录用户名(username)为。3. 安全防护,防止跨站请求,session 攻击等。常用的认证方式,也是默认的使用方式。1.认证: 用户登录, 解决的是"你是谁?

2023-04-02 16:10:11 75

逆向工程自用,用于数据库导出

数据库逆向操作,导出数据库中的内容及mapper文件,另附其他文件

2019-01-02

Eclipse Maven apache压缩包

Windows系统开发软件,包含服务器,MAVEN,Eclipse等开发工具

2018-10-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除