黑马头条项目结构

微服务架构具有许多优点,其中一些主要优点包括:

  1. 松耦合性:每个微服务都是独立的,可以独立部署、独立扩展和独立更新,这种松耦合性使得系统更加灵活,易于维护和演化。

  2. 技术多样性:由于每个微服务都是独立的,因此可以使用不同的编程语言、框架和技术栈来构建不同的微服务,从而选择最适合特定任务的技术。

  3. 容错性:由于微服务之间是独立的,因此一个微服务的故障不会影响整个系统,系统可以通过断路器等机制对故障进行隔离和处理,提高系统的容错性和稳定性。

  4. 快速交付:微服务架构使得团队可以独立开发、测试和部署微服务,从而缩短了开发周期,实现更快速的产品交付和迭代。

  5. 易于理解和维护:每个微服务都相对较小且职责单一,因此易于理解和维护,开发者可以更专注于每个微服务的实现细节。

综上所述,微服务架构通过提高灵活性、可扩展性和可维护性等方面的优势,使得开发和运维团队能够更好地应对复杂的业务需求和变化。

微服务结构:

一个请求要经过网关才能路由到各个微服务:授权、限流、登入、日志。

项目中一共要创建三个网关:admin平台管理网关、自媒体网关、app网关 ;

网关校验JWT:

 

通过反向代理找到后端,静态资源访问前端;

 MinIO分布式文件系统:性能高,部署自带管理界面,提供了所有开发语言的SDK;

在nacos配置中心配置过后微服务才可以访问数据库资源 :

Nginx是一个高性能的Web服务器和反向代理服务器,主要用于处理HTTP请求、负载均衡、反向代理、HTTP缓存等功能,适用于构建Web应用和服务的基础设施。 

  • Web服务器:Nginx可以作为静态内容的Web服务器,能够快速、高效地提供静态资源(如HTML、CSS、JavaScript文件)的访问。

  • 反向代理:Nginx可以作为反向代理服务器,将客户端的请求转发给后端的多个服务器,从而隐藏后端服务器的真实IP地址和域名,提高系统的安全性和可靠性。

Nacos是一个用于实现动态服务发现、服务配置和服务管理的开源平台,主要用于微服务架构中的服务注册与发现、配置管理、流量控制等功能,适用于构建基于微服务架构的分布式系统和云原生应用。 

  • 服务发现与注册:Nacos允许微服务应用注册自己的实例,并发现其他微服务应用的实例,从而实现微服务架构中的服务发现功能。

  • 配置管理:Nacos提供了统一的配置管理平台,允许微服务应用动态地获取配置信息,支持配置的实时更新和版本管理,从而实现微服务架构中的配置中心功能。

 

Nginx和Nacos是两个完全不同的软件,它们的作用和功能也有很大的差异。

  1. 作用与功能

    • Nginx是一个高性能的Web服务器和反向代理服务器,主要用于处理HTTP请求、负载均衡、反向代理、HTTP缓存等功能,适用于构建Web应用和服务的基础设施。
    • Nacos是一个用于实现动态服务发现、服务配置和服务管理的开源平台,主要用于微服务架构中的服务注册与发现、配置管理、流量控制等功能,适用于构建基于微服务架构的分布式系统和云原生应用。
  2. 应用场景

    • Nginx适用于构建Web应用和服务的基础设施,可以用于搭建静态内容的Web服务器、反向代理服务器、负载均衡器等,主要用于处理HTTP请求和提供静态资源访问。
    • Nacos适用于构建基于微服务架构的分布式系统和云原生应用,主要用于实现微服务架构中的服务注册与发现、配置管理、流量控制等功能,帮助开发人员更好地管理和维护微服务应用。
  3. 功能重点

    • Nginx的重点是在网络层面上提供高性能的HTTP服务和代理功能,主要关注于处理HTTP请求、负载均衡和缓存等。
    • Nacos的重点是在微服务架构中提供服务注册与发现、配置管理和服务治理等功能,主要关注于微服务应用的注册、配置和管理。

综上所述,Nginx和Nacos是两个不同领域的软件,各自解决不同层次的问题,适用于不同的应用场景和需求。

消息中间件对比:

选择建议:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/823129.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于springboot实现知识管理系统项目【项目源码+论文说明】

基于springboot实现知识管理系统演示 摘要 随着信息互联网信息的飞速发展,无纸化作业变成了一种趋势,针对这个问题开发一个专门适应师生作业交流形式的网站。本文介绍了知识管理系统的开发全过程。通过分析企业对于知识管理系统的需求,创建了…

2024年4月13日美团春招实习试题【第四题:乘积因子数】-题目+题解+在线评测【二分】

2024年4月13日美团春招实习试题【第四题:乘积因子数】-题目题解在线评测【二分】 题目描述:输入描述输出描述样例 解题思路一:python解题思路二:c解题思路三:0 题目描述: 塔子哥拿到了一个数组,她有q次查询…

HTTP/1.1特性总结

优点 【简单,灵活和易于扩展,应用广泛和跨平台】 1.简单: http基本的报文格式就是headerbody,头部信息也是key-value简单的文本形式,易于理解,降低了学习和使用的门槛 2.灵活和易于扩展: &…

Redis 配置与使用 (Linux 虚拟机Windows客户端)

Centos7 安装Redis详细教程 - JcongJason - 博客园 (cnblogs.com) 安装 下载redis安装包并解压 # 下载,我是在root下执行的下载,所以我的下载目录为:/root/redis-5.0.5,这里按照自己的实际情况调整 wget https://download.redi…

Methoxy PEG Glutaric Acid可以改善物质的溶解性、稳定性和生物相容性

【试剂详情】 英文名称 mPEG-GA,mPEG-Glutaric Acid, Methoxy PEG GA, Methoxy PEG Glutaric Acid 中文名称 聚乙二醇单甲醚戊二酸, 甲氧基-聚乙二醇-戊二酸 外观性状 由分子量决定,固体或液体 分子量 400&…

浅谈Java的synchronized 锁以及synchronized 的锁升级

在Java中,synchronized关键字用于实现线程间的同步,确保同一时刻只有一个线程能够访问被同步的代码块或方法。当一个线程获得synchronized锁定后,其他试图访问同一锁的线程将被阻塞,直到锁被释放。 synchronized锁有两种基本形式…

为什么说六西格玛培训公司是企业问题的“终结者”

随着六西格玛管理方法的走红,六西格玛培训公司应运而生,致力于帮助企业解决各种核心问题,实现业绩的飞跃。那么,六西格玛培训公司究竟能为企业解决哪些问题?又为什么说六西格玛培训公司是企业问题的“终结者”呢&#…

第47期 | GPTSecurity周报

GPTSecurity是一个涵盖了前沿学术研究和实践经验分享的社区,集成了生成预训练Transformer(GPT)、人工智能生成内容(AIGC)以及大语言模型(LLM)等安全领域应用的知识。在这里,您可以找…

【第3期】PMC对话标杆用户:兆原数通在SeaTunnel的应用实践

📣随着技术快速发展,企业对数据系统的现代化改造需求日益增加。在这种背景下,如何在保持业务连续性的同时,实现数据系统的平滑迁移与升级呢?加入我们的本期技术访谈节目,来听听李洪军老师分享他们如何利用S…

算法题解记录11+++从前序与中序遍历序列构造二叉树(百日筑基)

题目描述: 给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是同一棵树的中序遍历,请构造二叉树并返回其根节点。 示例 1: 输入: preorder [3,9,20,15,7], inorder [9,3,15,20,7] 输出: [3,…

树莓派驱动开发--iic篇(JY901S陀螺仪的三轴角度简单读取)

前言:既然大家都到了这步,想必对驱动开发有着一定的理解啦吧!!那我在前面说一下流程: 修改编译设备树》》》编写编译驱动文件》》》编写编译app文件》》》ftp挂载将前面3复制到树莓派的对应位置》》》加载驱动模块》》…

2024软件测试自动化框架都有哪些?

软件行业正迈向自主、快速、高效的未来。为了跟上这个高速前进的生态系统的步伐,必须加快应用程序的交付时间,但不能以牺牲质量为代价。快速实现质量是必要的,因此质量保证得到了很多关注。为了满足卓越的质量和更快的上市时间的需求&#xf…

策略者模式(代码实践C++/Java/Python)————设计模式学习笔记

文章目录 1 设计目标2 Java2.1 涉及知识点2.2 实现2.2.1 实现两个接口飞行为和叫行为2.2.2 实现Duck抽象基类(把行为接口作为类成员)2.2.3 实现接口飞行为和叫行为的具体行为2.2.4 具体实现鸭子2.2.5 模型调用 3 C(用到了大量C2.0的知识&…

数据库SQL语言实战(三)

删除操作 本篇文章重点在于SQL中的各种删除操作 题目一 删除表中的学号不全是数字的那些错误数据,学号应该是数字组成,不能够包含字母空格等非数字字符。方法之一:用substr函数,例如Substr(sid,1,1)返回学号的第一位&#xff0…

C++常考面试题(第二篇)

【题目 16】拷贝构造函数的格式和作用,自动调用拷贝构造函数的几种情形? 格式:没有返回值 函数名和类名相同 参数:const person& 类型引用 作用:逐个给成员变量进行赋值三种情形下会调用拷贝构造函数 (1) 当用一…

Zynq学习笔记--AXI 总线仿真(AXI VIP)

目录 1. 概述 2. Simulation with AXI VIP 2.1 axi_vip_pkg 2.2 design_1_axi_vip_0_0_pkg 2.3 参数指定 3. 实例化注意事项 3.1 名称对应关系 3.2 寄存器地址 3.3 block design 1. 概述 AXI Verification IP(AXI VIP)是一种用于验证AXI总线协议的…

09 SQL进阶 -- SQL高级处理 -- 窗口函数等

1. 窗口函数 1.1 窗口函数概念及基本的使用方法 窗口函数也称为 OLAP 函数。OLAP 是 OnLine AnalyticalProcessing 的简称,意思是对数据库数据进行实时分析处理。 为了便于理解,称之为窗口函数。常规的 SELECT 语句都是对整张表进行查询,而窗口函数可以让我们有选择的去某…

Spring @Transactional 注解

官方文档:https://docs.spring.io/spring-framework/reference/data-access/transaction/declarative/annotations.html#:~:textThe%20%40Transactional%20annotation%20is%20metadata,suspending%20any%20existing%20transaction%22). 推荐阅读:https:…

基于springboot实现大创管理系统【项目源码+论文说明】计算机毕业设计

基于springboot实现大创管理系统演示 摘要 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了大创管理系统的开发全过程。通过分析大创管理系统管理的不足,创建了一个计算机管理大创管理系统的方案。文章介…

Re65:读论文 GPT-3 Language Models are Few-Shot Learners

诸神缄默不语-个人CSDN博文目录 诸神缄默不语的论文阅读笔记和分类 论文全名:Language Models are Few-Shot Learners ArXiv网址:https://arxiv.org/abs/2005.14165 2020 NeurIPS:https://papers.nips.cc/paper/2020/hash/1457c0d6bfcb49674…