摘要:一、简介 Seq,国外开发的一个针对.NET的非常友好的日志服务。支持容器部署,提供单用户免费开发版本。 官网:https://datalust.co/seq 使用文档:https://docs.datalust.co/docs 二、功能 支持主流编程语言,特别是.NET非常友好。 丰富的事件格式。
阅读全文
摘要:一、简介 ElasticSearch。简称es,开源高扩展的分布式全文搜索引擎。近乎实时存储、检索数据。扩展性好,可以扩展上百台服务器,处理PB级别的数据。java开发,使用Lucene作为核心来实现所有索引和搜索功能,目的是通过简单的Restful Api来影藏Lucene的复杂性,从而让全文搜索
阅读全文
摘要:一、简介 开源监控系统和警报工具包,从2012年开始由Google工程师在Soundcloud以开源软件形式研发,于2015年早期对外发布早期版本。2016年5月继Kubernates之后成为第二个正式加入CNCF基金会的项目,同年6月正式发布1.0版本。2017年底发布了基于全新存储层的2.0版本
阅读全文
摘要:一、应用场景 微服务架构中,限流功能一般由网关提供。而对于很多非微服务化的系统,可能并没有网关[无论是因为成本还是复杂度],在这种场景下,为了实现限流,.NET 7中提供了限流中间件 Rate Liniting。 二、实现 首先,SDK版本 >= 7。 然后添加代码注册。 微软为我们提供了4中常用的
阅读全文
摘要:一、简介 ES在多线程并发访问修改情况下会用到锁机制。大致分为乐观锁和悲观锁。 二、乐观锁 通过_version来记录文档版本。在文档创建时会有一个初始version,默认为1.对文档修改或者删除时,version会递增,也可以指定。只有当版本号大鱼当前版本时,才会修改或者删除成功,否则失败。当并发
阅读全文
摘要:一、消息延迟如何监控 1、消息队列提供的工具,通过监控消息的堆积来完成。 2、通过生产监控消息对消息延时的监控。 二、详情 /2.1、消息队列工具 以kafka为例。不用版本消费者的消费进度不一样。 在 Kafka0.9 之前的版本中,消费进度是存储在 ZooKeeper 中的,消费者在消费消息的时
阅读全文
摘要:一、消息为何会丢失 消息从生产者到消息队列的过程。 消息在消息队列存储的过程。 消息在被消费的过程 。 二、分析 2.1、消息在写消息队列过程中丢失 消息生产者一般就是业务系统,消息队列是单独部署了在独立的服务器上的,所以业务服务器和消息队列服务器可能会出现网络抖动,当出现了网络抖动,消息就会丢失。
阅读全文
摘要:一、作用 异步化提升性能、系统间解耦、流量削峰。 二、类型 ActiveMQ、RabbitMQ、Kafka以及RocketMQ这四大类。 2.1、ActivwMQ 目前不活跃,前几年用的比较多,故略去。 2.2、Kafka 【优点】: Kafka最大优势就在于高吞吐量,在普通机器4CPU8G的配置下
阅读全文
摘要:一、简介 简称 ES,开源高扩展分布式全文检索引擎。可以近乎实时存储,检索数据。扩展性良好,可扩展数百台服务器,处理PB级别的数据。 ES也使用Java开发并使用Lucene作为核心来实现所有索引和搜索的功能,但是它的目的是通过简单的Restful Api来隐藏Lucene的复杂性,从而让全文搜索变
阅读全文
摘要:一、简介 可以用zookeeper来做:统一配置管理、统一命名服务、分布式锁、集群管理。 二、数据结构 跟Unix文件系统非常类似,可以看做是一棵树,每个节点叫做【ZNode】,每个节点可以通过路径来标识,结构图如下: Znode分类: 1、短暂/临时【Ephemeral】:当客户端和服务端断开后,
阅读全文