随笔-2021  评论-146  文章-4 
  2019年6月21日
正文内容加载中...
posted @ 2019-06-21 18:31 duanxz 阅读(21) 评论(0) 编辑
  2019年5月30日
摘要: HystrixCommand在执行的过程中如何探测超时,本篇主要对此进行介绍说明。 1.主入口:executeCommandAndObserve #com.netflix.hystrix.AbstractCommand#executeCommandAndObserve private Observa阅读全文
posted @ 2019-05-30 15:49 duanxz 阅读(39) 评论(0) 编辑
摘要: 前言Hystrix提供了基于信号量和线程两种隔离模式,通过在Hystrix基础章节中已经验证过,通过@HystrixCommand注解的方法体将在新的线程中执行,这样会带来些什么意想不到的意外呢,先来看一个示例:1、定义一个webapi,通过RequestContextHolder设定一个当前线程的阅读全文
posted @ 2019-05-30 15:26 duanxz 阅读(50) 评论(1) 编辑
  2019年5月9日
摘要: MongoDB与关系型数据库的建模还是有许多不同,因为MongoDB支持内嵌对象和数组类型。MongoDB建模有两种方式,一种是内嵌(Embed),另一种是连接(Link)。那么何时Embed何时Link呢?那得看两个实体之间的关系是什么类型。 一对一的关系:Embed,比如用户信息集合有Addre阅读全文
posted @ 2019-05-09 15:49 duanxz 阅读(352) 评论(0) 编辑
  2019年4月28日
摘要: 项目中用到了mongodb(3.x版本),业务上需要操作mongodb的多个collections,希望要么同时操作成功,要么回滚操作保持数据的一致性,这个实际上要求在mongodb上实现事务功能,在网上查了下资料,发现了两阶段提交的方案,不过网上基本上都是翻译,很少有人具体分析原理的,今天花了些时阅读全文
posted @ 2019-04-28 17:51 duanxz 阅读(98) 评论(0) 编辑
  2019年4月19日
摘要: 1. MongoDB 使用的锁 MongoDB 使用的是“readers-writer”锁, 可以支持并发但有很大的局限性当一个读锁存在,许多读操作可以使用这把锁,然而, 当一个写锁的存在,一个单一的写操作会”exclusively“持有该锁,同一时间其它写操作不能使用共享这个锁;举个例子,假设一个阅读全文
posted @ 2019-04-19 17:53 duanxz 阅读(112) 评论(0) 编辑
摘要: 读写锁 Mongodb使用读写锁来来控制并发操作: 当进行读操作的时候会加读锁,这个时候其他读操作可以也获得读锁。但是不能或者写锁。 当进行写操作的时候会加写锁,这个时候不能进行其他的读操作和写操作。 所以按照这个道理,是不会出现同时修改同一个文档(如执行++操作)导致数据出错的情况。 而且按照这个阅读全文
posted @ 2019-04-19 15:18 duanxz 阅读(106) 评论(0) 编辑
  2019年4月18日
摘要: 为什么要监控? 监控及时获得应用的运行状态信息,在问题出现时及时发现。 监控及时获得应用的运行状态信息,在问题出现时及时发现。 监控什么? CPU、内存、磁盘I/O、应用程序(MongoDB)、进程监控(ps -aux)、错误日志监控 CPU、内存、磁盘I/O、应用程序(MongoDB)、进程监控(阅读全文
posted @ 2019-04-18 17:59 duanxz 阅读(56) 评论(0) 编辑
摘要: 分片(sharding)是MongoDB用来将大型集合分割到不同服务器(或者说一个集群)上所采用的方法。尽管分片起源于关系型数据库分区,但MongoDB分片完全又是另一回事。 和MySQL分区方案相比,MongoDB的最大区别在于它几乎能自动完成所有事情,只要告诉MongoDB要分配数据,它就能自动阅读全文
posted @ 2019-04-18 15:54 duanxz 阅读(78) 评论(0) 编辑
摘要: 1.1 MongoDB复制集简介 一组Mongodb复制集,就是一组mongod进程,这些进程维护同一个数据集合。复制集提供了数据冗余和高等级的可靠性,这是生产部署的基础。 1.1.1 复制集的目的 保证数据在生产部署时的冗余和可靠性,通过在不同的机器上保存副本来保证数据的不会因为单点损坏而丢失。能阅读全文
posted @ 2019-04-18 15:51 duanxz 阅读(42) 评论(0) 编辑
  2019年3月20日
摘要: 环境准备 三台机器: vm-a 10.200.110.90 centos7vm-b 10.200.110.91 centos7vm-c 10.200.110.93 centos7Consul官网(https://www.consul.io/downloads.html)下载相应系统的consul可执阅读全文
posted @ 2019-03-20 13:55 duanxz 阅读(617) 评论(0) 编辑
  2019年3月13日
摘要: Nacos 是阿里巴巴2018年7月份开源的项目,如其名, Naming Configuration Service ,专注于服务发现和配置管理领域。 Nacos 是什么?上面已经大概介绍了,更多详细内容可以从 官网 或 Github 了解。Nacos 能帮我们解决什么问题?本文围绕其“配置管理”功阅读全文
posted @ 2019-03-13 16:58 duanxz 阅读(1188) 评论(0) 编辑
  2019年2月25日
摘要: 完成一套精准,漂亮图形化监控系统从这里开始第一步 为啥选择这些组件 Jolokia: Spring Boot 认可使用Jolokia来通过HTTP导出export JMX数据。你只需要在工程类路径中增加一些依赖项,一切都是开箱即用的。不需要任何额外的实现。 Telegraf: Telegraf支持通阅读全文
posted @ 2019-02-25 18:55 duanxz 阅读(250) 评论(0) 编辑
摘要: Telegraf 是什么? Telegraf 是一个用 Go 编写的代理程序,是收集和报告指标和数据的代理。可收集系统和服务的统计数据,并写入到 InfluxDB 数据库。Telegraf 具有内存占用小的特点,通过插件系统开发人员可轻松添加支持其他服务的扩展。 Telegraf是TICK Stac阅读全文
posted @ 2019-02-25 18:22 duanxz 阅读(988) 评论(1) 编辑
摘要: InfluxDB是一个当下比较流行的时序数据库,InfluxDB使用 Go 语言编写,无需外部依赖,安装配置非常方便,适合构建大型分布式系统的监控系统。 一、InfluxDB 简介 InfluxDB 是用Go语言编写的一个开源分布式时序、事件和指标数据库,无需外部依赖。 类似的数据库有Elastic阅读全文
posted @ 2019-02-25 18:01 duanxz 阅读(64) 评论(0) 编辑
  2019年2月21日
摘要: 说明:官网推荐: kong-dashboard,但对比界面高端程度和友好度,更推荐konga.[一个坑]kong版本问题:我在安装时目前kong最新版本已经到1.0.0, 对于konga和kong-dashboard还不支持,建议安装低版本0.15以下; 具体表现查询apis,旧版本:[ip]:80阅读全文
posted @ 2019-02-21 17:41 duanxz 阅读(123) 评论(0) 编辑
  2019年2月18日
摘要: Nginx 是俄罗斯人发明的, Lua 是巴西几个教授发明的,中国人章亦春把 LuaJIT VM 嵌入到 Nginx 中,实现了 OpenResty 这个高性能服务端解决方案。 通过 OpenResty,你可以把 nginx 的各种功能进行自由拼接, 更重要的是,开发门槛并不高,这一切都是用强大轻巧阅读全文
posted @ 2019-02-18 16:09 duanxz 阅读(363) 评论(0) 编辑
摘要: kong阅读全文
posted @ 2019-02-18 16:05 duanxz 阅读(48) 评论(0) 编辑
  2019年2月16日
摘要: plugin-development阅读全文
posted @ 2019-02-16 12:27 duanxz 阅读(46) 评论(0) 编辑
  2019年2月15日
摘要: 插件概述 插件之于kong,就像Spring中的aop功能。在请求到达kong之后,转发给后端应用之前,你可以应用kong自带的插件对请求进行处理,合法认证,限流控制,黑白名单校验,日志采集等等。同时,你也可以按照kong的教程文档,定制开发属于自己的插件。kong的插件分为开源版和社区版,社区版还阅读全文
posted @ 2019-02-15 19:27 duanxz 阅读(1030) 评论(0) 编辑
摘要: Introduction Kong的Admin API为Services, Routes, Plugins, Consumers, and Credentials的管理和配置提供了一个RESTful接口。因为这个API允许对Kong进行完全控制,所以确保这个API能够安全的访问非常重要。本文描述了保阅读全文
posted @ 2019-02-15 18:23 duanxz 阅读(96) 评论(0) 编辑
摘要: 介绍 在本节中,您将找到关于Kong推荐的网络和防火墙设置的摘要。PortsKong使用多个连接用于不同的目的。 代理 管理api Proxy代理端口是Kong接收传入流量的地方。有两个端口具有以下默认值; 8000 for proxying.这是Kong侦听HTTP流量的地方。一旦投入生产,请确保阅读全文
posted @ 2019-02-15 18:21 duanxz 阅读(38) 评论(0) 编辑
  2019年2月14日
摘要: 介绍 Kong集群允许您通过添加更多的机器来处理更多的传入请求来水平扩展系统。它们将共享相同的配置,因为它们指向相同的数据库。指向相同数据存储的Kong节点将是相同Kong集群的一部分。 您需要在Kong集群前面有一个负载均衡器,以便跨可用Kong节点分发流量。 一个Kong集群能做什么,不能做什么阅读全文
posted @ 2019-02-14 19:03 duanxz 阅读(62) 评论(0) 编辑
摘要: 介绍 您可以让Kong代理的API使用ring-balancer,通过添加包含一个或多个目标实体的 upstream 实体进行配置,每个 target指向不同的IP地址(或主机名)和端口。ring-balancer将在各种目标之间负载,并基于上游对目标执行健康检查,使它们无论是否响应都是健康的或不健阅读全文
posted @ 2019-02-14 16:47 duanxz 阅读(202) 评论(0) 编辑
摘要: 介绍 Kong为多个后端服务提供了多种负载平衡请求的方法:一种简单的基于DNS-based的方法,以及一种更动态的环形负载均衡器ring-balancer,它还允许在不需要DNS服务器的情况下使用service registry。 DNS-based loadbalance 当使用基于DNS-bas阅读全文
posted @ 2019-02-14 14:12 duanxz 阅读(87) 评论(0) 编辑