微服务
杰锋
这个作者很懒,什么都没留下…
展开
-
Docker搭建Nacos单服务
1、需GitHub下载Nacos:https://github.com/alibaba/nacos/releases 下载2.1.1版本。创建nacos_config数据库,并执行nacos-mysql.sql。5、访问是否正常(端口开通防火墙和策略)3、查看mysql相关信息。原创 2023-03-03 03:04:48 · 306 阅读 · 0 评论 -
中台架构公共逻辑服务
中台组织架构 中台组织架构把全平台体系中公共部分,包括公共业务,公共搜索等部分抽离为中台基础架构,为各子平台提供公共服务体系。中台架构设计 各个子平台在向公共逻辑服务同步数据,如MQ同步搜索服务ES,为其它子平台提供数据搜索。中台数据存储模型 公共数据表 + 业务个性化扩展数据表举例理解为一张表36个字段,12个int类型,12个varchar类型,12个double类型,通过映射表映射字段。...原创 2022-06-24 04:25:55 · 325 阅读 · 0 评论 -
架构师读书清单
《Java编程思想》《Effective Java》《Java编程的逻辑》《Spring Cloud、Nginx高并发核心编程》《Java多线程编程核心技术》《凤凰架构:构建可靠的大型分布式系统》《架构整洁之道》《架构师修炼之道》《RocketMQ分布式消息中间件:核心原理》《软件架构设计:大型网站技术架构与业务架构融合之道》《超大流量分布式系统架构解决方案》...转载 2022-05-27 10:57:57 · 113 阅读 · 0 评论 -
银行微信小游戏平台构建
小游戏平台初拟架构原创 2022-05-18 17:50:44 · 358 阅读 · 0 评论 -
Redis分布式锁 (图解-秒懂-史上最全)
Redis分布式锁 (图解-秒懂-史上最全) - 疯狂创客圈 - 博客园文章很长,建议收藏起来慢慢读!疯狂创客圈总目录 语雀版 | 总目录 码云版| 总目录 博客园版 为您奉上珍贵的学习资源 : 免费赠送 经典图书:《Java高并发核心编程(卷1)》 面试必备 + 大厂必https://www.cnblogs.com/crazymakercircle/p/14731826.html...转载 2022-05-11 01:55:44 · 345 阅读 · 0 评论 -
提升秒杀日志性能避免IO瓶颈
秒杀日志面临问题:1、每秒日志量远高于磁盘IOPS,直接写磁盘会影响服务性能和稳定性2、大量日志导致服务频繁分配,频繁释放内存,影响服务性能3、服务异常退出丢失大量日志tmpfs,即临时文件系统,是一种基于内存的文件系统* 可以将秒杀服务写日志的文件放在临时文件系统中* 每当日志文件达到20MB时,将日志文件转移到磁盘上,并将临时文件系统中的日志文件清空使用高效的内存管理,即能快速分配内存,又能避免频繁触发垃圾回收器回收内存* 秒杀系统的日志里需要附件一些信息,用户I原创 2022-04-20 00:13:18 · 259 阅读 · 0 评论 -
Docker环境系列
安装Docker# 安装Dockeryum -y install docker# 开机自启systemctl enable docker# 启动Dockersystemctl start docker# 查看Docker版本docker -v# 配置加速仓库cd /etc/docker/lscat daemon.jsonvim daemon.json# 修改如下并wq保存{ "registry-mirrors": ["https://32xw0apq.mirr原创 2022-04-06 06:38:55 · 199 阅读 · 0 评论 -
微服务技术栈略选
组件 作用 Spring Framework 容器 Spring Boot 开发脚手架框架 Spring Cloud 微服务框架 Spring Security 安全框架 MyBatis-Plus ORM框架 Nacos 服务治理 Sentinel 服务保护 Seata 分布式事务 MyBatis ORM框架 MyBatis Generator 代码生产 Mybatis PageHelper原创 2022-04-03 21:41:09 · 842 阅读 · 0 评论 -
极速运维:微服务与 DevOps
* 部署时将关注点放在应用本身,通过直接生成一个个容器实现应用的快速部署发布* 容器化技术不再强调资源隔离* 所有如果你去底层通过Docker容器引擎与操作系统获取全局共享的物理机资源...原创 2022-03-25 22:44:51 · 2172 阅读 · 0 评论 -
一致性挑战:微服务架构下的数据一致性解决方案
1、CAP原则与BASE定理2、TCC一致性解决方案3、Seata TCC模式* 一致性 C :更新操作成功后,所有节点在同一时间的数据完全一致* 可用性 A :用户访问数据时,系统是否能在正常响应时间内返回预期的结果* 分区容错性 P :分布式系统在遇到某节点或网络分区故障的时候,仍然能够对外提供满足一致性或可用性的服务...原创 2022-03-25 22:17:01 · 1078 阅读 · 0 评论 -
统一门户:基于网关的统一用户认证方案
1、传统的用户认证方案;2、JWT与JJWT;3、基于网关的统一用户认证;* 服务器自主验签方案* API网关统一验签方案原创 2022-03-25 21:43:42 · 847 阅读 · 0 评论 -
升级改造:老项目升级到微服务的重构策略
1、严禁Big Bang(一步到位)2、尽早体现价值3、优先分离做前后端4、新功能构建成微服务5、利用Spring AOP开发低侵入的胶水代码6、基于MQ构建反腐层...原创 2022-03-25 05:04:59 · 1069 阅读 · 0 评论 -
性能为王:微服务架构中的多级缓存设计
1、Web应用的客户端缓存2、应用层静态资源缓存3、服务层多级缓存Web层缓存应用层缓存在互联网应用中,因为CDN设计多地域多节点组网前期投入成本较高,更多的中小型企业会选择阿里云、腾讯云等提供的CDN服务。服务层缓存适合多级缓存的场景...原创 2022-03-25 04:38:30 · 652 阅读 · 0 评论 -
综合应用:Seata 分布式事务实战教程
教程讲要:1、部署Nacos注册中心与配置中心2、部署TC组件Seata-server3、开发RM资源管理器4、开发TM事务管理器5、验证分布式事务* 3309端口数据库存储Nacos配置信息以及Seata-Server的分布式事务数据* 3305端口数据存储TM端商城数据* 3306端口数据库存储RM端订单服务数据* 3307端口数据库存储RM端会员积分数据* 3308端口数据库存储RM端库存数据* 192.168.31.103:8838节...原创 2022-03-25 03:40:56 · 520 阅读 · 0 评论 -
消息队列:基于 RocketMQ 实现服务异步通信
1、消息队列与 Alibaba RocketMQ2、RocketMQ的部署方式3、微服务接入RocketMQ的开发技巧消息队列MQ最主要职责:保证服务间进行可靠的数据传输,同时实现服务间的解耦1、消息Message 广义:是进程间传递的业务数据 狭义:不同的MQ产品对消息又附加额外属性 如:Topic(主题)、Tags(标签)等2、消息生产者 Producer 指代负责生产数据的角色3、消息消...原创 2022-03-25 02:42:33 · 883 阅读 · 0 评论 -
分布式事务:Alibaba Seata 如何实现分布式事务
* 讲解分布式事务的解决方案* 介绍Alibaba Seata 分布式事务中间件* 分析Seata 的AT 模式实现原理分布式架构中两种经典的分布式事务解决方案: 二阶段提交、三阶段提交二阶段提交(2PC)三阶段提交(3PC)Alibaba Seata...原创 2022-03-23 05:58:02 · 671 阅读 · 0 评论 -
应用性能监控:通过 SkyWalking 实施链路追踪
* APM 与 SkyWalking* SkyWalking服务端与Java Agent* SkyWalking 常用视图SkyWalking: 一站式解决方案1、实现强大的链路追踪2、相比Zipkin,拥有更友好、更详细的监控项3、能自动生成可视化图表SkyWalking服务端与Java AgentSkywalKing服务端用于接收来时Java Agent客户端发来的链路追踪与指标数据,汇总统计后由SkyWalking UI 负责展现。* gRPC 默认监.原创 2022-03-23 05:29:08 · 1610 阅读 · 1 评论 -
链路跟踪:基于 Sleuth+Zipkin 实施链路跟踪体系
* 微服务链路追踪的原理* 基于Spring Cloud Sleuth 实现链路追踪* 构建Zipkin Server 实现链路追踪的可视化管理微服务Id:说明日志是有哪个微服务产生的TraceId:轨迹编号。一次完成的业务处理过程被称为轨迹。 如 A -> B -> BSpanId:步骤编号,一个TraceId拥有多个SpanId,而SpanId只能棣属于某一个TraceId导出标识:当前这个日志是否被导出,该值为true的时候说明当前轨迹数据允许被其它链路..原创 2022-03-23 04:56:38 · 663 阅读 · 0 评论 -
生产实践:Sentinel 进阶应用场景
重点:如何再生产环境下通过Nacos实现Sentinel规则持久化* Sentinel与Nacos整合实现规则持久化* 自定义资源点进行熔断保护* 开发友好的异常处理程序接下来验证是否能自动推动新规则自定义资源点进行熔断保护返回纯文本JSON不能解析,故需要封装...原创 2022-03-23 03:48:49 · 219 阅读 · 0 评论 -
配置中心:基于 Nacos 集中管理应用配置
1、为什么微服务架构必须部署配置中心2、Nacos配置中心的快速部署与持久化配置3、Nacos生产环境中的配置技巧为什么微服务架构必须部署配置中心原创 2022-03-23 00:10:18 · 265 阅读 · 0 评论 -
限流与熔断:Sentinel在项目中的最佳实践
1、Sentinel通讯与降级背后的技术原理2、Sentinel限流降级的规则配置3、Sentinel熔断降级的规则配置Sentinel Dashboard 是Sentinel的控制端,是新的限流与熔断规则的创建者当内置在微服务的Sentinel Core(客户端)接收到新的限流、熔断规则后,微服务便会自动启用相应的保护措施执行流程1、Sentinel Core 与 Sentinel Dashboard建立连接2、Sentinel Dashboard 向 Sentinel Cor原创 2022-03-21 06:06:21 · 965 阅读 · 0 评论 -
系统保护:微服务架构雪崩效应与服务限流
1、通过真实的生产案例讲解微服务的雪崩效应2、Alibaba Sentinel 的部署与配置3、配置的接口限流规则Sentinel 以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性Sentinel 配置分为 Sentinel Dashboard 与 Sentinel客户端...原创 2022-03-21 02:37:58 · 231 阅读 · 0 评论 -
服务门户:Spring Cloud Gateway 如何把好微服务的大门
1、介绍API网关的用途和产品2、讲解Spring Cloud Gateway 的配置技巧3、讲解Gateway执行原理与自定义配置器(Filter)API网关的作用* 针对所有请求进行统一鉴权、熔断、限流、日志等前置处理,让微服务专注自己的业务* 统一调用风格,通常API网关对外提供RESTful风格URL接口* 更好的安全性,在通过API网关鉴权后,可以控制不同角色用户访问后端服务的权利* API网关是用户端访问API的唯一入口,微服务架构通过引入API网关,将用户与微服务..原创 2022-03-21 02:33:47 · 481 阅读 · 0 评论 -
RPC 消息:Dubbo 与 Nacos 体系如何协同作业
1、对比RESTful与RPC2、介绍Dubbo3、讲解Dubbo与Spring Cloud Alibaba的整合过程RESTful与RPC区别Dubbo官网 : http://dubbo.apache.orgDubbo与Nacos协调作业...原创 2022-03-21 02:25:32 · 2209 阅读 · 0 评论 -
REST消息通信:如何使用 OpenFeign 简化服务间通信
由于RestTemplate只是对HTTP的简单封装,需要封装度更好的屏蔽底层技术。OpenFeign技术,大幅度简化了服务间高可用通讯处理过程。1、介绍Feign与OpenFeign2、讲解OpenFeign的使用办法3、讲解生产环境OpenFeign的配置优化Netflix Feign是接口+注解形式,OpenFeign是在Netflix Feign的基础上进行封装OpenFeign的使用办法...原创 2022-03-21 02:17:19 · 326 阅读 · 0 评论 -
如何实现有效的服务间稳定通信
1、Ribbon负载均衡器;2、Ribbon+RestTemplate两种实现方式;3、Ribbon的负载均衡策略;1、订单服务(order_service)与商品服务(goods_service)实例在启动向Nacos注册;2、订单服务向商服务发起通信前,Ribbon向Nacos查询商品服务的可用实例列表;3、Ribbon根据设置的负载策略从商品服务可用实例列表中选择实例;4、订单服务实例向商品服务实例发起请求,完成RESTful通信;Ribbon+RestTempl.原创 2022-03-18 04:30:01 · 477 阅读 · 0 评论 -
Nacos集群
概要:1、生产环境Nacos集群的设计要点2、Nacos集群的部署过程3、Nacos集群的工作原理Nacos生产环境架构Nacos集群的部署过程注:至少3台服务器部署节点集群额外部署一台mysql数据库Nacos集群的工作原理1、Follower会自动将注册心跳包转给Leader节点;2、Lead...原创 2022-03-18 03:48:56 · 29803 阅读 · 1 评论 -
Nacos服务注册中心 - Spring Cloud Alibaba
官方地址:homeNacos快速部署:通常采用高性能服务器独立部署环境建议CentOS 7/8, JDK8以上并且配置JAVAHOME安装过程用户密码默认: nacos/ nacos微服务接入Nacos注册中心心跳机制...原创 2022-03-18 03:00:10 · 163 阅读 · 0 评论 -
大规模容器弹性云平台设计与实践
容器选型:Dockera、Devops业界成熟产品b、优雅的image分层设计c、用户友好的Dockerfiled、良好详细的文档e、活跃的社区和丰富的生态系统f、非常易于部署/扩容/缩容容器管理选型:Kubernetes(K8S)a、成熟的社区,出生高贵b、核心组件高可用c、优秀的API设计d、网络插件化e、部署模型多种多样服务治理选型a、注册中心/控住中心b、服务管理平台c、日志采集...原创 2022-03-16 02:40:03 · 229 阅读 · 0 评论 -
K8S技术详要
原创 2022-03-12 02:54:53 · 424 阅读 · 0 评论 -
nginx代理多个springboot项目
先安装nginx:如何在CentOS 7上安装Nginx_oldguncm的专栏-CSDN博客_centos 安装nginx然后配置nginx.conf文件,这里我总结了三种比较简单的方法第一种:一个server,配置多个location server { listen 80 ; server_name localhost; root /usr/share/nginx/html; # Load转载 2022-02-24 01:04:50 · 1276 阅读 · 0 评论 -
Docker容器技术浅析
Docker目的是把应用标准化,通过对应用统一封装起来,放在Docker运行,并对应用进行统一管理和调度。原创 2022-03-12 02:50:43 · 1016 阅读 · 0 评论 -
智能个性化推荐系统设计
推荐系统构成* 召回层 - 对海量的数据进行召回* 排序层 - 对召回后的数据进行排序,排序结果返回给用户推荐系统架构基于物品的推荐系统架构基于用户的推荐系统架构...原创 2022-01-04 21:55:37 · 1718 阅读 · 0 评论 -
互联网服务管理平台设计
1、服务管理平台抽象出服务特征,对服务提供者和服务调用者分别提供可视化管理界面2、服务发布之前需要进行注册3、调用服务必须通过工单申请,经过服务提供方同意(提供RPCkey),按需申请,按需调用功能管理:双方平台注册、在线管理、平台发布管控指令、配置管理、服务熔断/降级、调用关系控制度量:服务质量、健康指数、问题追逐监控:多维度流量数据、实时准确、告警、流量控制建议选取方案一:分布式预结算、集中统计结果落地 MySQL + Redis / ...原创 2022-01-04 21:34:20 · 1019 阅读 · 0 评论 -
分布式请求跟踪系统设计
设计需求* 基于日志的分布式请求跟踪系统业务侵入小将每个系统分散的日志聚合起来,并进行海量日志分析,从而生成有价值的数据* 核心 -- 调用链每次请求都生产一个全局唯一的ID(TraceId),通过它讲不同系统生成的日志串在一起,重组成调用链,使其价值达到1+1>2的效果开发人员通过分布式请求跟踪链排查问题也可以对多个请求统计和分析设计目标* 低侵入性 - 作为非业务组件,尽可能少侵入或...原创 2022-01-04 16:59:36 · 1048 阅读 · 0 评论 -
互联网分布式消息队列设计
消息队列定义消息队列技术是分布式应用间交换信息的一种技术消息队列可驻留在内存或磁盘上,队列存储消息直到它们被应用程序取走通过消息队列,应用程序可独立地执行,不需要直到彼此的位置或在继续执行前不需要等待接收程序接收此消息消息队列应用场景* 异步通信* 解耦业务基于消息模型,关注“通知”,而非关注“处理”* 错峰与流控* 广播* 时序保证消息队列的构成* Broker:消息服务器,作为Server提供消息核心服务* Producer:消息生...原创 2022-01-04 02:00:35 · 1268 阅读 · 0 评论 -
互联网分布式配置中心设计(Apollo)
推荐使用 Apollo原创 2022-01-03 00:59:17 · 144 阅读 · 0 评论 -
自研服务注册中心设计
设计目标:1、提供可跨语言使用服务注册与发现平台2、提供指令下发功能对集群服务进行管理管控指令存在时效性,指令是可损的3、提供节点信息存储与扩展服务器类型(物理机、虚拟机、Docker容器等)、节点权重、服务分组、IP、Port、Name、Version等服务注册: RPC/Web服务启动时,通过ControlCenterPlugin与控制中心服务建立并维护长连接,并自动上报服务节点,以及节点信息服务发现主动发现:Http服务 - 服务管理...原创 2022-01-02 18:07:33 · 1703 阅读 · 0 评论 -
Zookeeper浅述
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它是集群的管理者,监视这集群中各个节点的状态根据节点提交的反馈进行下一步和你操作。功能: 文件系统 通知机制分布式程序协调服务: 节点选主 配置管理 粗粒度分布式锁 服务注册 服务发现注:服务节点数足够多时,Zookeeper不合适,如1000+节点出现的大量写,以及海量长链接,造成Zookeeper性能问题。可以按照业务功能垂直拆分Zookeeper集群,可能破坏...原创 2022-01-02 16:20:57 · 937 阅读 · 0 评论 -
服务全链路压测设计
原创 2021-11-22 21:17:38 · 99 阅读 · 0 评论