随笔分类 - 【架构设计-微服务体系】
摘要:BitMap(位图)的介绍 BitMap从字面的意思,很多人认为是位图,其实准确的来说,翻译成基于位的映射,其中数据库中有一种索引就叫做位图索引。 在具有性能优化的数据结构中,大家使用最多的就是hash表,是的,在具有定位查找上具有O(1)的常量时间,多么的简洁优美。但是数据量大了,内存就不够了。此
阅读全文
摘要:预备知识 本文讨论基于微服务架构下的身份认证和用户授权的技术方案,最好先熟悉并理解以下几个知识点: 微服务架构相关概念:服务注册、服务发现、API 网关 身份认证和授权技术:SSO、CAS、OAuth2.0、JWT 以下几个基础概念: 认证 授权 鉴权 权限控制 前提背景 当企业的应用系统逐渐增多后
阅读全文
摘要:前提介绍 如果要设计开发一套微服务基础架构,参数化配置是一个非常重要的点,而Netflix也开源了一个叫变色龙Archaius的配置中心客户端,而且Archaius可以说是比其他客户端具备更多生产级特性,也更灵活。 在NetflixOSS微服务技术栈中,几乎所有的其它组件(例如Zuul, Hystr
阅读全文
摘要:前提回顾 【SpringCloud技术专题】「原生态Fegin」打开Fegin之RPC技术的开端,你会使用原生态的Fegin吗?(中) 【SpringCloud技术专题】「原生态Fegin」打开Fegin之RPC技术的开端,你会使用原生态的Fegin吗?(上) 内容简介 在项目开发中,除了考虑正常的
阅读全文
摘要:服务组件化 组件,是一个可以独立更换和升级的单元。就像PC中的CPU、内存、显卡、硬盘一样,独立且可以更换升级而不影响其他单元。 在“微服务”架构中,需要我们对服务进行组件化分解。服务,是一种进程外的组件,它通过http等通信协议进行协作,而不是传统组件以嵌入的方式协同工作。服务都独立开发、部署,可
阅读全文
摘要:现在微服务这个名词越来越火了,公司最近也想使用微服务的技术,因此我就把我学习的东西记录下来,以备以后查询。既然要学习微服务,那么什么是微服务?微服务解决了什么问题?微服务有什么特点?就是我们首先要搞清楚的问题。 为了搞清楚什么是微服务我们首先来说一下传统的单体架构,一个归档包包含了应用所有功能的应用
阅读全文
摘要:基于pinpoint改造的一种方式的思考(1)--agent 添加代理层 1.Pinpoint简介 Pinpoint 是用 Java 编写的 APM(应用性能管理)工具,用于大规模分布式系统。在 Dapper(dapper.docx) 之后,Pinpoint 提供了一个解决方案,以帮助分析系统的总体
阅读全文
摘要:问题背景 随着微服务架构的流行,服务按照不同的维度进行拆分,一次请求往往需要涉及到多个服务。互联网应用构建在不同的软件模块集上,这些软件模块,有可能是由不同的团队开发、可能使用不同的编程语言来实现、有可能布在了几千台服务器,横跨多个不同的数据中心。因此,就需要一些可以帮助理解系统行为、用于分析性能问
阅读全文
摘要:由于公司目前有200多微服务,微服务之间的调用关系错综复杂,调用关系人工维护基本不可能实现,需要调研一套全链路追踪方案,初步调研之后选取了skywalking和pinpoint进行对比; 选取skywalking和pinpoint对比的原因是:两者都使用探针(agent)技术进行信息采集,集成到项目
阅读全文
摘要:https://naver.github.io/pinpoint/ https://github.com/naver/pinpoint 背景 随着项目微服务的进行,微服务数量逐渐增加,服务间的调用也越来越复杂,我们急切需要一个APM工具帮我们监控各个服务的性能及对服务间的调用进行跟踪,而通过调研多个
阅读全文
摘要:前言 分布式系统中经常会出现某个基础服务不可用造成整个系统不可用的情况, 这种现象被称为服务雪崩效应. 为了应对服务雪崩, 一种常见的做法是手动服务降级. 而Hystrix的出现,给我们提供了另一种选择. 服务雪崩效应的定义 服务雪崩效应是一种因 服务提供者 的不可用导致 服务调用者 的不可用,并将
阅读全文