SpringCloud微服务实战——搭建企业级开发框架(三十):整合EasyExcel实现数据表格导入导出功能
批量上传数据导入、数据统计分析导出,已经基本是系统必不可缺的一项功能,这里从性能和易用性方面考虑,集成EasyExcel。EasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目,在尽可能节约内存的情况下支持读写百M的Excel: Java解析、生成Excel比较有名的框架有Apache poi、jxl。但他们都存在一个严重的问题就是非常的耗内存,poi有一套SAX模式的API可以一定程度的解决一些内存溢出的问题,但POI还是有一些缺陷,比如07版Excel解压缩以及解压后存储都是在内存中完成的,内存消耗依然很大。easyexcel重写了poi对07版Excel的解析,
SpringCloud微服务实战——搭建企业级开发框架(二):环境准备【下】
这里简单说明一下在Windows系统下开发SpringCloud项目所需要的的基本环境,这里只说明开发过程中基础必须的软件,其他扩展功能(Docker,k8s,MinIO,XXL-JOB,EKL,Keepalived,Nginx,RabbitMQ,Kafka等)用到的软件会在具体使用时详细说明,本地开发的环境软件以Windows版本的安装配置为例,数据库等中间件以Linux(CentOS7)的安装配置为例,其他系统Mac/Linux可自行配置
SpringCloud微服务实战——搭建企业级开发框架(十九):Gateway使用knife4j聚合微服务文档
本章介绍Spring Cloud Gateway网关如何集成knife4j,通过网关聚合所有的Swagger微服务文档 1、gitegg-gateway中引入knife4j依赖,如果没有后端代码编写的话,仅仅引入一个swagger的前端ui模块就可以了
SpringCloud微服务实战——搭建企业级开发框架(四):集成SpringCloud+SpringBoot
1、在GitEgg工程的根目录,最上级父pom.xml文件中引入需要依赖的库及Maven插件,设置编码方式: 2、修改gitegg-service的pom.xml文件,引入需要的库: 3、在gitegg-service-system工程下新建GitEggSystemApplication主启动类:
阿里云微服务引擎 MSE 2022年4月份产品动态
阿里云微服务引擎 MSE 2022 年 4 月产品动态。劳动最快乐,5月优惠不停,MSE 注册配置中心专业版首购享9折优惠,MSE 云原生网关预付费全规格享7折优惠。
CentOS 7.x安装微服务网关Apache APISIX
APISIX是基于云原生的微服务API网关,它是所有业务流量的入口,可以处理传统的南北向流量(server-client),也可以处理服务间的东西向流量(server-server),也可以当做 k8s ingress controller 来使用。
快速搭建微服务项目——SpringBoot+SpringCloud(使用maven方式搭建)
今天来教大家如何快速搭建一个微服务项目,其实很简单,首先使用编辑器新建一个maven项目,然后在pom.xml中添加相关的依赖包就好。
《小白学微服务》之,什么是Spring Cloud Netflix
上篇简单的介绍了一下微服务的发展过程及何为微服务的一些简单概念没看的小伙伴可以点这里👉《小白学微服务》之,什么是微服务。 本篇呢,主要来说说微服务架构的统一实现方案,因为微服务架构毕竟是一个抽象的概念,而我们知道每一个概念(理念)在技术上都是有一个落地的实现方案,其中微服务的实现方案之一就有SpringCloud。 那废话不多说,往下看吧!
[半翻] 设计面向DDD的微服务
在DDD中,应用层依赖于领域和基础设施层,而基础设施依赖于领域层,但是领域层不依赖于任何层。 只在领域层编写业务规则和通用的领域知识,而应用层负责针对软件的目标来组合、协调领域层的业务规则。 领域层的领域实体、值类型、聚合根反映了真实业务的核心,需要用一种通用的语言来定义,这样不管应用层多么复杂,核心领域层自岿然不动。 领域层不能直接依赖与基础设施层,现代ORM框架一般都提出仓储模型来帮助领域层和技术设施层解耦。
OpenSergo 正式开源,多家厂商共建微服务治理规范和实现
OpenSergo,Open 是开放的意思,Sergo 则是取了服务治理两个英文单词 Service Governance 的前部分字母 Ser 和 Go,合起来即是一个开放的服务治理项目。 该项目由阿里云、bilibili、字节跳动,以及 Spring Cloud Alibaba、Nacos、Apache Dubbo 社区共同维护,旨在构建一个和语言无关、和技术形态无关,但贴近业务的统一服务治理规范和实现,欢迎大家加入共建。
跨不同开发语言和技术框架,微服务治理规范 OpenSergo 项目正式开源
近几年,由于企业规模变大、IT 系统迅速膨胀,以及市场环境变化越来越快,原先单体架构的 IT 系统已无法满足业务需求。为了能更高效、灵活地支撑业务发展,企业纷纷从单体架构转向了微服务架构。 微服务架构和企业自身的技术积累及业务特点紧密相关,很多互联网企业会在实际落地时结合自身特点打造自己的框架和组织形式。同时,微服务又离不开配套的治理能力,如服务可观测、全链路压测和跟踪、注册发现、配置中心、服务网格等。
如何零宕机将 2000 个微服务从本地 Kafka 集群迁移至云托管多集群平台?
2021 年,我们的团队致力于将 Wix (国外比较火的一款建站平台)的 2000 个微服务从自托管的 Kafka 集群迁移到多集群的 Confluent Cloud 平台( Confluent Enterprise 的云端托管服务),整个过程是无缝的方式,无需服务所有者参与,且迁移是在正常通信中进行,没有任何停机。
Kratos微服务框架下的认证和鉴权
Kratos微服务框架下的认证和鉴权,使用JWT实现身份验证(Authentication),使用Casbin实现权鉴(Authorization)
图文详解:如何给女朋友解释什么是微服务?
终于有人把微服务给女朋友讲清楚了,小羽第一次尝试画图的方式,欢迎大家积极交流意见。也希望本文能给想要了解微服务的小伙伴带来不一样的体验。相信之后面试造火箭,工作至少造个机身出来,不会是工作拧螺丝的卑微打工仔了,年轻人嘛,还是要讲武德的嘛!
云小蜜 Dubbo3.0 实践:从微服务迁移上云到流量治理
云小蜜对话机器人团队成功落地了全链路灰度功能,解决了困扰团队许久的发布效率问题。在这个过程中我们做了将部分业务迁移至阿里云云上、服务框架升级至Dubbo3.0、选择MSE微服务治理能力等等一次次新的选择与尝试。“世上本没有路,走的人多了便成了路”。经过我们工程师一次又一次的探索与实践,能够为更多的同学沉淀出一个个最佳实践。我相信这些最佳实践将会如大海中璀璨的明珠般,经过生产实践与时间的打磨将会变得更加熠熠生辉。
微服务架构 | 10.3 使用 Zipkin 可视化日志追踪
Zipkin 允许开发人员以图形方式查看事务占用的时间量,并分解在调用中涉及的每个微服务所用的时间。在微服务架构中,Zipkin 是识别性能问题的宝贵工具;
微服务架构 | 2. 服务配置管理
将配置写入一个 config 常量类往往会有些问题,每次对配置进行更改时,应用程序都必须重新编译和重新部署; 在少量的应用程序中可以将配置写在低层级的属性文件,如:YAML、JSON 或 XML;其中包含数据库和中间件连接信息,以及驱动应用程序行为的相关元数据; 但是在处理可能包含数百个微服务的基于云的应用程序,其中每个微服务可能会运行多个服务实例时,需要对配置进行集中管理;
案例教你一步步设计DDD微服务项目(下)
DDD战略设计从事件风暴开始,然后我们要找出实体等领域对象,找出聚合根构建聚合,划分限界上下文,建立领域模型。 战术设计从事件风暴的命令开始,识别和设计服务,建立各层服务的依赖关系,设计微服务内的实体和值对象,找出微服务中所有的领域对象,并建立领域对象与代码对象的映射关系。
领域对象映射到微服务代码模型(上)
将领域对象映射到微服务代码模型中。DDD强调 先构建领域模型 然后设计微服务 以保证领域模型和微服务的一体性。但在构建领域模型时,我们往往是在业务视角,并且有些领域对象还带业务语言。我们还需要将领域模型作为微服务设计的输入,对领域对象进行设计和转换,让领域对象与代码对象建立映射关系。
Spring Cloud构建微服务架构:分布式服务跟踪(整合logstash)【Dalston版】
Spring Cloud构建微服务架构:分布式服务跟踪(整合logstash)【Dalston版】
别再用 kill -9 了,这才是微服务上下线的正确姿势!
就上线来说,如果组件或者容器没有启动成功,就不应该对外暴露服务,对于下线来说,如果机器已经停机了,就应该保证服务已下线,如此可避免上游流量进入不健康的机器。