欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > 虚拟现实环境下的远程教育和智能评估系统(三)

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

2024/10/25 10:32:32 来源:https://blog.csdn.net/m0_62491937/article/details/139305776  浏览:    关键词:虚拟现实环境下的远程教育和智能评估系统(三)

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

一、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

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com