RabbitMQ

flowable 流程引擎和 activiti 流程引擎

旧街凉风 提交于 2020-08-16 01:06:53
关于新的activiti新团队与原有的团队重要开发人员我们罗列一下,细节如下: Tijs Rademakers,算是activiti5以及6比较核心的leader了。现在是flowable框架的leader。 Joram Barrez 算是activiti5以及6比较核心的leader了。目前从事flowable框架开发。 Salaboy Activiti Cloud BPM leader(Activiti Cloud BPM 也就是目前的activiti7框架) Tijs Rademakers以及Salaboy目前是两个框架的leader。 特此强调一点:activiti5以及activiti6、flowable是Tijs Rademakers团队开发的。 Activiti7是 Salaboy团队开发的。activiti6以及activiti5代码目前有 Salaboy团队进行维护。因为Tijs Rademakers团队去开发flowable框架了,所以activiti6以及activiti5代码已经交接给了 Salaboy团队(可以理解为离职之前工作交接)。目前的activiti5以及activiti6代码还是原Tijs Rademakers原有团队开发的。Salaboy团队目前在开发activiti7框架

云MSP服务案例|互联网商城的上云改造之旅

六月ゝ 毕业季﹏ 提交于 2020-08-15 15:40:26
简介: 在中国,经过十年的发展,云计算产业已走过概念普及的1.0时期,进入“上云”和落地的2. 0阶段,企业上云意识不断增强,越来越多的企业选择部署多云和混合IT。 如今,云计算生态一片繁荣,看似“全民云计算”时代已然到来,但在互联网支付行业,由于“合规、安全”的监管要求,以及对云计算价值的认知不足,众多企业对于云计算仍处于观望状态。 在中国,经过十年的发展,云计算产业已走过概念普及的1.0时期,进入“上云”和落地的2. 0阶段,企业上云意识不断增强,越来越多的企业选择部署多云和混合IT。 如今,云计算生态一片繁荣,看似“全民云计算”时代已然到来,但在互联网支付行业,由于“合规、安全”的监管要求,以及对云计算价值的认知不足,众多企业对于云计算仍处于观望状态。 项目背景 某互联网购物商城的上云转型之路 某互联网支付购物商城企业,是一家以提供企业购物卡服务和忠诚解决方案的营销合作机构。通过礼品卡、消费卡等制定方案结合线上支付业务,为零售商和服务供应商提供综合的购物卡销售计划。 随着企业的不断发展壮大,海内外业务逐渐丰富,该企业也面临业务上云需求。做好企业架构治理、为业务灵活创新做好技术基础,提升应用开发速度、投入产出效率,降低运维难度,将严峻挑战转化为创新驱动力,完成从IT到DT成功进行数字化转型,成为了该企业的思考难点。 为充分利用高并发、高灵活、高可用的互联网平台优势

消息队列-如何保证消息队列的高可用?

♀尐吖头ヾ 提交于 2020-08-15 12:53:41
问题 如何保证消息队列的高可用? 面试题剖析 如果有人问到你 MQ 的知识, 高可用是必问的 。这个问题这么问是很好的,因为不能问你 Kafka 的高可用性怎么保证?ActiveMQ 的高可用性怎么保证?一个面试官要是这么问就显得很没水平,人家可能用的就是 RabbitMQ,没用过 Kafka,你上来问人家 Kafka 干什么?这不是摆明了刁难人么。 所以有水平的面试官,问的是 MQ 的高可用性怎么保证?这样就是你用过哪个 MQ,你就说说你对那个 MQ 的高可用性的理解。 1. RabbitMQ 的高可用性 RabbitMQ 是比较有代表性的,因为是 基于主从 (非分布式)做高可用性的,我们就以 RabbitMQ 为例子讲解第一种 MQ 的高可用性怎么实现。 RabbitMQ 有三种模式:单机模式、普通集群模式、镜像集群模式。 单机模式 单机模式,就是 Demo 级别的,一般就是你本地启动了玩玩儿的,没人生产用单机模式。 普通集群模式(无高可用性) 普通集群模式,意思就是在多台机器上启动多个 RabbitMQ 实例,每个机器启动一个。你 创建的 queue,只会放在一个 RabbitMQ 实例上 ,但是每个实例都同步 queue 的元数据(元数据可以认为是 queue 的一些配置信息,通过元数据,可以找到 queue 所在实例)。你消费的时候,实际上如果连接到了另外一个实例

人为操控攻击的 Maze 勒索软件

谁都会走 提交于 2020-08-15 11:04:45
原文链接: https://labs.sentinelone.com/ 译者:知道创宇404实验室翻译组 摘要 Maze勒索软件是目前在野外使用最广泛的勒索软件之一,由具有能力的参与者进行分发。 我们发现了一个Maze分支机构,在交付勒索软件之前部署了量身定制的持久性方法。 行动者似乎使用了被盗的证书在其信标上签名。 与其他攻击一样,行动者使用HTA有效载荷作为交互式外壳,能够捕获到实时的和去模糊化的内容。 背景 Maze勒索软件在过去的大约一年时间里被广泛使用,成为全世界许多不同参与者的最终有效载荷。今年,臭名昭著的Maze运营商不仅开始通过加密文件勒索公司,而且威胁会在线 发布被窃取的文件, 从而勒索公司。最近,我们抓住了一个Maze会员,该会员尝试通过借由我们客户的网络进行传播。 在这篇文章中,我们分享有关该Maze会员使用方法的详细信息,以阐明他们的策略并帮助安全团队在其自己的网络中寻找类似的IOC。 攻击入口点 如先前在其他 Maze事件中 所报告的那样,攻击者可能通过强制使用管理员的密码,使用RDP来访问面向Internet的计算机。对美国公司的攻击之一始于7月4日(星期六),选择这个日期显然是猜测许多人(尤其是安全人员)那天可能不在工作。 攻击者使用RDP连接并上传了自己信标的有效载荷,并伪装成名为 netplwiz.exe 的已知Microsoft二进制文件

RabbitMQ基础知识

喜欢而已 提交于 2020-08-15 07:45:35
RabbitMQ基础知识 一、背景 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现。AMQP 的出现其实也是应了广大人民群众的需求,虽然在同步消息通讯的世界里有很多公开标准(如 COBAR的 IIOP ,或者是 SOAP 等),但是在异步消息处理中却不是这样,只有大企业有一些商业实现(如微软的 MSMQ ,IBM 的 Websphere MQ 等),因此,在 2006 年的 6 月,Cisco 、Redhat、iMatix 等联合制定了 AMQP 的公开标准。   RabbitMQ是由RabbitMQ Technologies Ltd开发并且提供商业支持的。该公司在2010年4月被SpringSource(VMWare的一个部门)收购。在2013年5月被并入Pivotal。其实VMWare,Pivotal和EMC本质上是一家的。不同的是VMWare是独立上市子公司,而Pivotal是整合了EMC的某些资源,现在并没有上市。   RabbitMQ的官网是http://www.rabbitmq.com 花絮:本篇文章是一个系列的文章,本片是开篇,后续会陆陆续续的整理出来,我会现在我自己个人博客发表出来(www.battleheart.cn),因为在自己的博客里面可以先修改了完善有些不对的地方,等完善后再发到博客园

rabbitmq(六)、如何保证消息的顺序性

落花浮王杯 提交于 2020-08-15 07:30:34
场景:数据1、2、3按顺序发到一个queue,多个消费者消费同一个queue 解决方案: 拆分为多个queue,每个queue由一个consumer消费; 或者就一个queue但是对应一个consumer,然后这个consumer内部用内存队列做排队,然后分发给底层不同的worker来处理 来源: oschina 链接: https://my.oschina.net/u/4359458/blog/4313911

Spring Cloud Sleuth 之Greenwich版本全攻略

可紊 提交于 2020-08-15 02:51:51
微服务架构是一个分布式架构,微服务系统按业务划分服务单元,一个微服务系统往往有很多个服务单元。由于服务单元数量众多,业务的复杂性较高,如果出现了错误和异常,很难去定位。主要体现在一个请求可能需要调用很多个服务,而内部服务的调用复杂性决定了问题难以定位。所以在微服务架构中,必须实现分布式链路追踪,去跟进一个请求到底有哪些服务参与,参与的顺序又是怎样的,从而达到每个请求的步骤清晰可见,出了问题能够快速定位的目的。 在微服务系统中,一个来自用户的请求先到达前端A(如前端界面),然后通过远程调用,到达系统的中间件B、C(如负载均衡、网关等),最后到达后端服务D、E,后端经过一系列的业务逻辑计算,最后将数据返回给用户。对于这样一个请求,经历了这么多个服务,怎么样将它的请求过程用数据记录下来呢?这就需要用到服务链路追踪。 Spring Cloud Sleuth Spring Cloud Sleuth 为服务之间调用提供链路追踪。通过 Sleuth 可以很清楚的了解到一个服务请求经过了哪些服务,每个服务处理花费了多长。从而让我们可以很方便的理清各微服务间的调用关系。此外 Sleuth 可以帮助我们: 耗时分析: 通过 Sleuth 可以很方便的了解到每个采样请求的耗时,从而分析出哪些服务调用比较耗时; 可视化错误: 对于程序未捕捉的异常,可以通过集成 Zipkin 服务界面上看到; 链路优化:

RabbitMq(一、安装、设置)

好久不见. 提交于 2020-08-15 02:40:51
1、AMQP与JMS   消息队列实现的主流方式有AMQP(应用层标准消息队列协议,标准为消息中间件设计。主要实现中间件有RabbitMQ)、JMS(Sun公司提供的消息统一操作,类似JDBC这种标准。主要实现中间件有ActiveMQ)。 2、安装与启动RabbitMQ   RabbitMQ是使用Erlang编程语言编写的。安装前必须要 先安装Erlang 。需要 注意 的是Erlang 版本与RabbitMQ 版本需要匹配( https://www.rabbitmq.com/which-erlang.html ),否则会出错。   举例:win系统安装完成后进入 rabbitmq_server\sbin目录,点击rabbitmq-server即可启动。 如图所示,可以通过任务管理器点击服务查看、管理。 在centos中的安装: 1、去官网( https://www.rabbitmq.com/ )下载好安装包后 上传至服务器。 2、安装Erlang    使用yum仓库安装。 1 yum install esl-erlang_17.3-1~centos~ 6_amd64.rpm 2 yum install esl-erlang-compat-R14B-1.el6.noarch.rpm   3、安装RabbitMQ     进入上传安装包的目录,然后输入命令 rpm -ivh

《RabbitMQ》如何保证消息不被重复消费

两盒软妹~` 提交于 2020-08-14 17:34:42
一 重复消息 为什么会出现消息重复?消息重复的原因有两个:1.生产时消息重复,2.消费时消息重复。 1.1 生产时消息重复 由于生产者发送消息给MQ,在MQ确认的时候出现了网络波动,生产者没有收到确认,实际上MQ已经接收到了消息。这时候生产者就会重新发送一遍这条消息。 生产者中如果消息未被确认,或确认失败,我们可以使用定时任务+(redis/db)来进行消息重试。 @Component @Slf4J public class SendMessage { @Autowired private MessageService messageService; @Autowired private RabbitTemplate rabbitTemplate; // 最大投递次数 private static final int MAX_TRY_COUNT = 3; /** * 每30s拉取投递失败的消息, 重新投递 */ @Scheduled(cron = "0/30 * * * * ?") public void resend() { log.info("开始执行定时任务(重新投递消息)"); List<MsgLog> msgLogs = messageService.selectTimeoutMsg(); msgLogs.forEach(msgLog -> { String msgId

Spring AMQP中使用拦截器

馋奶兔 提交于 2020-08-14 16:17:00
一旦将template.convertAndSend调用,在将消息传递到RabbitMQ之前,是否有一种方法可以拦截消息. 还有什么方法可以在到达处理程序之前拦截消息? 我可以使用发布者的PostProcessor处理消息,但更喜欢使用拦截器. public class TestPostProcessor implements MessagePostProcessor { @Autowired Tracer defaultTracer; @Override public Message postProcessMessage(Message message) throws AmqpException { //..... //.... return message; } } 复制代码 有什么建议么? 最佳答案 MessagePostProcessor是拦截器的一种形式. 有两种方法可以调用一种-使用以MPP作为参数的重载convertAndSend()方法之一,或使用setBeforePublishPostPostors()将一个或多个添加到RabbitTemplate中. 您还可以使用setAfterReceivePostProcessors()截获收到的消息,该方法在从receive()方法返回收到的消息之前调用.