微服务系列之api文档 swagger整合_cl静淡-编程思维

1.前言   微服务架构随之而来的前后端彻底分离,且服务众多,无论是前后端对接亦或是产品、运营翻看,一个现代化、规范化、可视化、可尝试的文档是多么重要,所以我们这节就说说swagger。   Swagger是一款RESTFUL接口的文档在线自动生成+功能测试功能软件。Swagger是一个规范和完整的框架,用于生成、描述、调用和可视化RESTful风格的Web服务。目标是使客户端和文件系统作为服务

coroot 开源微服务架构监控以及问题解决工具_荣锋亮-编程思维

coroot 的架构设计上基于了prometheus,同时也依赖了ebpf(已经成为业界问题分析的标配了),同时官方也开源了不少exporter,比如node,pg,aws 。。。。 包含的特性 tcp 链接追踪 包含了tcp 事件,比如connect,listen 日志提取 包含了/var/log,journald, docker json 文件日志, containerd (cri 日志)

coroot 简单试用_荣锋亮-编程思维

主要是体验下coroot ,基于虚拟机+docker-compose 混合模式 参考玩法     本次玩法 coroot server 以及prometheus 使用容器部署(docker-compose),因为内核原因原因,node-agent 基于了虚拟机,同时安装了,5.4 的内核     环境配置 docker-compose version: "3" se

使用 victoriametrics vmagent 解决 coroot prometheus 大量存储以及push 问题_荣锋亮-编程思维

日常环境我们经常需要使用push 模式进行metrics 的处理,vmagent 是一个很不错的选择,尽管官方提供了一个promtun 但是很不好使用 参考玩法 如下图,直接使用vmagent 解决push的问题,基于victoriametrics 强大的能力,可以扩展多租户的支持     环境准备 docker-compose 文件   version: "3" s

微服务系列之授权认证(三) jwt_cl静淡-编程思维

1.JWT简介   官方定义:JWT是JSON Web Token的缩写,JSON Web Token是一个开放标准(RFC 7519),它定义了一种紧凑的、自包含的方式,可以将各方之间的信息作为JSON对象安全地传输。该信息可以被验证和信任,因为它是经过加密的。   实际上,Oauth2.0中的access token一般就是jwt格式。   token由三部分组成,通过"."分隔,分别是:

若依(ruoyi )权限管理设计_萌猫他爸-编程思维

前言 若依权限管理包含两个部分:菜单权限 和 数据权限。菜单权限控制着我们可以执行哪些操作。数据权限控制着我们可以看到哪些数据。 菜单是一个概括性名称,可以细分为目录、菜单和按钮,以若依自身为例: 目录,就是页面导航,也可以理解为导航父菜单(二级导航或三级导航)如:系统管理;某个父菜单没有权限,表示需要隐藏或禁用这个父菜单。 菜单,就是导航子菜单,如:用户管理;某个子菜单没有权限,表示需要隐

parca 项目protocol buffers 管理学习_荣锋亮-编程思维

parca 是基于pprof+ebpf 实现的持续profile 工具,开发基于golang,使用了不少protocol buffers 比如协议定义rpc 服务契约等,以下是一些整理学习 protocol buffers 版本以及依赖管理工具 protocol buffers 是很不错,但是版本管理以及lint 是一个问题,所以parca 基于了buf 进行管理 参考使用 项目结构 标准

buf 工具的一些概念_荣锋亮-编程思维

buf 可以使用类似包管理的概念解决protocol buffers 管理的问题 buf 包定义 buf 的包,部分功能是借鉴了类似npm 的一些玩法,只是对象简单一些,一个包是包含了一个buf.yaml 文件的服务定义buf 包里边包含了protoc 文件,buf.yaml 文件同时包含了protocol 依赖的定义配置,如果需要发布buf 的bsr 同时还需要定义名称,支持lint,form

buf 工具简单学习_荣锋亮-编程思维

buf实际上是一个围绕protocol buffers 的工具链,包含了不少东西,对于我们来说使用比较多的就是buf cli 以下主要说明下buf cli 的简单使用 buf 的能力 包含了lint,gen,workspace 管理,formater,deps 管理 简单使用 初始化项目 项目目的,创建一个简单的基于grpc 的service 定义,基于buf 进行模块以及依赖管理 基本

buf connect-go 试用_荣锋亮-编程思维

golang 包含一个grpc-web 可以让浏览器运行grpc,但是是需要一些中间件工具的,connect-go 简化了处理,可以基于post 通过 http 协议就可以试用grpc 了 包含的特性 基于http 简单 多协议支持,包含了grpc,grpc-web 参考试用 初始化 注意还需要配置环境变量   mkdir connect-apps go

parca && pyroscope 对比_荣锋亮-编程思维

简单对比下parca 以及pyroscope,两个都是持续profile 平台工具 技术核心 parca 利用了ebpf进行agent 的push 处理,当然也支持基于google 的pprof,parca 核心就利用了pprof pyroscope 属于自己定义的格式, 语言支持 pyroscope 当前支持的语言还是比较多的,基本主要的都可以 parca 目前主要是golang,c,

微服务系列之授权认证(一) oauth 2.0 和 openid connect_cl静淡-编程思维

1.传统架构的授权认证   传统应用架构,用户使用账号密码登录后,可以使用前端cookie存储登录状态,也可以使用后端session方式存储登录状态,小应用这么做其实很高效实用,当应用需要横向扩展时,就需要共享登录状态,这时候session的基于asp.net state这种当前服务器进程方式存储就失效了,需要换成sqlserver或者redis作为session共享存储,这些都不是问题,这些前

庐山真面目之十五微服务架构的动态分离的设计实现_可均可可-编程思维

一、开场白      我是一名程序员,是基于 NET 框架的跨平台开发的程序员。现在的业务系统,不论大小都开始实现了微服务,不管合不合适,最起码说起来挺牛气的。我做一位程序员,当然也不能落后了。微服务是为了满足高并发、高可用和高扩展特性进化出来的一个架构模式。一个微服务架构中,为了解决其中一个性能问题,可能就会有很多技术方案。我今天就和大家天天为了应付高并发可以使用的缓存和动态分离的设计,听起来

parca持续内存&cpu 分析工具_荣锋亮-编程思维

parca 是利用了ebpf 以及google 的pprof 功能实现的内存以及cpu propfiler 工具 包含的特性 多维数据模型,通过官方文档可以了解到支持的数据处理是不错的 内置优化的存储 支持基于pull,以及push 模式,部分实际上是借鉴了prometheus 格式的,但是支持了push 模式 优化数据的查询引擎 支持服务发现(包含了动态以及静态处理,借鉴了prometheu

.net core中使用grpc_有梦想的鱼i-编程思维

1.什么是gRPC 1.基本介绍 gRPC 一开始由 google 开发,是一款语言中立、平台中立、开源的远程过程调用(RPC)系统,所以叫g(google)RPC。支持主流开发语言(C, C++, Python, PHP, Ruby, NodeJS, C#, Objective-C、Golang 2.proto文件 用于定义协议接口和数据格式,不同的语言,相同的文件,可以理解为一项约定,序列化

微服务系列之网关(二) konga配置操作_cl静淡-编程思维

1.konga核心对象   Kong 的四大核心对象:upstream,target,service,route。下面分别说: (1)upstream,字面意思上游,实际项目理解是对某一个服务的一个或者多个请求地址的抽象入口,新建upstream可配置基本信息,被动/主动健康检查。 (2)trarget,目标,实际就是上游upstream的一个多个实际的某服务的请求地址(ip:port或者域名)

.net core微服务系列之前言_cl静淡-编程思维

  微服务概念其实已经流行了不短的年头了,只是大部分实战都是在以java为主的大型互联网公司使用,.net在国内的市场,作为.net程序猿们都懂得,就拿北京来说,前2年别说微服务了,就连.net core用的公司都不是很多,很多人躺平到asp.net了,但是随着.net core把版本不断更新,社区也不断活跃,在完全开源和完美契合docker容器化的背景下,渐渐的有了起色,很高兴国内一些大公司已

微服务系列之网关(一) kong及管理界面konga的安装部署_cl静淡-编程思维

1.网关概述   微服务架构系统少则十几,多则成百上千个服务组成,除了少部分内部基础服务之外,大部分都是客户端调用,在没有网关之前,客户端需要把所用到的服务,都配置到一个配置文件里,少的时候还行,多的时候,维护起来相当麻烦,容易出错,尤其服务地址发生迁移变化的时候,这时候网关最实用也最常用的功能就体现出来了,就是请求分发,客户端只需要配置一个网关地址即可,需要什么服务的时候,网关+服务名称+pa