我对注册中心的理解

在单体应用中,所有功能都在一个应用中,但是随着业务增长,系统功能逐渐变得庞大,单体应用在开发、部署等方面效率逐渐低下,开发协同越来越困难,等等问题。因此,对系统进行拆分变的必要。 但是在微服务架构中,越来越多的服务被拆分出来,整个系统之间的调用关系也会越来越复杂,各个服务管理也会变的越来越困难。那么 ... »

.netcore 微服务快速开发框架 Anno&Viper -分布式锁是个什么鬼

1、什么是锁 锁是为了解决多线程或者多进程资源竞争的问题。 同一进程的多个线程资源竞争可以用lock解决。 lock 关键字可确保当一个线程位于代码的临界区时,另一个线程不会进入该临界区。 如果其他线程尝试进入锁定的代码,则它将一直等待(即被阻止),直到该对象被释放。 class Test { // ... »

Solon 1.2.13 发布,开启与 Springboot 的互通

Solon 一个类似Springboot的微型开发框架。项目从2018年启动以来,参考过大量前人作品;历时两年,3500多次的commit;内核保持0.1m的身材,超高的Web跑分,良好的使用体验。 Solon 强调:克制 + 简洁 + 开放的原则;力求:更小、更快、更自由的体验。 所谓更小: 内核 ... »

【华为云专家原创】 服务注册与发现如何满足服务治理?

摘要:本文主要介绍了服务注册与发现的原理,以及常用的几种服务注册与发现组件介绍对比。 在单体应用向微服务架构演进的过程中,原本的巨石型应用会按照业务需求被拆分成多个微服务,每个服务提供特定的功能,并可能依赖于其他的微服务。每个微服务实例都可以动态部署,服务实例之间的调用通过轻量级的远程调用方式(HT ... »

Elasticsearch索引生命周期管理方案

一、前言 在 Elasticsearch 的日常中,有很多如存储 系统日志、行为数据等方面的应用场景,这些场景的特点是数据量非常大,并且随着时间的增长 索引 的数量也会持续增长,然而这些场景基本上只有最近一段时间的数据有使用价值或者会被经常使用(热数据),而历史数据几乎没有作用或者很少会被使用(冷数 ... »

为什么游戏公司的server不愿意微服务化?

背景介绍 笔者最近去面试了家游戏公司(有上市)。我问他,公司有没有做微服务架构的打算及考量?他很惊讶的,我没听说过微服务耶,你可以解释一下吗? 我大概说了,方便测试,方便维护,方便升级,服务之间松耦合,可多语言开发,自动扩容……之类的点。 然后他说游戏server不太需要微服务,因为要求real t ... »

微服务痛点-基于Dubbo + Seata的分布式事务(TCC模式)

前言 Seata 是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata 将为用户提供了 AT、TCC、SAGA 和 XA 事务模式,为用户打造一站式的分布式解决方案。 对于Seata不太了解的朋友,可以看下我之前写的文章: 微服务开发的最大痛点-分布式事务SEATA ... »

Cassandra与Kubernetes

本文将介绍如何将Cassandra与分布式应用集成,并利用Kubernetes进行管理。我们还将提供很多现成的资源,帮助大家快速学习。 Cassandra与Kubernetes 你正在开发云上的应用程序?那你一定属于这两个阵营之一:正在用Kubernetes管理生命周期或是即将用Kubernetes ... »

.netcore 微服务快速开发框架 Anno&Viper 注册中心 (服务上线下线预警通知)

1、微服务时代,服务上线先预警通知 在微服务大行其道的今天,相信很多人都用上了微服务或者是微服务的概念也已经有了一个深刻的了解。今天我们不在这里展开阐述,今天我们要说的是微服务伴侣预警通知。 2、注册中心概念 在一个微服务集群的系统中,通常少则三五个微服务,多则成千上百个微服务。微服务之间也会因为业 ... »

Apache Cassandra——可扩展微服务应用程序的持久数据存储

通过使用微服务,团队可以更快地响应变化,而无需改动整个应用程序。利用微服务,开发团队可以构建出具有鲁棒性和可扩展性的系统,从而适应当今应用程序的需求。 然而,使用微服务也带来了一系列挑战。在本文中,我们将就此展开讨论。 软件工程师和架构师正在远离基于单一、庞大的代码库的单体应用程序。由于公司需要在全 ... »

使用微服务构建现代应用程序

微服务已经开始占领现代企业的方方面面。 在一项针对350多位高级开发者的调查1中,有91%的人表示他们当前正在使用或计划使用微服务,而92%的人表示他们在去年增加了微服务的数量。 这种增长与企业大幅提高软件和应用开发的敏捷性的急迫需求密切相关,也是数据的数量和类型增加所带来的当务之急。 微服务势在必 ... »

微服务痛点-基于Dubbo + Seata的分布式事务(AT)模式

前言 Seata 是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata 将为用户提供了 AT、TCC、SAGA 和 XA 事务模式,为用户打造一站式的分布式解决方案。对于Seata不太了解的朋友,可以看下我之前写的文章: 微服务开发的最大痛点-分布式事务SEATA入 ... »

微服务开发的最大痛点-分布式事务SEATA入门简介

前言 在微服务开发中,存在诸多的开发痛点,例如分布式事务、全链路跟踪、限流降级和服务平滑上下线等。而在这其中,分布式事务是最让开发者头痛的。那分布式事务是什么呢? 分布式事务就是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。简单的说,就是一次大的操 ... »

庐山真面目之四微服务架构Consul集群和Nginx版本实现

庐山真面目之四微服务架构Consul集群和Nginx版本实现 一、简介 在上一篇文章《庐山真面目之三微服务架构Consul版本实现》中,我们已经探讨了如何搭建基于单节点Consul的微服务架构。没错,那个版本也有它自己的问题,每篇文章都会解决一个问题,这样大家就会更能理解每篇文章的技术点。如果我们把 ... »

架构设计:分布式结构下,服务部署发布

分布式系统架构下,服务发布是一件很麻烦的事情,特别是在构建自动发布流程和灰度测试的策略两个核心方面。通常情况下如果不涉及数据层面的灰度流程,服务可以灰度上线,或者滚动上线,这两种方式很常用;如果涉及到数据灰度,则可能需要中间服务做不同版本数据之间追平,或者停机维护一次性处理好数据和上线问题,不过后面... ... »

SpringBoot第九集:整合JSP和模板引擎Freemarker/Thymeleaf(2020最新最易懂)

SpringBoot第九集:整合JSP和模板引擎(2020最新最易懂) 当客户通过前端页面提交请求后,我们以前是怎么做的?后端接收请求数据,处理请求,把响应结果交给模板引擎JSP,最后将渲染后的JSP转为HTML,响应给客户端显示。JSP的好处就是当我们查出一些数据转发到JSP页面以后,我们可以用J ... »

庐山真面目之三微服务架构Consul版本实现

庐山真面目之三微服务架构Consul版本实现 一、简介 在上一篇文章《庐山真面目之二微服务架构NGINX版本实现》中,我们已经探讨了如何搭建基于Nginx 网关的微服务架构,可能很多人感觉很简单。没错,的确很简单,因为我的每篇文章只会解决一个问题,这样更单纯、更精准,微服务架构也是这样演化的。如果我 ... »