-
Spring Cloud构建微服务架构:分布式服务跟踪(入门)【Dalston版】
通过之前的N篇博文介绍,实际上我们已经能够通过使用它们搭建起一个基础的微服务架构系统来实现我们的业务需求了。但是,随着业务的发展,我们的系统规模也会变得越来越大,各微服务间的调用关系也变得越来越错综复杂。通常一个由客户端发起的请求在后端系统中会经过多个不同的微服务调用来协同产生最后的请求结果,在复杂的微服务架构系统中,几乎每一个前端请求都会形成一条复杂的分布式服务调用链路,在每条链路中任何一个依赖…- 3
- 0
-
Openstack+Kubernetes+Docker微服务实践之路–弹性扩容
服务上线就要顶的住压力、扛的住考验,不然挨说的还是我们这帮做事的兄弟,还记得上图这个场景吗 老办法是服务集群部署,但总归有个上限,之前跟阿里合作的时候他们有个弹性计算可以通过设置CPU的阀值来动态扩展和收缩计算能力,那时感觉很有逼格,至少在当时我们常规的做法很难做到,没想到时至今日有了Kubernetes我们能也扬眉吐气了,看我来给大家实实在在的秀一把。 Kubernetes的自动扩容针对的是Re…- 16
- 0
-
Netty源码分析第8章(高性能工具类FastThreadLocal和Recycler)—->第1节: FastThreadLocal的使用和创建
Netty源码分析第八章: 高性能工具类FastThreadLocal和Recycler 概述: FastThreadLocal我们在剖析堆外内存分配的时候简单介绍过, 它类似于JDK的ThreadLocal, 也是用于在多线程条件下, 保证统一线程的对象共享, 只是netty中定义的FastThreadLocal, 性能要高于jdk的ThreadLocal, 具体原因…- 2
- 0
-
Netty源码分析第3章(客户端接入流程)—->第5节: 监听读事件
Netty源码分析第三章: 客户端接入流程 第五节: 监听读事件 我们回到AbstractUnsafe的register0()方法: 1private void register0(ChannelPromise promise) { 2 try { 3 //省略代码 4 //做实际的注册 5 doRegister(); 6 neverRegistered = false; 7 regi…- 6
- 0
-
Netty In Action中文版 – 第十四章:实现自定义的编码解码器
http://blog.csdn.net/abc_key/article/details/38388031 本章讲述Netty中如何轻松实现定制的编解码器,由于Netty架构的灵活性,这些编解码器易于重用和测试。为了更容易实现,使用Memcached作为协议例子是因为它更方便我们实现。 Memcached是免费开源、高性能、分布式的内存对象缓存系统,其目的是加速动态…- 9
- 0
-
Netty In Action中文版 – 第九章:引导Netty应用程序
Netty In Action中文版 - 第九章:引导Netty应用程序 本章介绍 引导客户端和服务器 从Channel引导客户端 添加多个ChannelHandler 使用通道选项和属性 上一章学习了编写自己的ChannelHandler和编解码器并将它们添加到Channel的ChannelPipeline中。本章将讲解如何将它们结合在一起使用。 Netty提供了简单统一的方法来引导服务器和客户…- 7
- 0
-
MINA、Netty、Twisted一起学(十一):SSL/TLS
什么是SSL/TLS 不使用SSL/TLS的网络通信,一般都是明文传输,网络传输内容在传输过程中很容易被窃听甚至篡改,非常不安全。SSL/TLS协议就是为了解决这些安全问题而设计的。SSL/TLS协议位于TCP/IP协议之上,各个应用层协议之下,使网络传输的内容通过加密算法加密,并且只有服务器和客户端可以加密解密,中间人即使抓到数据包也无法解密获取传输的内容,从而避免安全问题。例如广泛使用的HTT…- 6
- 0
-
Java NIO框架Netty教程(十三) 并发访问测试(下)
在上节(《Java NIO框架Netty教程(十二) 并发访问测试(中) 》),我们从各个角度对Netty并发的场景进行了测试。这节,我们将重点关注上节最后提到的问题。在多线程并发访问的情况下,会出现 警告: EXCEPTION, please implement one.coder.netty.chapter.eight.ObjectClientHandler.exceptionCaught…- 18
- 0
-
Netty系列之Netty线程模型
1. 背景 1.1. Java线程模型的演进 1.1.1. 单线程 时间回到十几年前,那时主流的CPU都还是单核(除了商用高性能的小机),CPU的核心频率是机器最重要的指标之一。 在Java领域当时比较流行的是单线程编程,对于CPU密集型的应用程序而言,频繁的通过多线程进行协作和抢占时间片反而会降低性能。 1.1.2. 多线程 随着硬件性能的提升,CPU的核数越来越越多,很多服务器标配已经达到32…- 0
- 0
-
ASP.NET Core微服务之基于Steeltoe使用Hystrix熔断保护与监控
Tip: 此篇已加入.NET Core微服务基础系列文章索引 => Steeltoe目录快速导航: 基于Steeltoe使用Spring Cloud Eureka 基于Steeltoe使用Spring Cloud Zuul 基于Steeltoe使用Spring Cloud Hystrix 一、关于Spring Cloud Hystrix 在微服务架构中,我们将系统拆分为很多个服务,各个服务…- 0
- 0
-
Kafka实战(三) – Kafka的自我修养与定位
Kafka是linkedin使用Scala编写具有高水平扩展和高吞吐量的分布式消息系统。 Kafka对消息保存时根据Topic进行归类,发送消息者成为Producer,消息接受者成为Consumer,此外kafka集群有多个kafka实例组成,每个实例(server)称为broker。 无论是Kafka集群,还是producer和consumer都依赖于zookeeper来保证系统可用性,为集群保…- 6
- 0
-
Kafka分区分配策略(4)——分配的实施
分配的实施 我们了解了Kafka中消费者的分区分配策略之后是否会有这样的疑问:如果消费者客户端中配置了两个分配策略,那么以哪个为准?如果有多个消费者,彼此所配置的分配策略并不完全相同,那么以哪个为准?多个消费者之间的分区分配是需要协同的,那么这个协同的过程又是怎样? 在kafka中有一个组协调器(GroupCoordinator)负责来协调消费组内各个消费者的分区分配,对于每一个消费组而言,在ka…- 9
- 0
-
kafka解决了什么问题?
Web应用:部署在云服务器上,为个人电脑或者移动用户提供的访问体验。 SQL数据库:为Web应用提供数据持久化以及数据查询。 这套架构简洁而高效,很快便能够部署到百度云等云计算平台,以便快速推向市场。互联网不就是讲究小步快跑嘛! 好景不长。随着用户的迅速增长,所有的访问都直接通过SQL数据库使得它不堪重负,不得不加上缓存服务以降低SQL数据库的荷载;为了理解用户行为,开始收集日志并保存到Hadoo…- 4
- 0
-
spark读取 kafka nginx网站日志消息 并写入HDFS中
spark 版本为1.0 kafka 版本为0.8 首先来看看kafka的架构图 详细了解请参考官方 我这边有三台机器用于kafka 日志收集的 A 192.168.1.1 为server B 192.168.1.2 为producer C 192.168.1.3 为consumer 首先在A上的kafka安装目录下执行如下命令 1./kafka-server-start.sh ../config…- 13
- 0
-
Java使用RabbitMQ(十)–常用操作以及注意事项
为了防止众所周知的身份信息用于生产环境的系统,guest只能用来访问本地。 channel可以主动关闭,但是这不是必须的,在关闭它所依赖的连接时,channel也会自动被关闭。 connection设计为长连接。 有个no wait 版本的队列 1channel.queueDeclareNoWait(queueName, true, false, false, null); 2 这种队列不接收ra…- 8
- 0
-
Docker下RabbitMQ四部曲之一:极速体验(单机和集群)
从本章开始,我们一起在Docker环境实战RabbitMQ环境部署和对应的Java开发,当前是《Docker下RabbitMQ四部曲》系列的第一篇,整个系列由以下四篇文章组成: 第一篇,即本章,我们用最快的方式体验RabbitMQ单机环境下生产和消费消息,然后再体验RabbitMQ集群环境下生产和消费消息; 第二篇,详细说明如何制作RabbitMQ的docker镜像文件,这个镜像支持集群,也能通过…- 17
- 0
-
AMQP-RabbitMQ/6/RPC模式/关注消息处理结果
6. RPC But what if we need to run a function on a remote computer and wait for the result? Well, that’s a different story. This pattern is commonly known as Remote Procedure Call or RPC. 大概意思是说,上面几种模式…- 6
- 0
-
基于Python语言使用RabbitMQ消息队列(二)
工作队列 在第一节我们写了程序来向命名队列发送和接收消息 。在本节我们会创建一个工作队列(Work Queue)用来在多个工人(worker)中分发时间消耗型任务(time-consuming tasks)。 工作队列(又叫做: Task Queues)背后的主体思想是 避免立刻去执行耗时任务并且等待它们完成。 相反我们可以安排这样的任务稍后执行. 我们可以把任务封装成一个消息并发送到队列中. 一…- 7
- 0
-
RabbitMQ消息队列(三):任务分发机制
<=== RabbitMQ消息队列(二):”Hello, World“ 在上篇文章中,我们解决了从发送端(Producer)向接收端(Consumer)发送“Hello World”的问题。在实际的应用场景中,这是远远不够的。从本篇文章开始,我们将结合更加实际的应用场景来讲解更多的高级用法。 当有Consumer需要大量的运算时,RabbitMQ Server需要一定的分发机…- 4
- 0
-
Elastic-Job – 分布式定时任务框架
摘要 Elastic-Job是ddframe中dd-job的作业模块中分离出来的分布式弹性作业框架。去掉了和dd-job中的监控和ddframe接入规范部分。该项目基于成熟的开源产品Quartz和Zookeeper及其客户端Curator进行二次开发。ddframe其他模块也有可独立开源的部分,之前当当曾开源过dd-soa的基石模块DubboX。项目开源地址:https://github.com/…- 5
- 0
-
SpringBoot集成RabbitMQ
AmqpTemplate,RabbitTemplate Spring AMQP提供了一个发送和接收消息的操作模板类AmqpTemplate。 AmqpTemplate它定义包含了发送和接收消息等的一些基本的操作功能。RabbitTemplate是AmqpTemplate的一个实现。 RabbitTemplate支持消息的确认与返回,为了返回消息,RabbitTemplate 需要设置mandato…- 35
- 0
-
linux安装rabbitmq
博客出自永远的麦子,原文地址:https://www.cnblogs.com/mcgrady/p/7614417.html。感谢博主分享。 安装erlang 1、通过yum安装以下组件,运行命令: 1[root@rabbitmqserver erlang]# yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-…- 2
- 0
幸运之星正在降临...
点击领取今天的签到奖励!
恭喜!您今天获得了{{mission.data.mission.credit}}积分
我的优惠劵
-
¥优惠劵使用时效:无法使用使用时效:
之前
使用时效:永久有效优惠劵ID:×
没有优惠劵可用!














