- 博客(17)
- 资源 (1)
- 收藏
- 关注
原创 支持IP2REGION格式的ip库
纯真除了免费的社区版IP库外,还提供数据更加准确、服务更加周全的商业版IP地址查询数据。纯真围绕IP地址,基于 网络空间拓扑测绘 + 移动位置大数据 方案,对IP地址定位、IP网络风险、IP使用场景、IP网络类型、秒拨侦测、VPN侦测、代理侦测、爬虫侦测、真人度等均有近20年丰富的数据沉淀。我正在使用免费的纯真社区版IP库。纯真(CZ88.NET)自2005年起一直为广大社区用户提供社区版IP地址库,只要获得纯真的授权就能免费使用,并不断获取后续更新的版本。
2024-05-24 17:36:55
106
原创 RabbitMQ-Spring AMQP【翻译】4.1.2——Publisher Confirms and Returns及之后内容
可以通过设置属性为,属性为,来开启确认(使用correlation)和返回消息功能。当这些选项被设置时,实例被工厂创建并被包装成,用来处理回调。当获得此类channel时,客户端可以注册一个到Channel上。实现包含了将确认和返回消息路由到对应listener的逻辑。后续章节将会继续介绍这些功能。你也可以看在Scoped Operations有关更多背景信息,请参阅RabbitMQ团队题为Introduction Publisher Confirms的博客文章。连接工厂支持注册ConnectionL
2022-06-28 23:34:33
397
原创 Spring RabbitMQ配置多数据源——使用RoutingConnectionFactory详解
这里配置了两个不同的连接工厂,并且RoutingConnectionFactory的lookup key的指定为不同的业务。源码跟踪rabbitTemplate send方法obtainTargetConnectionFactory方法使用用户设置的(RabbitTemplate数量)SpEL表达式和message来计算出lookup key在查找对应的connectionFactory。这里我们没有单独配置。所以仍然得...
2022-06-16 19:08:36
1328
原创 RabbitMQ-Spring AMQP【翻译】4.1.2——Queue Affinity and the LocalizedQueueConnectionFactory
版本:2.2.4.RELEASE当在集群下使用HA队列时,为了更好的性能表现,你可能想连接master队列所在的物理broker。可以配置多个broker地址。当进行故障切换时,客户端会按顺序尝试连接。使用admin插件提供的REST API来测定master队列在哪个节点。然后它会创建(或从缓存中重用)一个仅仅连接那一个节点。如果连接失败,则确定新的主节点,并由消费者连接到该节点使用默认连接工厂进行配置,以防止无法确定队列的物理位置时,能够正常的连接到集群。是一个,使用队列名称作为lookup key 正
2022-06-12 00:39:10
181
原创 RabbitMQ-Spring AMQP【翻译】4.1.2——Connecting to a Cluster & Routing Connection Factory
版本:2.2.4.RELEASE如果要连接集群,请在配置属性:每当建立新连接时,基础的连接工厂降维尝试按照顺序连接每个host。从2.1.8开始,可以通过将属性设置为true,来达到随机挑选地址创建的目的。Routing Connection Factory从1.3版本开始,已经初次使用了。这个工厂提供了一种机制,可以配置映射多个ConnectionFactory,并在运行时通过查找键确定目标ConnectionFactory。通常,实现要检查线程绑定的上下文。未来方便起见,Spring AMQP提供
2022-06-11 20:44:41
284
原创 RabbitMQ-Spring AMQP【翻译】4.1.2——配置基础客户端连接工厂&RabbitConnectionFactoryBean和配置SSL
版本:2.2.4.RELEASE地址:官方文档使用了Rabbit客户端的实例。在上设置等效属性时,会传递许多配置属性(host, port, userName, password, requestedHeartBeat, and connectionTimeout)。要设置其他属性(例如clientProperties),可以定义Rabbit工厂的一个实例,并通过使用CachingConnectionFactory的相应构造函数提供对它的引用。当像上面一样使用namespace时,你需要提供一个引用来配置
2022-06-07 23:29:15
2323
1
原创 RabbitMQ-Spring AMQP【翻译】4.1.2——Naming Connections & Blocked Connections and Resource Constraints
版本:2.2.4.RELEASE地址:官方文档从1.7版本开始,提供了用来注入到。生成的名称用于标识特定应用程序与目标RabbitMQ连接。这个连接的名称会展示在R阿布币TMQ的控制台上。这个名称不需要唯一并且也不能做为连接的标识符、例如,再HTTP API请求中。该值应该是人类可读的并且是键下的一部分。你可以使用简单的Lambda:参数可以通过一些逻辑来区分目标连接名称。默认情况下,的beanName,表示对象的十六进制字符串,以及一个内部的记数共同构成了。名称空间也支持属性。的一个实现类将连接名称设
2022-06-07 20:52:50
173
原创 RabbitMQ-Spring AMQP【翻译】4.1.2 Reference——连接和资源管理
版本:2.2.4.RELEASE地址:官方文档虽然我们在上一节中描述的AMQP模型是通用的,并且适用于所有实现,但当我们进入资源管理时,细节是特定于代理实现的.因此在本节中,我们关注于spring-rabbit中的代码,此时rabbitmq是唯一被支持的实现。用于管理RabbitMQ broker连接的中心组件是接口。实现的职责是提供一个的实例,这个实例时的包装。我们提供的唯一具体实现是,默认情况下,它建立一个可由应用程序共享的连接代理。共享连接是可能的,因为与AMQP进行消息传递的“工作单元”实际上是一
2022-06-07 14:32:07
186
转载 【转载】rabbitmq消息发送卡顿的排查(spring-amqp)
线上系统出现SLOW慢请求告警,经排查,发现为rabbitmq的消息发送卡顿引起,卡顿时间几秒钟~几十秒不等。由于只卡顿了1分钟左右,笔数不多(30笔以内),且后续就没了,所以只是排查了下系统各项指标(JVM、mq状态、磁盘等),都正常。就没有继续深入了排查了。 但过了一段时间,又出现问题了~~(果然每个线上问题都要仔细追踪- -#)发生频率:每次系统重启后,都会出现一次,且每个实例出现一次后,后续就不在出现了,直到下一次系统实例重启。 在出现卡顿时,当前实例仍有其他的消息发送是正常的。单个消息大小:1
2022-06-07 14:11:38
2107
原创 RabbitMQ-Spring AMQP【翻译】4.1.1 Reference——AMQP Abstraction
版本:2.2.4.RELEASE地址:官方文档本章主要探索那些使用AMQP进行开发时必不可少的接口和类。Spring AMQP包含了两个模块:和。模块包含了包。在这个包中,你可以找到代表AMQP核心模型的类。我们打算提供通用的抽象使我们可以不在依赖任何特定的AMQP broker实现或者client lib。用户代码可以更方便的更换具体的实现,因为它依赖于抽象层进行开发。这些抽象然后由特定的broker模块来实现,类如。…(省略几句没用的)Message0-9-1 AMQP 协议并没有定义类或者接口,当
2022-06-03 23:29:34
125
原创 rabbitmq-优化prefetch count参数提升性能
怎么调整broker来达到不增加集群或者修改业务代码的方式来提高系统的速度?prefetch count参数有什么用?This is done by setting a “prefetch count” value using the basic.qos method. The value defines the max number of unacknowledged deliveries that are permitted on a channel.Once the number reaches
2022-05-30 15:34:50
891
原创 分布式系统中数据库与缓存一致性的几种方案的解析
文章目录方案一:先更新数据库,再更新缓存方案二:先删除缓存,在更新数据库方案三:先更新数据库,再删除缓存双删方案的优化缓存删除失败怎么办?总结首先要说明的是,接下来无论是哪种方案都只能保证最终一致,无法做到强一致性。方案一:先更新数据库,再更新缓存异常场景:线程A比线程B先更新,但是由于网络等原因导致线程B先更新了缓存。然后A再把旧值更新到缓存中。这种异常场景除了设置过期时间,没有办法解决脏数据的问题。从业务上考虑,如果你面对的是一个写多读少的场景,就会出现频繁更新缓存但是却没有人来读取的情况,浪
2022-03-15 00:43:32
3558
原创 spring注解驱动开发-容器-组件注册
组件注册总结:包扫描+组件标注注解(@Controller/@Service/@Repository/@Component)@Bean 导入第三包里面的组件@Import 快速给容器中导入一个组件 见第9点使用spring提供的FactoryBean 见第10点@Configuration 告诉spring这是一个配置类(等于配置文件)@Bean 相当于xml的标签,给容器注册一个bean,id默认是用方法名作为id 也可以是用@Bean(“xxx”)的方式指定id在配置类上
2020-08-21 11:08:38
227
2
原创 单例模式-枚举类单例
public enum DataSourceEnum { DATASOURCE; private DBConnection connection = null; private DataSourceEnum(){ connection = new DBConnection(); } public DBConnection getConnect...
2019-12-20 13:48:07
584
原创 自定义注解配合AspectJ使用
背景项目部分接口需要进行简单的验签,故使用aop配合注解使用注解的定义@Documented@Target(ElementType.METHOD)@Retention(RetentionPolicy.RUNTIME)public @interface SignAnnotation {}功能快捷键撤销:Ctrl/Command + Z重做:Ctrl/Command + Y加...
2019-12-20 10:42:12
555
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人