
微服务
文章平均质量分 92
inthirties
程序员紫龙,喜欢编程,热爱编程的老年程序员
展开
-
ClickHouse 大数据量的迁移方式
关于Clickhouse 备份方式,其官方网站上就提供了多种备份方式可以参考,不同的业务需求有不同的使用场景,需要使用不同的备份方式,不存在一个通用的解决方案可以应对各种情况下的ClickHouse备份和恢复。今天这个文字,我们介绍的是各种不同的Clickhouse的迁移方式,具体使用场景还需要根据要求进行选择。原创 2022-12-29 11:25:12 · 7880 阅读 · 0 评论 -
Go-Gateway反向代理,性能比拼Nginx
在以前的一篇文章《基于Fasthttp实现的Gateway,性能媲美Nginx。原创 2022-10-07 10:50:55 · 2635 阅读 · 0 评论 -
Sleuth+zipkin, 链路追踪SpringCloud微服务
在我们越来越庞大的微服务群中,随着业务的不断扩展,微服务的个数也越来越多, 微服务的架构体系,服务拆分导致系统调用链路也在不断的复杂化,一个稍微复杂的前端请求可能最终需要调用很多次后端服务才能完成,一个后端的服务,可能通过多次的Feign调用才能实现;当我们的请求出现故障或者是性能降低时,我们分析到最后的根本致错的微服务也带来了很大的困难,分布式系统的链路追踪便是用来挑战这个困难的,今天我们介绍的Sleuth+Zipkin,就是用来对SpringCloude的微服务云体系里的服务定位和追踪的解决方案。原创 2022-10-06 14:48:35 · 814 阅读 · 0 评论 -
他山之石,可以攻玉, 改造fasthttp实现高性能网络通信
如果朋友看过在下上一篇文章《boot4go-gateway和nginx的性能测试大PK》,能在反向代理的性能PK中完胜Nginx的Gateway,是使用GO语言在基于比Go的标准http包快10倍以上的Fasthttp的基础上开发的;Fasthttp在Go语言里,以其卓著的性能优势而闻名,为什么fasthttp能有如此卓越的性能优势了,网上可以找到很多此方面的文章介绍。简要而言:一、是对每个连接请求和连接处理的协程进行了池化的处理;二、是通过合理的对象池的处理进可能的对性能进行压缩;原创 2022-09-17 23:57:29 · 793 阅读 · 0 评论 -
基于Fasthttp实现的Gateway,性能媲美Nginx
springcloud里的gateway可以和配置中心实现gateway的配置,可以和hytrix以及alibaba的Sentinel结合,实现熔断限流的功能,springcloud升级到3.0.1后,摒弃了netfix里的hytrix,使用新的熔断器reslience4j,这几种限流器都未提供比较完善的管理界面进行管理,sentinelboard提供管理工具,但是要做到完全的动态和配置管理,必须添加自己的代码,alibaba开源出来的sentinel的项目,这块的代码目前是没有公开的。原创 2022-09-15 21:33:18 · 1010 阅读 · 0 评论 -
SpringCloud微服务的监控器,Actuator
在微服务系统里,对微服务程序的运行状况的跟踪和监控是必不可少的;例如GPE,Telegraf+influxDB都提供了微服务体系监控的方案, ZIPKIN, Skywalking都提供了微服务云体系的APM的方案;这些解决方案功能全面;但是都需要提供额外的资源进行架构;其实在SpringBoot构建的微服务中本身就带有了Actuator组件,能够提供相关的功能,如果我们对此要求不特别高,我们可以在自己的微服务中开启Actuator的功能即可;原创 2022-09-14 12:48:40 · 4237 阅读 · 0 评论 -
Cloud Native=Cloud+Native 理解云原生
云原生到底是什么?云原生是个很热的词,云原生看了不少资料,但是很多朋友依然不是很理解所谓的云原生究竟是什么,本文章就来和大家讲一讲笔者是怎样来理解这个云原生的。原创 2022-09-13 14:46:47 · 496 阅读 · 1 评论 -
SpringCloud CircuitBreak, 熔断限流
CircuitBreaker熔断器是类似于家用保险盒的功能,当在微服务体系里,由于某个作为服务提供者的微服务发生性能故障或者网络中断的情况下,作为消费者的微服务不会因为上端的大规模的服务中断而发生服务一直等待响应;而产生雪崩状况的一种解决方案;通过熔断器的设计,当上端服务路由出现故障或者不响应的时候,会对上端的服务路由进行短路处理,而避免出现长时间等待响应的情况;限流器和熔断器一样,都是为提供微服务的高可用的一种解决方案;和熔断器有所不同,限流器的主要目的是用于限制微服务云中服务路由中的流量控制;原创 2022-09-13 09:39:15 · 1609 阅读 · 1 评论 -
SpringCloud集成LoadBalance,负载均衡
前一篇文章《SpringCloud集成OpenFeign,轻松RPC》给大家介绍了,如何在SpringCloud的开发中集成OpenFeign,去实现RPC的调用, 这个知识点是作为SpringCloud的开发中最常用的技巧,作为使用SpringCloud进行微服务开发的朋友一定要熟练的操作;同时,通过SpringCloud的OpenFeign调用也就真正拉开了微服务开发的序幕,通过OpenFeign就可以把我们多个不同的SpringBoot的微服务实现,集成在一个微服务的云环境里面了;原创 2022-09-12 19:28:37 · 2283 阅读 · 0 评论 -
让你的SpringBoot更有个性, 定制酷炫Banner
在进行SpringCloud进行开发的时候,不知道朋友们有没有注意到你的SpringBoot微服务启动的时候的日志里会出现启动画面;如下图所示特别的酷炫有风格;这个方式可以非常简单的通过SpringBoot里提供的SPI的方式得以实现;今天我们要给大家介绍的就是通过几行代码,来显示这样的效果,虽然这里没有太多的技术含量,但是可以给我们的SpringCloud或者SpringBoot微服务,和我们自行开发的Starter带来更多的个性;笔者开发的很多定制化的starter都是用这样的方法来增加个性;原创 2022-09-11 20:12:15 · 1012 阅读 · 0 评论 -
SpringCloud集成OpenFeign,轻松RPC
Springcloud解决方案,实现微服务;是目前很多中小公司实现微服务的常见的解决方式;在每个微服务单元之间的RPC调用,在SpringCloud的解决方案中通过Web Restful实现也是最常见的场景,在Springcloud的整体解决方案中,官方推荐的是使用SpringCloud OpenFeign来实现此目的;原创 2022-09-10 19:23:51 · 1423 阅读 · 0 评论 -
Springboot集成Mybatisplus,轻松CRUD
作为业务开发,和数据库交互,对业务数据进行CRUD的操作就是项目中最常见的要求了,从最原始的JDBC的操作,到现在的最广泛的JPA,Hibernete, MyBatis等ORM的架构;无不都是在实现和数据库进行交互的实现;在我们的业务开发里,数据库作为业务数据和用户数据的最终落地的归宿;使得我们的数据库CRUD操作成为一个程序员不可缺少的工作要求;虽然笔者觉得CRUD是个不需要太多技术要求的工作;但是作为程序员我们还是必须掌握这个技巧;原创 2022-09-09 13:37:01 · 1373 阅读 · 0 评论 -
SpringBoot集成grpc实现微服务
传统的SpringCloud实现微服务的方案中,我们通常都是使用SpringCloud OpenFeign组件以RESTFUL API的调用方式来完成微服务之间的RPC调用;使用RESTFUL API的方式在SpringCloud实施的微服务在实际的项目中还是非常常见的;在实现上比较的简单,而且关于RPC调用中的服务熔断等处理的组件也支持的较多;一般的SpringCloud都是采用OpenFeign通过HTTP的方式;今天我们这个文章给大家介绍一种在云原生中应用的更为广泛的RPC调用的方式gRPC;原创 2022-09-08 11:54:21 · 2119 阅读 · 0 评论 -
SpringCloud集成Resilience4j实现熔断器
在文章《小谈Springcloud中的几个主流熔断器》我们介绍了SpingCloud架构中的几个主流熔断器,其中SpringCloud官方推荐的Resilience4j作为2020.x以后的新秀,远远没有hystrix有名,相关的文档也还不够多;今天这个文章就来讲讲SpringCloud如何使用Resilience4j实现熔断器;@Override}@Override}@Override}}通过以上的步骤,就可以实现Resilience4j的熔断器的实现了。原创 2022-09-07 10:37:26 · 1698 阅读 · 1 评论 -
Fastnet,三步完成高性能的网络开发
在GO语言里,由于其天生的支持多并发,而且非常完善的实现了比线程更轻量级的协程的支持,使得GO一直在多并发的服务端组件的开发中占有较大的优势;特别是在云原生的大势来袭下;更多的搭建在云原生框架下的底层服务都是用了GO语言进行开发;服务端的底层开发就缺少不了网络通信的开发;今天咱们这个文章要给大家介绍的就是一款GO语言实现的,能非常方便就能实现高性能网络通信的开发包工具——Fastnet。原创 2022-09-05 11:07:44 · 899 阅读 · 0 评论 -
SpringCloud集成RocketMQ
RocketMQ 是阿里巴巴在2012年开源的分布式消息中间件,2017年成为 Apache 的顶级项目;以其高性能、低延时和高可靠等特性近年来已经也被越来越多的企业使用;今天这个文章就介绍一下在SpringCloud里如何集成RocketMQ作为消息中间件的使用,本文介绍的是通过SpringCloud Stream方式进行集成;我们在做生产者的时候,使用来进行Source的定义,在生产者stream的配置里,默认为output;我们可以使用自己定义的source来扩展stream里的生产者配置定义接口。原创 2022-09-03 15:12:44 · 5322 阅读 · 1 评论 -
Docker实战-部署GPE微服务的监控体系(二)
上篇文章;我们介绍了GPE体系中,grafana的部署和安装(原创 2022-09-02 12:19:34 · 673 阅读 · 0 评论 -
Docker实战-部署GPE微服务的监控体系
微服务体系架构里,有很多的解决方案都是使用GPE作为微服务体系的监控体系, 如下图所示:我们这里经常提到的GPE,包括Grafana,Promethues,Exporter三个部分, 其中Grafana是一个功能强大的可自定义话的图形报表系统,Prometheus包括TSDB时序数据库和基于时序的查询系统,Exporter是数据采集的客户端系统。......原创 2022-09-01 17:23:55 · 786 阅读 · 0 评论 -
SpringCloud/SpringBoot升级拆坑
在spring官方网站的主页里,赫赫醒目的标题写着“”;(Spring使Java简单易用、紧跟时代、复用性强、快速响应、云就绪)如spring所宣称的;springcloud/springboot就是使用java语言里实现和搭建微服务体系;最好的Java微服务技术框架、微服务项目开发框架以及微服务化的解决方案;目前springcloud是依托springboot来实现整个微服务体系;每个springcloud的组件也都是依赖于springboot;springboot和springcloud版本如下。...原创 2022-09-01 15:49:24 · 4212 阅读 · 0 评论