-
Spring Cloud构建微服务架构:分布式服务跟踪(整合logstash)【Dalston版】
通过之前的 《入门示例 》,我们已经为 两个由SpringCloud构建的微服务项目 trace-1和 trace-2引入了Spring Cloud Sleuth的基础模块 spring-cloud-starter-sleuth,实现了为各微服务的日志信息中添加跟踪信息的功能。但是,由于日志文件都离散的存储在各个服务实例的文件系统之上,仅仅通过查看日志文件来分析我们的请求链路依然是一件相当麻烦的差…- 3
- 0
-
ASP.NET Core微服务之基于Steeltoe集成Zuul实现统一API网关
Tip: 此篇已加入.NET Core微服务基础系列文章索引,本篇接上一篇《基于Steeltoe使用Eureka实现服务注册与发现》,所演示的示例也是基于上一篇的基础上而扩展的。 一、关于Spring Cloud Zuul API Gateway(API GW / API 网关),顾名思义,是出现在系统边界上的一个面向API的、串行集中式的强管控服务,这里的边界是企业IT系统的边界。 Zuul 是…- 9
- 0
-
Netty游戏服务器实战开发(2):ByteBuf – 字节数据的容器
Buffer(缓冲) 网络数据的基本单位永远是 byte(字节)。Java NIO 提供 ByteBuffer 作为字节的容器,但它的作用太有限,也没有进行优化。使用ByteBuffer通常是一件繁琐而又复杂的事。 幸运的是,Netty提供了一个强大的缓冲实现类用来表示字节序列以及帮助你操作字节和自定义的POJO。这个新的缓冲类,ByteBuf,效率与JDK的ByteBuffer相当。设计Byte…- 8
- 0
-
Netty游戏服务器实战开发(5):利用Netty打造轻量级RPC组件
简介:什么是RPC? RPC,即 Remote Procedure Call(远程过程调用),说得通俗一点就是:调用远程计算机上的服务,就像调用本地服务一样。 RPC 可基于 HTTP 或 TCP 协议,Web Service 就是基于 HTTP 协议的 RPC,它具有良好的跨平台性,但其性能却不如基于 TCP 协议的 RPC。会两方面会直接影响 RPC 的性能,一是传输方式,二是序列化。 Net…- 40
- 0
-
Netty源码分析第6章(解码器)—->第3节: 行解码器
Netty源码分析第六章: 解码器 第三节: 行解码器 这一小节了解下行解码器LineBasedFrameDecoder, 行解码器的功能是一个字节流, 以\r\n或者直接以\n结尾进行解码, 也就是以换行符为分隔进行解析 同样, 这个解码器也继承了ByteToMessageDecoder 首先看其参数: 1//数据包的最大长度, 超过该长度会进行丢弃模式 2private final…- 2
- 0
-
Netty源码分析第1章(Netty启动流程)——–>第2节: NioServerSocketChannel的创建
第一章: Server启动流程 第二节:服务端初始化 我们如果熟悉Nio, 则对channel的概念则不会陌生, channel在相当于一个通道, 用于数据的传输 Netty将jdk的channel进行了包装, 并为其扩展了更多的功能 在netty中也分为服务端channel和客户端channel, 在Nio模式下, 服务端channel对应的类为NioServerSocketCha…- 1
- 0
-
Netty In Action中文版 – 第十一章:WebSocket
Netty In Action中文版 - 第十一章:WebSocket 本章介绍 WebSocket ChannelHandler,Decoder and Encoder 引导一个Netty基础程序 测试WebSocket “real-time-web”实时web现在随处可见,很多的用户希望能从web站点实时获取信息。Netty支持WebSocket实现,并包含了不同的版本,我们可以非常容易的实现…- 23
- 0
-
Netty In Action中文版 – 第一章:Netty介绍
Netty In Action中文版 - 第一章:Netty介绍 Netty介绍 为什么要使用non-blocking IO(NIO) 阻塞IO(blocking IO)和非阻塞IO(non-blocking IO)对比 Java NIO的问题和在Netty中的解决方案 Netty是基于Java NIO的网络应用框架,如果你是Java网络方面的新手,那么本章将是你学习Java网络应用的开始;对于有…- 2
- 0
-
Java NIO框架Netty教程(十一) 并发访问测试(上)
之前更新了几篇关于JVM研究的文章,其实也是在做本篇文章验证的时候,跑的有点远,呵呵。回归Netty教程,这次要讲的其实是针对一个问题的研究和验证结论。另外,最近工作比较忙,所以可能会分文章更新一些阶段性的成果,而不是全部汇总更新,以免间隔过久。 起因是一个朋友,通过微博(OneCoder腾讯微博、OneCoder新浪微博、OneCoder网易微博、OneCoder搜狐微博)私信给我一个问题,大意…- 7
- 0
-
Java NIO框架Netty教程(十五)-利用Netty进行文件传输
如果您持续关注OneCoder,您可能会问,在《Java NIO框架Netty教程(十四) Netty中OIO模型(对比NIO)》中不是说下节介绍的是,NIO和OIO中的worker处理方式吗。这个一定会有的,只是在研究的过程中,OneCoder发现了之前遗留的文件传输的代码,所以决定先完成它。 其实,Netty的样例代码中也提供了文件上传下载的代码样例,不过太过复杂,还包括了Http请求的解…- 8
- 0
-
基于netty-socketio的web推送服务
在WEB项目中,服务器向WEB页面推送消息是一种常见的业务需求。PC端的推送技术可以使用socket建立一个长连接来实现。传统的web服务都是客户端发出请求,服务端给出响应。但是现在直观的要求是允许特定时间内在没有客户端发起请求的情况下服务端主动推送消息到客户端。最近的预警系统中,需要服务端向预警系统推送商品行情和K线相关的数据,所以对常用的WEB端推送方式进行调研。常见的手段主要包括以下几种: …- 7
- 0
-
go-kit实践之3:go-kit 微服务的限流实现
介绍 go-kit提供了限流模块,该模块采用令牌桶算法实现,其实是封装了一下golang自带的golang.org/x/time/rate包来实现的。 令牌桶 令牌桶这种控制机制基于令牌桶中是否存在令牌来指示什么时候可以发送流量。令牌桶中的每一个令牌都代表一个字节。如果令牌桶中存在令牌,则允许发送流量;而如果令牌桶中不存在令牌,则不允许发送流量。因此,如果突发门限被合理地配置并且令牌桶中有足够的令…- 43
- 0
-
Kafka实战(五) – Kafka的秘技"坂本"之争
只有顺应版本,才能成就王者不败神话 也是能否用好Kafka的关键。 不论是哪种Kafka,本质上都基于core Apache Kafka 那就来说说Apache Kafka版本号的问题 1 缘何"在乎"你这版本号 直接使用最新版本不就好了吗? 当然了!这的确是一种有效策略,这种策略并非在任何场景下都适用 如果不了解各个版本之间的差异和功能变化,怎么能够准确地评判某Kafka版本…- 24
- 0
-
RabbitMQ VS Apache Kafka (五)—— RabbitMQ路由拓扑与消息模式
本章我们讨论RabbitMQ的消息模式与路由拓扑,主要涉及以下知识点: 交换器类型与绑定关系 消息队列 死信交换器 即时交换器与队列 备用交换器 优先级队列 交换器类型 1. 扇出交换器 扇出交换器提供了典型的发布订阅消息拓扑,发送到扇出交换器中的消息将会广播路由到所有绑定到当前交换器上的所有消息队列和交换器中。 在扇出交换器中,消费者彼此间相互独立,彼此收到的也只是消息的拷贝。如果需要对Cons…- 11
- 0
-
Kafka 中使用 Avro 序列化框架(一):使用传统的 avro API 自定义序列化类和反序列化类
关于 avro 的 maven 工程的搭建以及 avro 的入门知识,可以参考: Apache Avro 入门 1. 定义 schema 文件,并编译 maven 工程生成实体类 schema 文件名称为:stock.avsc,内容如下: 1 2{ 3 "namespace": "com.bonc.rdpe.kafka110.beans", 4 "…- 9
- 0
-
如何收集项目日志统一发送到kafka中?
如何在普通应用程序实时收集日志 所谓的普通程序就是web项目的或者非web项目的的程序,大部分都是单机版本的。 大多数时候,我们的log都会输出到本地的磁盘上,排查问题也是使用Linux命令来搞定,如果web程序组成负载集群,那么就有多台机器,如果有几十台机器,几十个服务,那么想快速定位log问题和排查就比较麻烦了,所以很有必要有一个统一的平台管理log,现在大多数公司的套路都是收集重要应用的lo…- 11
- 0
-
使用Log4j将程序日志实时写入Kafka
第一部分 搭建Kafka环境 安装Kafka 下载:http://kafka.apache.org/downloads.html 1tar zxf kafka-<VERSION>.tgz 2cd kafka-<VERSION> 3 启动Zookeeper 启动Zookeeper前需要配置一下config/zookeeper.properties: 接下来启动Zookeep…- 16
- 0
-
Java使用RabbitMQ(一)–基本用法
关于java使用rabbitMq的基本用法 创建连接 1 2 public static ConnectionFactory factory; 3 public static Connection getConnection(String username,String password,String host,int port,String virtualhost) { 4 if (factor…- 2
- 0
-
学会查看 RabbitMQ日志
如果在使用RabbitMQ的过程中出现了异常情况,通过翻阅RabbitMQ的服务日志可以让你在处理异常的过程中事半功倍。RabbitMQ日志中会有明确的事件日期、事件内容以及事件等级等。RabbitMQ的日志默认存放在$RABBITMQ_HOME/var/log/rabbitmq目录下。本问主要从RabbitMQ服务开启、RabbitMQ服务关闭以及RabbitMQ集群搭建的角度来举例说明Rabb…- 26
- 0
-
.Net下RabbitMQ的使用(4) — 订阅和发布
消息的订阅和发布是使用消息队列的常用场景。在上一篇文章中,虽然有多个消费者,但是一个消息只会有一个消费者来处理。而订阅和发布则是每个订阅该消息的消费者都会收到这个消息。RabbitMQ的路由机制让我们实现这个功能轻而易举。 要了解RabbitMQ的路由机制,exchange是一个关键。exchange可以叫做交换机,也似乎可以叫做路由器,反正它是用来选择路由的。前文说到,RabbitMQ的核心…- 21
- 0
-
RabbitMQ使用详解
刚刚用了,记录下来,以后忘了,方便能够快速想起来。 首先说明,由于RabbitMQ服务端非JAVA,C++语言,当然也就看不懂,所以本文的理解都是过于主观的。 一,RabbitMQ服务端搭建 推荐最好的安装方式:去官网,去官网,去官网,重要的事情说三遍。 我一般的操作流程是:用google右上角翻译网页,然后看个大概意思,然后再显示原网页,一个单词单词的看。 还是总结一下Ubuntu,Rabbit…- 25
- 0
-
Centos7 安装rabbitMQ
RabbitMQ的基本原理 首先需要安装erlang,根据rabbitMQ的版本不同安装的erlang版本也不一样: erlang与rabbitMQ版本关系 我的系统是centos7 、Erlang 20.x rabbitMQ 3.6.11. 第一步添加yum源 1# vi /etc/yum.repos.d/rabbitmq-erlang.repo 2 3 1添加如下内容: 2[rabbitmq-…- 8
- 0
-
Memcache分布式部署方案
前言 应该是很久之前,我开始研究Memcache,写了一系列的学习心得,比如《Discuz!的Memcache缓存实现》等。后面的好几十条回复也让这篇文章成为了此博客中颇受关注的一员。 同时在百度和Google,关键词Memcache在长达一年多的时间里占据着第二位(第一位是官方),为很多需要了解或者应用Memcache的朋友提供了一些信息,但是我始终觉着还不够,于是本文诞生。 唠唠叨叨说了半天,…- 2
- 0
-
分布式日志收集框架Flume
分布式日志收集框架Flume 1.业务现状分析 WebServer/ApplicationServer分散在各个机器上 想在大数据平台Hadoop进行统计分析 日志如何收集到Hadoop平台上 解决方案及存在的问题 如何解决我们的数据从其他的server上移动到Hadoop之上? shell: cp --> Hadoop集群的机器上,hdfs dfs -put ....(有很多问题不好解决,…- 26
- 0
幸运之星正在降临...
点击领取今天的签到奖励!
恭喜!您今天获得了{{mission.data.mission.credit}}积分
我的优惠劵
-
¥优惠劵使用时效:无法使用使用时效:
之前
使用时效:永久有效优惠劵ID:×
没有优惠劵可用!










