分布式消息中间件中的一些概念(接上一篇的《什么是分布式消息中间件?》)
接上一篇的《什么是分布式消息中间件?》,这一篇来介绍一下消息中间件相关的一些概念和专业术语。 Topic 主题,从逻辑上讲一个Topic就是一个Queue,即一个队列;从存储上讲,一个Topic存储了一类相同的消息,是一类消息的集合。
MVC - 单点登录中间件
本章将要和大家分享的是一个单点登录中间件,中间件听起来高深其实这里只是吧单点登录要用到的逻辑和处理流程封装成了几个方法而已,默认支持采用redis服务保存session的方式,也可以使用参数Func方法来做自定义session存储操作的方式,就不用我默认提供的redis存储的方法了;要说本章内容的来源,其实是我在以前的ShenNiu.
消息中间件(Kafka/RabbitMQ)收录集
本篇主要整理工作中遇到的一些消息中间件的相关知识,包括Kafka, RabbitMQ, RocketMQ, ActiveMQ等,不排除收录其他消息中间件的可能。 这里会持续收录相关知识,包括安装、部署、使用示例、监控、运维、原理等。
Kafka vs RocketMQ——单机系统可靠性
引言 前几期的评测中,我们对比了Kafka和RocketMQ的吞吐量和稳定性,本期我们要引入一个新的评测标准——软件可靠性。 何为“可靠性”? 先看下面这种情况:有A,B两辆越野汽车,在城市的周边地区均能很好应对泥泞的路况。当一同开去穿越西藏,A车会因为西藏本地的汽油不达标,导致油路受阻无
ActiveMQ消息中间件Producer和Consumer
生产者代码: package com.java1234.activemq; import javax.jms.Connection; import javax.jms.ConnectionFactory; import javax.jms.Destination; import javax.jms.JMSException; import javax.jms.MessageProdu
Spring整合JMS(消息中间件)实例
本篇文章主要描述了如何配置Spring-JMS,至于为何这样配置及Spring-JMS相关介绍,请阅读这篇文章:Spring整合JMS(消息中间件)。我们这里的消息broker用的是ActiveMQ。 一、相关配置 本篇主要讲解如何在Spring中配置JMS,关于Spring本身的配置本文就不多做介绍了。 1.1 配置maven依赖 在使用Spring-JMS之前,先
Spring整合JMS(消息中间件)
本篇主要介绍了异步消息机制及Spring对JMS封装,本篇文章讲解较为详细,如果想直接看如何配置,可以参考: Spring整合JMS(消息中间件)实例,但还是建议大家先看完本篇文章。 一、消息异步处理 类似于RMI、Hessian、Burlap等远程方法调用,它们都是同步的,所谓同步调用就是客户端必须等待操作完成,如果远程服务没有返回任何响应,客户端会一直等待直到服务完成
Solr schema编写指导
0. 亲,低级错误知多少 "" 写成了“” <br> true 写成了 ture <br> false写成了fasel <br> String 写成了 string <br> userId 写成了userid <br> user_id 写成了 user_Id <
查询问题---queryparse深入理解
查询问题,最直接的反馈就是页面出来的结果。然后牵扯到的问题就一步一步深入了。第一层:queryparse,其中关联分词,关联booleanquery orphrasequery,关联boost。。。。第二层:排序了,关联排序的策略、排序的得分公式第三层:各种转换、过滤、筛选后的页面结果这里重点将q.
稳定性思考-强弱依赖
淘宝系统依赖关系比较复杂。A系统依赖B系统资源,当B系统发生故障的时候,A系统势必会被拖累,导致A系统也发生故障 图:[ A]--依赖-->[B] 这里的依赖要区分两种情况 1、A强依赖于B 任何强依赖都要尽可能的转化
Node Connect 及其中间件的理念相当好
好到有种相见恨晚的感觉,呵呵。Connect 所谓的中间件思想,可谓不新鲜。但是于 Node 上面使用,却是第一个吃螃蟹的人,以致今日,有为数不少的第三方中间件。套一句俗话,充分利用好这些中间件,能让你的工作事半功倍,呵呵。
Node.js Web 开发框架大全《中间件篇》
这篇文章与大家分享优秀的 Node.js 中间件模块。Node 是一个服务器端 JavaScript 解释器,它将改变服务器应该如何工作的概念。它的目标是帮助程序员构建高度可伸缩的应用程序,编写能够处理数万条同时连接到一个(只有一个)物理机的连接代码。
海尔智家 x 阿里云 Kafka 实践:轻松支撑百亿级消息,稳定性与效率双提升
海尔智家通过与阿里云深度共创,采用定制化迁移与调优方案,平滑升级至Kafka Serverless,不仅保障了极致稳定性,更实现运维自动化,大幅释放研发人力。
揭开 Java 容器“消失的内存”之谜:云监控 2.0 SysOM 诊断实践
JVM 没满,Pod 却挂了?可能是 C2 Compiler 在“偷偷吃内存”。阿里云云监控 2.0 的 SysOM 系统诊断帮你穿透 JNI 黑盒,找出真正的内存元凶!
低至 1% 性能损耗:阿里云 ARMS 配置模板如何实现精准可控的 JMX 数据采集
APM 一定要全量采集吗?ARMS 推出配置模板,支持按场景分级监控:核心应用上 Trace,非核心只采 JVM,成本直降 90%+ !
2025 OSCAR丨与创新者同频!Apache RocketMQ 邀您共赴开源之约
10 月 28 日,阿里云高级技术专家周礼分享如何基于 Apache RocketMQ 新特性构建异步化 Multi-Agent 系统。
让每次语音唤醒都可靠,公牛沐光重构可观测体系
本文详细介绍了公牛沐光团队如何从开源监控方案 SkyWalking 成功迁移到阿里云 ARMS,构建起一套集观测、追踪、日志分析与智能告警于一体的全栈式可观测平台的实践历程。文章不仅揭示了技术选型的关键考量维度,更重点呈现了 ARMS 在大模型与 IoT 融合场景中的独特价值——从语音识别瓶颈定位、大模型推理性能优化到语音合成质量保障,实现了从"被动响应"到"主动治理"的转型。
【实战指南】4步实现C++插件化编程,轻松实现功能定制与扩展(2)
本文是《4步实现C++插件化编程》的延伸,重点介绍了新增的插件“热拔插”功能。通过`inotify`接口监控指定路径下的文件变动,结合`epoll`实现非阻塞监听,动态加载或卸载插件。核心设计包括`SprDirWatch`工具类封装`inotify`,以及`PluginManager`管理插件生命周期。验证部分展示了插件加载与卸载的日志及模块状态,确保功能稳定可靠。优化过程中解决了动态链接库句柄泄露问题,强调了采纳用户建议的重要性。
一行代码都不改,Golang 应用链路指标日志全知道
本文将通过阿里云开源的 Golang Agent,帮助用户实现“一行代码都不改”就能获取到应用产生的各种观测数据,同时提升运维团队和研发团队的幸福感。
iLogtail 开源贡献人物专访:技术之路无坦途,与社区共同成长
在 iLogtail 开源两周年这一里程碑时刻,我们邀请到了两位社区 Committer 进行分享,揭秘这些开发者如何在日常工作中与 iLogtail 结缘,又如何在业余时间里为项目添砖加瓦,推动其不断向前发展~
【开源指南】用二叉树实现高性能共享内存管理
本文介绍了一种使用C++实现的共享内存管理方案,通过借鉴Android property的设计思路,采用二叉树结构存储键值对,提高了数据检索效率。该方案包括设置和获取接口,支持多进程/线程安全,并提供了一个简单的测试示例验证其有效性。
iLogtail 开源两周年:感恩遇见,畅想未来
凡是过往,皆为序章;iLogtail 社区,是我们共同编织的果实。所有将来,皆为可盼;LoongCollector,是我们共筑的未来。
阿里云 AI 原生应用架构开放日上线 CommunityOverCode Asia 2024
诚挚邀请您参加阿帕奇软件基金会亚洲大会——CommunityOverCode Asia 2024。本次活动将汇聚来自世界各地的开发者和科技爱好者,共同探索开源技术的最新进展和未来趋势。我们将在大会期间举办《阿里云 AI 原生应用架构开放日》,欢迎您来现场和我们交流。
缓存代理服务器的实现机制和技术选型
缓存代理服务器是一种特殊的代理服务器,其主要功能是缓存从目标服务器(通常是Web服务器)获取的数据,并在客户端再次请求相同数据时直接提供缓存的数据。通过缓存代理服务器可以加快访问速度并减轻目标服务器的负载。
5% 消耗,6 倍性能:揭秘新一代 iLogtail SPL 日志处理引擎与 Logstash 的 PK
在本文中,我们将深入探讨为何选择 iLogtail,以及它在 SPL 数据处理方面相较于 Logstash 有何独特优势。通过对比这两款工具的架构、性能以及功能,我们希望能够揭示 iLogtail 如何在日益复杂的日志处理需求中脱颖而出,帮助您做出明智的技术选择。
【编程技巧】 C++11智能指针
C++11引入了智能指针以自动管理内存,防止内存泄漏和悬挂指针: - `shared_ptr`:引用计数,多所有权,适用于多个对象共享资源。 - `unique_ptr`:独占所有权,更轻量级,适用于单一对象所有者。 - `weak_ptr`:弱引用,不增加引用计数,解决`shared_ptr`循环引用问题。 ## shared_ptr - 支持引用计数,所有者共同负责资源释放。 - 创建方式:空指针、new操作、拷贝构造/移动构造,以及自定义删除器。 - 提供`operator*`和`operator->`,以及`reset`、`swap`等方法。 ## unique_ptr
持久层框架MyBatis
MyBatis是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集的操作。MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。
无忧微服务:如何实现大流量下新版本的发布自由
本文讨论了微服务上云过程中的稳定性挑战,特别是变更引起的生产故障。阿里云MSE(微服务引擎)提供了一种全链路无损发布方案,旨在消除变更风险,实现白天流量高峰时的安全发布。
Seata适配问题之回滚失败如何解决
Seata是一款开源的分布式事务解决方案,旨在提供高效且无缝的分布式事务服务;在集成和使用Seata过程中,开发者可能会遇到不同的异常问题,本合集针对Seata常见异常进行系统整理,为开发者提供详细的问题分析和解决方案,助力高效解决分布式事务中的难题。
nacos报错问题之clonse报错如何解决
Nacos是一个开源的、易于部署的动态服务发现、配置管理和服务管理平台,旨在帮助微服务架构下的应用进行快速配置更新和服务治理;在实际运用中,用户可能会遇到各种报错,本合集将常见的Nacos报错问题进行归纳和解答,以便使用者能够快速定位和解决这些问题。
Seata调用问题之全局异常捕获没法回滚如何解决
Seata是一款开源的分布式事务解决方案,旨在提供高效且无缝的分布式事务服务;在集成和使用Seata过程中,开发者可能会遇到不同的异常问题,本合集针对Seata常见异常进行系统整理,为开发者提供详细的问题分析和解决方案,助力高效解决分布式事务中的难题。