虚拟现实环境下的远程教育和智能评估系统(三)

news2025/1/20 3:43:01

本周继续进行开发工具的选择与学习,基本了解了以下技术栈的部署应用;

一、Seata:

Seata(Simple Extensible Autonomous Transaction Architecture)是一款开源的分布式事务解决方案,旨在提供高性能和简单易用的分布式事务服务。它为企业提供了简单、可扩展和自治的事务管理服务,解决了在分布式环境下数据一致性的问题。

核心概念

  1. 分布式事务:在分布式系统中,一个业务操作可能需要多个服务或数据库协同完成,这就构成了分布式事务。Seata旨在保证这些分布式事务的原子性、一致性、隔离性和持久性(ACID属性)。

  2. Seata架构

    • Global Transaction Manager(全局事务管理器):负责协调和管理分布式事务,确保全局事务的一致性。
    • Registry Service(注册中心服务):负责存储和管理全局事务的状态信息,提供事务状态的查询和更新功能。
    • Branch Transaction(分支事务):分布式事务中的每个参与者,负责本地事务的执行和管理。
  3. 事务模式

    • AT模式:这是阿里首推的模式,Seata会拦截SQL语句,对业务无侵入,只需关注自己的业务SQL。
    • TCC模式:分为Try、Confirm和Cancel三个阶段。Try阶段尝试执行,Confirm阶段确认提交,Cancel阶段回滚。
    • SAGA模式:一种状态补偿型的事务模式,通过事件或者指令触发一系列有序操作,实现业务目标。
    • XA模式:两阶段提交协议的分布式事务模式,由事务协调器来协调参与者的行为。
  4. 角色划分

    • Transaction Coordinator(TC,事务协调器):维护全局和分支事务的状态,驱动全局事务提交或回滚。
    • Transaction Manager(TM,事务管理器):定义全局事务的范围,负责全局事务的开启、提交或回滚。
    • Resource Manager(RM,资源管理器):管理分支事务处理的资源,与TC通信以注册分支事务并报告状态。
  5. 使用场景:Seata适用于微服务架构、高并发场景、跨数据库操作等需要分布式事务管理的场景。

  6. 集成与兼容性:Seata提供了与主流开发框架和中间件的集成,如Spring Boot、Dubbo、RocketMQ等,具有良好的生态兼容性。

部署应用:

  • 配置数据库连接信息,包括URL、用户名和密码;
  • 配置Nacos注册中心;

启动seata-server.bat;

二、Redis:

REmote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。Redis 通常被称为数据结构服务器,因为值(value)可以是字符串(String)、哈希(Hash)、列表(list)、集合(sets)和有序集合(sorted sets)等类型。

Redis支持多种部署模式,以满足不同场景的需求:

  1. 单机模式:最简单的部署方式,适用于数据量较小、业务压力较小的场景。
  2. 主从模式:采用一台主节点进行写操作,然后将数据复制到从节点。从节点只进行读操作,以提高系统的可用性和读性能。
  3. 哨兵模式:在主从复制的基础上增加了哨兵节点,用于监控主节点的状态。当主节点宕机时,哨兵会自动将一个从节点切换成主节点,实现高可用性。
  4. 集群模式:将数据分散存储在多个Redis节点上,每个节点都包含相同数量的数据。集群模式可以提高系统的可扩展性和可靠性,适用于大规模的业务场景。

安装Redis后通过以下命令运行启动:

redis-server.exe redis.windows.conf

三、git:本项目为小组合作开发,为便于代码的频繁更新,我们采用git协同开发的方式;因此本周我还安装GitBash并学习了git的常用命令:

  • git init:初始化一个git仓库
  • git clone:clone一个git仓库
  • git config:配置信息
  • git add:添加文件到缓存命令
  • git status:查看文件的状态命令
  • git diff:查看更新的详细信息命令
  • git commit:提交命令
  • git reset HEAD:取消缓存命令
  • git rm:删除命令
  • git mv:移动或重命名命令
  • git remote add:添加远程仓库
  • git remote:查看当前的远程仓库
  • git fetchgit pull:提取远程仓仓库
  • git push:推送到远程仓库
  • git remote rm:删除远程仓库

参考博客http://t.csdnimg.cn/nZtQ7

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

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

相关文章

创新实训2024.05.29日志:评测数据集与baseline测试

1. 评测工作 在大模型微调和RAG工作都在进行的同时,我们搭建了一套评测数据集。这套数据集有山东大学周易研究中心背书。主要考察大模型对于易学基本概念与常识的理解与掌握能力。 1.1. 构建评测集 在周易研究中心的指导下,我们构建出了一套用以考察大…

【并查集】专题练习

题目列表 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 模板 836. 合并集合 - AcWing题库 #include<bits/stdc.h> using lllong long; //#define int ll const int N1e510,mod1e97; int n,m; int p[N],sz[N]; int find(int a) {if(p[a]!a) p[a]find(p[a]);return p[a…

数据结构:希尔排序

文章目录 前言一、排序的概念及其运用二、常见排序算法的实现 1.插入排序2.希尔排序总结 前言 排序在生活中有许多实际的运用。以下是一些例子&#xff1a; 购物清单&#xff1a;当我们去超市购物时&#xff0c;通常会列出一份购物清单。将购物清单按照需要购买的顺序排序&…

【前端】Mac安装node14教程

在macOS上安装Node.js版本14.x的步骤如下&#xff1a; 打开终端。 使用Node Version Manager (nvm)安装Node.js。如果你还没有安装nvm&#xff0c;可以使用以下命令安装&#xff1a; curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash 然后关…

安通控股CRM数字化一阶段成功上线,重塑企业客户关系管理新格局

在数字化浪潮的席卷下&#xff0c;企业数字化转型已成为不可逆转的趋势&#xff0c;由于内循环增加、数字化转型、流量成本获客趋高等趋势作用力下&#xff0c;企业的精益化管理以围绕客户为中心构建市场竞争力的重要性日益凸显。 随着“客户为中心”理念的愈加深入&#xff0…

NFT Insider #132:Solana链上NFT销售总额达到55.49亿美元, The Sandbox成立DAO

引言&#xff1a;NFT Insider由NFT收藏组织WHALE Members&#xff08;https://twitter.com/WHALEMembers&#xff09;、BeepCrypto &#xff08;https://twitter.com/beep_crypto&#xff09;联合出品&#xff0c;浓缩每周NFT新闻&#xff0c;为大家带来关于NFT最全面、最新鲜、…

docker基本操作命令(3)

目录 1.Docker服务管理命令&#xff1a; 启动&#xff1a;systemctl start docker 停止&#xff1a;systemctl stop docker 重启&#xff1a;systemctl restart docker 开机自启&#xff1a;systemctl enable docker 查看docker版本&#xff1a; 2.镜像常用管理命令&…

k8s的ci/cd实践之旅

书接上回k8s集群搭建完毕&#xff0c;来使用它强大的扩缩容能力帮我们进行应用的持续集成和持续部署&#xff0c;整体的机器规划如下&#xff1a; 1.192.168.8.156 搭建gitlab私服 docker pull gitlab/gitlab-ce:latest docker run --detach --hostname 192.168.8.156 --publ…

数据挖掘 | 实验三 决策树分类算法

文章目录 一、目的与要求二、实验设备与环境、数据三、实验内容四、实验小结 一、目的与要求 1&#xff09;熟悉决策树的原理&#xff1b; 2&#xff09;熟练使用sklearn库中相关决策树分类算法、预测方法&#xff1b; 3&#xff09;熟悉pydotplus、 GraphViz等库中决策树模型…

【运维项目经历|026】Redis智能集群构建与性能优化工程

&#x1f341;博主简介&#xff1a; &#x1f3c5;云计算领域优质创作者 &#x1f3c5;2022年CSDN新星计划python赛道第一名 &#x1f3c5;2022年CSDN原力计划优质作者 &#x1f3c5;阿里云ACE认证高级工程师 &#x1f3c5;阿里云开发者社区专…

SpringBoot源码(自动装配、内嵌Tomcat)

文章目录 依赖管理pom依赖管理Web依赖自定义starter 一、WebMvcAutoConfiguration1.1 Filter1.2 Interceptor 二、源码解析2.1 SpringApplication2.1.1 构造方法1、填充webApplicationType2、自动装配Initializers3、自动装配Listeners 2.1.2 run(args) 2.2 SpringApplicationR…

buuctf的RSA(五)

[RoarCTF2019]RSA 一看到题目&#xff0c;我就有些蒙了&#xff0c;A是代表了什么&#xff0c; 先来分解n 接下来可以暴力破解e了&#xff0c;因为e没有给出来&#xff0c;应该不会太大&#xff0c;猜测是四位数字 import gmpy2 import libnum from Crypto.Util.number import…

2024就业寒潮下的挑战与机遇:能否守住饭碗,人工智能能否成为新春天?

前言 随着时代的飞速发展&#xff0c;2024年的就业市场迎来了前所未有的挑战。数以百万计的高校毕业生涌入市场&#xff0c;使得就业竞争愈发激烈。然而&#xff0c;在这股就业寒潮中&#xff0c;我们也看到了新的曙光——人工智能的崛起。这一新兴行业以其独特的魅力和巨大的…

【每日刷题】Day52

【每日刷题】Day52 &#x1f955;个人主页&#xff1a;开敲&#x1f349; &#x1f525;所属专栏&#xff1a;每日刷题&#x1f34d; &#x1f33c;文章目录&#x1f33c; 1. 2965. 找出缺失和重复的数字 - 力扣&#xff08;LeetCode&#xff09; 2. 350. 两个数组的交集 II …

【LeetCode】38.外观数列

外观数列 题目描述&#xff1a; 「外观数列」是一个数位字符串序列&#xff0c;由递归公式定义&#xff1a; countAndSay(1) "1"countAndSay(n) 是 countAndSay(n-1) 的行程长度编码。 行程长度编码&#xff08;RLE&#xff09;是一种字符串压缩方法&#xff0c…

【评价类模型】熵权法

1.客观赋权法&#xff1a; 熵权法是一种客观求权重的方法&#xff0c;所有客观求权重的模型中都要有以下几步&#xff1a; 1.正向化处理&#xff1a; 极小型指标&#xff1a;取值越小越好的指标&#xff0c;例如错误率、缺陷率等。 中间项指标&#xff1a;取值在某个范围内较…

【QEMU中文文档】1.关于QEMU

本文由 AI 翻译&#xff08;ChatGPT-4&#xff09;完成&#xff0c;并由作者进行人工校对。如有任何问题或建议&#xff0c;欢迎联系我。联系方式&#xff1a;jelin-shoutlook.com。 QEMU 是一款通用的开源机器仿真器和虚拟化器。 QEMU 可以通过几种不同的方式使用。最常见的用…

Linux上传文件

在finalshell中连接的Linux系统中&#xff0c;输入命令rz然后选择windows中的文件即可。

多维数组操作,不要再用遍历循环foreach了!来试试数组展平的小妙招!array.flat()用法与array.flatMap() 用法及二者差异详解

目录 一、array.flat&#xff08;&#xff09;方法 1.1、array.flat&#xff08;&#xff09;的语法及使用 ①语法 ②返回值 ③用途 二、array.flatMap() 方法 2.1、array.flatMap()的语法及作用 ①语法 ②返回值 ③用途 三、array.flat&#xff08;&#xff09;与a…

Nature 审稿人:值得关注的里程碑!段路明研究组首次实现基于数百离子量子比特的量子模拟计算

2024年5月30日&#xff0c;清华大学最新科研成果发表于Nature&#xff08;自然&#xff09;&#xff0c;这项成果被Nature审稿人称为“量子模拟领域的巨大进步”“值得关注的里程碑”&#xff01;究竟是什么样的成果值得这样的赞誉呢&#xff1f; 该成果就是中国科学院院士、清…