【云计算】相关解决方案介绍
文章目录
- 1.1 云服务环境 Eucalyptus
- 1.1.1 介绍
- 1.1.2 开源协议及语言
- 1.1.3 官方网站
- 1.2 开源云计算平台 abiCloud
- 1.2.1 开源协议及语言
- 1.2.2 官方网站
- 1.3 分布式文件系统 Hadoop
- 1.3.1 开源协议及语言
- 1.3.2 官方网站
- 1.4 JBoss云计算项目集 StormGrind
- 1.4.1 开源协议及语言
- 1.4.2 官方网站
- 1.5 云计算框架 Vertebra
- 1.5.1 开源协议及语言
- 1.5.2 官方网站
- 1.6 Enomalism
- 1.6.1 开源协议及语言
- 1.6.2 官方网站
- 1.7 10gen
- 1.7.1 开源协议及语言
- 1.7.2 官方网站
- 1.8 开源PaaS平台 CloudFoundry
- 1.8.1 开源协议及语言
- 1.8.2 官方网站
- 1.9 数据中心虚拟化和云端解决方案 OpenNebula
- 1.9.1 开源协议及语言
- 1.9.2 官方网站
- 1.10 WSO2 Stratos
- 1.10.1 开源协议及语言
- 1.10.2 官方网站
- 1.11 云计算标准API Deltacloud
- 1.11.1 开源协议及语言
- 1.11.2 官方网站
- 1.12 云计算管理和监控客户端 Zeppelin
- 1.12.1 开源协议及语言
- 1.12.2 官方网站
- 1.13 PaaS应用基础平台 EEPlat
- 1.13.1 开源协议及语言
- 1.13.2 官方网站
- 1.14 开源云计算技术 OpenStack
- 1.14.1 开源协议及语言
- 1.14.2 官方网站
- 1.15 Apache Nuvem
- 1.15.1 开源协议及语言
- 1.15.2 官方网站
- 1.16 NimBus
- 1.16.1 开源协议及语言
- 1.16.2 官方网站
- 1.17 BOINC
- 1.17.1 开源协议及语言
- 1.17.2 官方网站
- 来源
1.1 云服务环境 Eucalyptus
1.1.1 介绍
Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems (Eucalyptus) 是一种开源的软件基础结构,用来通过计算集群或工作站群实现弹性的、实用的云计算。它最初是美国加利福尼亚大学 Santa Barbara 计算机科学学院的一个研究项目,现在已经商业化,发展成为了 Eucalyptus Systems Inc。不过,Eucalyptus 仍然按开源项目那样维护和开发。Eucalyptus Systems 还在基于开源的 Eucalyptus 构建额外的产品;它还提供支持服务。
不管是源代码还是包安装,Eucalyptus 很容易安装在现今大多数 Linux® 发布版上。
它提供了如下这些高级特性:
- 与 EC2 和 S3 的接口兼容性(SOAP 接口和 REST 接口)。使用这些接口的几乎所有现有工具都将可以与基于 Eucalyptus
的云协作。 - 支持运行在 Xen hypervisor 或 KVM 之上的 VM 的运行。未来版本还有望支持其他类型的 VM,比如 VMware。
- 用来进行系统管理和用户结算的云管理工具。
- 能够将多个分别具有各自私有的内部网络地址的集群配置到一个云内。
架构
Eucalyptus 包含五个主要组件,它们能相互协作共同提供所需的云服务。这些组件使用具有 WS-Security 的 SOAP 消息传递安全地相互通信。
Cloud Controller (CLC)
在 Eucalyptus 云内,这是主要的控制器组件,负责管理整个系统。它是所有用户和管理员进入 Eucalyptus 云的主要入口。所有客户机通过基于 SOAP 或 REST 的 API 只与 CLC 通信。由 CLC 负责将请求传递给正确的组件、收集它们并将来自这些组件的响应发送回至该客户机。这是 Eucalyptus 云的对外 “窗口”。
Cluster Controller (CC)
Eucalyptus 内的这个控制器组件负责管理整个虚拟实例网络。请求通过基于 SOAP 或 REST 的接口被送至 CC。CC 维护有关运行在系统内的 Node Controller 的全部信息,并负责控制这些实例的生命周期。它将开启虚拟实例的请求路由到具有可用资源的 Node Controller。
Node Controller (NC)
它控制主机操作系统及相应的 hypervisor(Xen 或最近的 KVM,很快就会支持 VMWare)。必须在托管了实际的虚拟实例(根据来自 CC 的请求实例化)的每个机器上运行 NC 的一个实例。
Walrus (W)
这个控制器组件管理对 Eucalyptus 内的存储服务的访问。请求通过基于 SOAP 或 REST 的接口传递至 Walrus。
Storage Controller (SC)
Eucalyptus 内的这个存储服务实现 Amazon 的 S3 接口。SC 与 Walrus 联合工作,用于存储和访问虚拟机映像、内核映像、RAM 磁盘映像和用户数据。其中,VM 映像可以是公共的,也可以是私有的,并最初以压缩和加密的格式存储。这些映像只有在某个节点需要启动一个新的实例并请求访问此映像时才会被解密。
一个 Eucalyptus 云安装可以聚合和管理来自一个或多个集群的资源。一个集群 是连接到相同 LAN 的一组机器。在一个集群中,可以有一个或多个 NC 实例,每个实例管理虚拟实例的实例化和终止。
在一个单一集群的安装中,如图 3 所示,将至少包含两个机器:一个机器运行 CC、SC 和 CLC;另一个机器运行 NC。这种配置主要适合于试验的目的以及快速配置的目的。通过将所有东西都组合到一个机器内,还可以进一步简化,但这个机器需要非常健壮才能这样做。
一个单集群 Eucalyptus 安装的拓扑
在多集群安装中,可以将各个组件(CC、SC、 NC 和 CLC)放置在单独的机器上。如果想要用它来执行重大的任务,那么这么做就是一种配置 Eucalyptus 云的理想方式。多集群安装还能通过选择与其上运行的控制器类型相适应的机器来显著提高性能。比如,可以选择一个具有超快 CPU 的机器来运行 CLC。多集群的结果是可用性的提高、负载和资源的跨集群分布。集群的概念类似于 Amazon EC2 内的可用性区域的概念。资源可以跨多个可用性区域分配,这样一来,一个区域内的故障不会影响到整个应用程序。
一个多集群 Eucalyptus 安装的拓扑
在将 Eucalyptus 安装并应用到您的基础设施上之前,需要考虑硬件要求。虽然出于试验目的,可以在一个笔记本电脑上运行全部内容,但是对于一个实际的部署场景,多集群无疑是 一个更好的选择。如下所列的是 Ubuntu 管理员对硬件配置方面的一些指导。这些指导可广泛应用于任何的 Linux 发布版(不只是 Ubuntu)。
1.1.2 开源协议及语言
GPL
Java C/C++
1.1.3 官方网站
http://www.eucalyptus.com/participate
1.2 开源云计算平台 abiCloud
近日Abiquo公司宣布推出其一款开源的云计算平台—— “abiCloud”,使公司能够以快速、简单和可扩展的方式创建和管理大型、复杂的IT基础设施(包括虚拟服务器,网络,应用,存储设备等等)。 AbiCloud较之同类其他产品的一个主要的区别在于其强大的Web界面管理。你可以通过拖拽一个虚拟机来部署一个新的服务。这个版本允许通过 VirtualBox部署实例,它还支持VMware,KVM和Xen。
1.2.1 开源协议及语言
MPL/CPAL
Java
1.2.2 官方网站
http://wiki.abiquo.com/display/ABI20/Abiquo+Documentation+Home
1.3 分布式文件系统 Hadoop
Hadoop并不仅仅是一个用于存储的分布式文件系统,而是设计用来在由通用计算设备组成的大型集群上执行分布式应用的框架。
还有相关的一系列产品及工具包括Hive,Hbase,Pig等。
下图是Hadoop的体系结构:
1.3.1 开源协议及语言
Apache
Java
1.3.2 官方网站
http://hadoop.apache.org/
1.4 JBoss云计算项目集 StormGrind
StormGrind是一个综合性的项目,它收集了所有JBoss云计算相关的项目
包括:
Cantiere 基本rpm模块
BoxGrinder 建立创建虚拟机的引擎
BoxGrinder REST 引擎的restful api接口
BoxGrinder Studio 创建虚拟机的web界面
CirrAS jboss的云端群集
Cooling Tower paas环境
StormFolio jboss的应用组合
1.4.1 开源协议及语言
未知
Java
1.4.2 官方网站
http://www.jboss.org/stormgrind.html
1.5 云计算框架 Vertebra
Vertebra可用于云的自动化,还可用于编写分布式的、实时的应用。Vertebra平台的特别之处在于它的能迎合不同云的差异,自动化各种流程及应用的管理。
Vertebra的功能包括:
- 强大、标准的XMPP(Extensible Messaging and Presence Protocol)基础架构
- 管理安全策略的“安全及发现代理”
- 编排人工及机器运维任务的“流程自动化代理”
- 系统规划登记使客户的应用能自我组织
- 平台上的应用就像互联网上的e-mail系统一样自动地联合,实现应用间无缝、安全的操作。
- 分布式审计/日志功能
- 分布式任务控制便于掌握运营状况
1.5.1 开源协议及语言
未知
ruby
1.5.2 官方网站
http://www.engineyard.com/
1.6 Enomalism
Enomaly’s Elastic Computing Platform (ECP)是一个可编程的虚拟云架构,ECP平台可以简化在云架构中发布应用的操作。
Enomalism 云计算平台是一个 EC2 风格的 IaaS 。Enomalism 是一个开放源代码项目,它提供了一个功能类似于 EC2 的云计算框架。Enomalism 基于 Linux,同时支持 Xen 和 Kernel Virtual Machine(KVM)。与其他纯 IaaS 解决方案不同的是,Enomalism 提供了一个基于 TurboGears Web 应用程序框架和 Python 的软件栈。
1.6.1 开源协议及语言
未知
未知
1.6.2 官方网站
http://www.enomalism.com/
1.7 10gen
10gen 既是一个云平台,又是一个可下载的开放源代码包,可用于创建您自己的私有云。10gen 是类似于 App Engine 的一个软件栈,它提供与 App Engine 类似的功能 — 但有一些不同之处。通过 10gen,可以使用 Python 以及 JavaScript 和 Ruby 编程语言开发应用程序。该平台还使用沙盒概念隔离应用程序,并且使用它们自己的应用服务器的许多计算机(当然,是在 Linux 上构建)提供一个可靠的环境。
MongoDB是一个介于关系数据库和非关系数据库之间的产品, 是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bjson格式,因此可以存储比较复杂的数据类型。 Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持 对数据建立索引。
它的特点是高性能、易部署、易使用,存储数据非常方便。主要功能特性有:
- 面向集合存储,易存储对象类型的数据。
- 模式自由。
- 支持动态查询。
- 支持完全索引,包含内部对象。
- 支持查询。
- 支持复制和故障恢复。
- 使用高效的二进制数据存储,包括大型对象(如视频等)。
- 自动处理碎片,以支持云计算层次的扩展性
- 支持RUBY,PYTHON,JAVA,C++,PHP等多种语言。
- 文件存储格式为BSON(一种JSON的扩展)
- 可通过网络访问
所谓“面向集合”(Collenction-Orented),意思是数据被分组存储在数据集中,被称为一个集合(Collenction)。每个 集合在数据库中都有一个唯一的标识名,并且可以包含无限数目的文档。集合的概念类似关系型数据库(RDBMS)里的表(table),不同的是它不需要定 义任何模式(schema)。
模式自由(schema-free),意味着对于存储在mongodb数据库中的文件,我们不需要知道它的任何结构定义。如果需要的话,你完全可以把不同结构的文件存储在同一个数据库里。
存储在集合中的文档,被存储为键-值对的形式。键用于唯一标识一个文档,为字符串类型,而值则可以是各中复杂的文件类型。我们称这种存储形式为BSON(Binary Serialized dOcument Format)。
MongoDB服务端可运行在Linux、Windows或OS X平台,支持32位和64位应用,默认端口为27017。推荐运行在64位平台,因为MongoDB
在32位模式运行时支持的最大文件尺寸为2GB。
MongoDB把数据存储在文件中(默认路径为:/data/db),为提高效率使用内存映射文件进行管理。
1.7.1 开源协议及语言
AGPL
C/C++
1.7.2 官方网站
http://www.10gen.com/
http://www.mongodb.org/
1.8 开源PaaS平台 CloudFoundry
Cloud Foundry是VMware主导使用Ruby开发的一款开源PaaS云计算平台,类似于Salesforce旗下的Heroku,遵从OpenStack云计算平台规范。
1.8.1 开源协议及语言
Apache
Ruby
1.8.2 官方网站
http://cloudfoundry.org/
1.9 数据中心虚拟化和云端解决方案 OpenNebula
OpenNEbula 是开放原始码的 虚拟基础设备引擎 用来动态布署虚拟机器在一群实体资源上,ONE (OpenNEbula) 最大的特色在于将虚拟平台从单一实体机器到一群实体资源
ONE 是 Reservoir Project 的一技术,是欧洲研究学会发起的虚拟基础设备和云端运算的计划
· 目前最新版本为 1.2,可支持 XEN 和 KVM 和实时存取 EC2,它也支持印象档的传输、复制和虚拟网络管理网络
· ecosystem 发布关于 ONE 提供的新功能,像是 Haizea 租约管理系统, libvirt 的实作,整合 Cloud Nimbus 和 ElasticHosts 云端外挂
1.1 ONE 的目标
· 将一群实体 cluster 转换弹性的虚拟基础设备,且可动态调适 service workload 的改变,ONE 在 service 和实体机处设备间产生新的虚拟层 (virtualization layer),这个 layer 可支持丛集的 service 执行和加强 VMMs (Virtual Machine Monitor) 的效益
1.1 ONE 的效益
· 对基础设备拥有者(系统管理者)来说
o 集中管理
o 工作量的平衡
o 服务器的 Consolidation (减少实体机器和空间,协助管理者维护,节省电源和 cooling 需求或支持不影响工作量的关机)
o 动态 resizing (动态增加新的 hosts到实体资源)
o 动态丛集分区 (执行不同的服务)
o 支持异质性的工作量 (让多个或是冲突的软件可执行在特定的版本的 libry 或是旧的应用程序)
· 对使用者(服务管理者)和来说
o On-demand 的提供 (根据使用者的服务需求来提供VMs)
1.2 ONE 的特色
· ONE 不同以存的 VM Manager,在于 高模块化和开放的架构去符合 cluster 管理者的需求,最新版可支持 XEN 和 KVM,还有以下特色和功能:
o 有效的资源管理
o 强大的接口 (提供 API 和 CLI 来监控或控制 VMs 和实体机器)
o 第三方的软件整合
o 开放和弹性的架构
o 容错机制
o 印象檔的管理
o 网络管理
o 稳定和可扩称性
o 根据服务工作量的需求 scale
o 简单的安装和管理
o 开放原始码
o 仍在进行的项目
1.9.1 开源协议及语言
Apache
未知
1.9.2 官方网站
http://www.opennebula.org/
1.10 WSO2 Stratos
WSO2的Stratos的是最完整的,企业级的,开放的PaaS,比其他任何可用的PaaS有更多的核心服务的支持。
WSO2的Stratos的使组织结合企业数据中心的安全,控制和SLA的云节省成本。 WSO2的Stratos的实现:
l 前所未有的数据中心的利用率,降低IT基础设施成本
l 租客自我配置和敏捷应用程序开发
l 承租人使用的计量和计费
l 方便地访问SQL和NoSQL数据存储
l 通讯,商业和演示服务
l 自动化治理和集中的身份和安全控制
l 加速通过内部云和逐步迁移到公共云
1.10.1 开源协议及语言
未知
Java
1.10.2 官方网站
http://wso2.com/
1.11 云计算标准API Deltacloud
红帽公司2009年9月推出了一套开源的API—— Deltacloud,用于将基于云的工作负载在不同的IaaS供应商之间迁移,如Amazon和Rackspace。为了能在不同的与供应商之间转移, 客户需要“一个可以兼容的架构,和一个与内部运行的东西兼容的堆栈”
1.11.1 开源协议及语言
未知
C/C++
1.11.2 官方网站
http://deltacloud.apache.org/
1.12 云计算管理和监控客户端 Zeppelin
Zeppelin是第一款开源的云计算管理和监控客户端,该公司希望这项新技术可以让大型IT商店更多的采用云计算。Cittio声称,它可以远程部署,而且通过了基于标准WBEM/CIM-XML和WS-Management接口访问数据的安全性保证。
根据国外媒体报道,周一(2009年3月9日)Cittio公司推出了Zeppelin项目,这是第一款开源的云计算管理和监控客户端。该公司希望这项新技术可以让大型IT商店更多的采用云计算。
该公司的目标是向IT商店提供一系列的工具,以便IT商店可以更好地将应用程序与云计算相结合。该公司官方把Zeppelin计划看作是他们实现其目标的第一步。
Cittio公司官方表示,因为云端应用程序和构架的变化将是令人瞩目的,这样云计算本身向当今IT业务的命令和控制带入了新的风险。这意味着现存的网络和系统管理解决方案的变革也同样会引人注目。
根据Cittio公司的说法,在云端管理领域有三个主要的问题:第一,在云操作和终端用户的实现、管理以及 检测所带来的问题;第二,缺乏能够精确监测云弹性和资源可用性的新标准;第三,大部分的系统管理解决方案都依赖于各自独有的客户端技术或SNMP来进行性 能测量,所以它们之间缺乏安全传输数据的能力。
Cittio公司声称,Zeppelin项目就是为了解决这些问题而设计的,它提供了详细的云端评价、性能测量和审计功能,并提供了数据中心构架和其应用程序。
它可以远程部署,而且据报道,它还能够确保通过Internet基于标准WBEM/CIM-XML和WS- Management接口访问数据的安全性。Zeppelin还包括了一些开源系统上的实现,包括Linux、带有Project Kensho功能的Citrix XenServer和VMware。
按照Citrix System公司虚拟化管理部门的CTO——Simon Corsby的说法,Project Kensho是该公司推动虚拟化和云端互动计划的关键一环。
“在我们开源版本发行的几天里,Cittio的团队发布了一个XenServer下的使用Zeppelin 和Kensho工具的一整套云端监测解决方案。”,Crosby说。他补充说,通过一个允许服务提供商按VM小时计费的工具,Citrix用户可以更多的 将静态数据中心变为“交付中心”。
另外Cittio公司启动了一项开源社区推动计划,该计划将与Zeppelin计划相辅相成。
1.12.1 开源协议及语言
GPL
C/C++
1.12.2 官方网站
http://sourceforge.net/projects/zeppelin/
1.13 PaaS应用基础平台 EEPlat
EEPlat(云鹤平台)是元数据驱动的PaaS应用基础平台,提供了多租户的完整实现,同时支持传统单租户环境。EEPlat拥有领先的元模型体系,提供元数据驱动、在线配置的开发模式,可以实现细粒度业务的定制和复用。
解决了多租户应用在功能、界面等方面无法满足不同租户个性化要求等问题,同时解决了多租户应用及传统应用无法适配多种环境(多种浏览器、智能移动设 备)、无法专注于业务、无法快速适应需求变化、进度失控、人员流动等问题,可以大幅度得提高生产率,可帮助实现低成本、高质量、易扩展的跨越云计算和传统 计算的信息管理系统。
EEPlat支持的常见应用包括MIS(管理信息系统)、OA(办公自动化)、CRM(客户关系管理)、HR(人力资源管理)、ERP(企业资源计 划)等。同类产品有salesforce的force.com平台,与force.com相比,EEPlat的元模型更加完善,抽象程度更高,灵活性更 高,适应范围更广;force.com的商业化程度更高。 详细比较
对于EEPlat的开发者,可以是没有经验的刚毕业的学生,也可以是业务人员,只要熟悉一般的SQL语句,有一定的分析能力,都可以快速上手。
EEPlat PaaS应用平台试用: 包含有一个简单的CRM用于功能测试。访问地址: http://www.eeplat.com ,手机访问地址: http://www.eeplat.com/m.jsp 。
1.13.1 开源协议及语言
LGPL
Java
1.13.2 官方网站
http://code.google.com/p/eeplat/
1.14 开源云计算技术 OpenStack
RackSpace 宣布开源其云计算技术OpenStack。OpenStack采用 Apache 2.0许可证发布源代码。Rackspace目前发布的开源云计算技术包括云存储和云虚拟服务器管理套件。此外NASA也捐出了 Nebula 云计算平台技术。OpenStack的合作伙伴包括AMD、戴尔、Citrix等。
1.14.1 开源协议及语言
Apache
Python
1.14.2 官方网站
http://openstack.org/
1.15 Apache Nuvem
Apache Nuvem 是 Apache 的一个孵化器项目。根据现有的信息,它会:
- 定义一个开放API,抽象出通用的云平台服务,从特定的私有云中解耦应用逻辑。
- 针对流行的云(如Google AppEngine、Amazon EC2以及Microsoft Azure)实现Nuvem API。
- 一开始关注于用户认证与授权、分布式缓存、数据存储、队列等,然后扩展到其他服务,如聊天、日志与调试等。
1.15.1 开源协议及语言
Apache
Java
1.15.2 官方网站
http://incubator.apache.org/nuvem/
1.16 NimBus
呵呵,网格中间件Globus的作品,从最早的Virtual Workspace演化而来,提供与EC2类似的功能和接口。
1.16.1 开源协议及语言
Apache
不详
1.16.2 官方网站
http://workspace.globus.org
1.17 BOINC
BOINC 的英语全称是 Berkeley Open Infrastructure for Network Computing,直接翻译成中文的意思是:伯克利开放式网络计算。
BOINC 是一个分布式计算平台,使得各种分布式计算项目能够使用一个平台软件来运行。不同于传统的分布式计算项目(比如SETI@homeClassic,Folding@home)都有独立的内核和分布式程序,通过BOINC,协调不同的项目所能分配到的系统资源,都将变得非常方便。
BOINC 是由美国加利福尼亚大学伯克利分校(University of California -Berkeley)于2023年10月12日开发,通过多年时间、多个项目的测试,目前该平台已经较为成熟。伯克利方面之前曾成功运行 SETI@home项目6年多,取得巨大成功,吸引了五百多万用户的参加,完成了两百万CPU小时的计算量。BOINC平台的开发,很重要的一个原因是为了吸引更多用户加入更多的其他由实际意义的分布式计算项目,比如气候变化,药物开发等。
BOINC 的前景非常客观,有可能发展成一种业界标准,有了 BOINC 平台,分布式计算的开发和推广工作变得更加容易简便。而统一的界面,统一的方式将会大大方便新加入分布式计算的用户,而不必研究每个不同项目的参与方法、积分算法等。
1.17.1 开源协议及语言
GNU 的 LGPL
不详
1.17.2 官方网站
http://incubator.apache.org/nuvem/
来源
4款开源云计算框架和工具简介
15个你可能不知道的开源云平台
如何配置Boinc
相关文章:

【云计算】相关解决方案介绍
文章目录 1.1 云服务环境 Eucalyptus1.1.1 介绍1.1.2 开源协议及语言1.1.3 官方网站 1.2 开源云计算平台 abiCloud1.2.1 开源协议及语言1.2.2 官方网站 1.3 分布式文件系统 Hadoop1.3.1 开源协议及语言1.3.2 官方网站 1.4 JBoss云计算项目集 StormGrind1.4.1 开源协议及语言1.4…...

攻防世界题目练习——Crypto密码新手+引导模式(二)(持续更新)
题目目录 1. 转轮机加密2. easychallenge 上一篇:攻防世界题目练习——Crypto密码新手引导模式(一)(持续更新) 1. 转轮机加密 首先了解一下轮转机加密吧。 传统密码学(三)——转轮密码机 题目内容如下: …...

LeetCode【1】两数之和
题目: 代码: public int[] twoSum(int[] nums, int target) {int[] result new int[2];Map<Integer, Integer> map new HashMap<>();// for (int i 0; i < nums.length; i) { // 这么写不能防重复啊!注意这里不…...

【运维笔记】VMWare 另一个程序已锁定文件的一部分,进程无法访问
情景再现 这里使用的是VMware 17 解决办法 进入设置 点击选项,全选复制里面内容 进入文件夹,删除所有包含.lck后缀的文件和文件夹 再启动虚拟机即可...
[Springboot]统一响应和异常处理配置
背景 前后端分离情况下,后端接口通常只需要返回JSON数据。 但有时候因为某些原因可能会导致得不到正确的结果。 比如 因为登录密码错误,你不能直接返回错误信息和null,这样前端很难处理。 又比如 因为后端接口爆出了异常,也不能直…...

Redis第四五六章 持久化事务主从复制
Redis ⽀持 RDB 和 AOF 两种持久化机制,持久化功能有效地避免因进程退出造成数据丢失问题, 当下次重启时利⽤之前持久化的⽂件即可实现数据恢复。 目录 第四章 持久化 4.1 RDB 4.1.1 触发机制 4.1.2 流程说明 4.1.3 RDB ⽂件的处理 4.1.4 RDB 的优…...

【强烈推荐】免费的PDF工具,包括PDF拆分/分割、转WORD等功能的免费在线软件工具,救了大命,找了半天什么pdf365、福xipdf、还有哔果pdf全是打着免费名义收费,烦死了
PDF拆分 - 图文工具箱 - imgtool.net,嘎嘎好用,主要是免费 除此之外,还有其他的功能,需要的可以去看看...

SpringMVC源码分析(二)启动过程之RequestMappingHandlerMapping分析
a、http请求中的url是如何与对应Handler的即Controller对应method映射的? 在上篇中提到在SpringMVC中,初始化9大内置组件的时候其中有一个组件就是HandlerMapping,在初始化HandlerMapping的时候会加载代码中所有标注了Controller和RequestMap…...
KWin、libdrm、DRM从上到下全过程 —— drmModeAddFBxxx(7)
接前一篇文章:KWin、libdrm、DRM从上到下全过程 —— drmModeAddFBxxx(6) 上一回讲到了drm_internal_framebuffer_create函数中的framebuffer_check函数。讲解了该函数的参数检查部分中的第二部分,本回对于该函数余下部分进行解析。 为了便于理解,再次贴出framebuffer_ch…...

2023 年 Arm A-Profile 架构发展
随着人工智能 (AI) 的兴起和安全威胁的加剧,计算需求不断发展,作为世界设备核心的基础计算架构也必须不断发展。这就是为什么我们的工程团队向普遍存在的 Arm 架构添加新功能和技术,然后软件团队确保软件尽可能无缝地适应这些未来的功能和技术。 Arm架构是如何开发的 Arm …...

2023年09月 C/C++(五级)真题解析#中国电子学会#全国青少年软件编程等级考试
C/C++编程(1~8级)全部真题・点这里 Python编程(1~6级)全部真题・点这里 第1题:红与黑 有一间长方形的房子,地上铺了红色、黑色两种颜色的正方形瓷砖。你站在其中一块黑色的瓷砖上,只能向相邻的黑色瓷砖移动。请写一个程序,计算你总共能够到达多少块黑色的瓷砖。 时间限…...

CentOS系统/root根目录扩容(扩展逻辑卷)
具体操作步骤 1、查看本机磁盘环境挂载情况 2、添加磁盘分区 3、开始扩容 4、同步到文件系统 1、查看本机磁盘环境挂载情况 [rooticon ~]# df -lh 可以看到/dev/mapper/centos-root 路径下容量为50G,我们要给这个路径下的容量扩容:[rooticon ~]# lsblk…...

苍穹外卖(三) 员工分页及技术实现细节
2. 员工分页查询 2.1 需求分析和设计 2.1.1 产品原型 2.1.2 接口设计 2.2 代码开发 2.2.1 设计DTO类 根据请求参数进行封装 2.2.2 封装PageResult 后面所有的分页查询,统一都封装为PageResult对象。 员工信息分页查询后端返回的对象类型为: Result 2.…...
二进制部署MySQL8.0
1、下载MySQL官方包 ## 下载MySQL [rootlocalhost ~]# wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz2、解压并移动安装包 # 解压安装包 [rootlocalhost ~]# tar xf mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz# 移动 mv…...

全力以赴,火山引擎边缘云代表团出战亚运会
END 未来,火山引擎边缘云赛事阵容将继续全力以赴,通过领先、可信赖的云和智能技术,助力游戏行业呈现更加精彩的竞技赛事。...
WPF页面向后端传参
WPF页面(前端)向后端传参 1、编写一个Button,绑定后端命令,并传递参数: <ButtonWidth"100"Command"{Binding SendCommand}"CommandParameter"{Binding ElementNameSendMessage, PathTex…...

PyTorch 入门
一、说明 深度学习是机器学习的一个分支,其中编写的算法模仿人脑的功能。深度学习中最常用的库是 Tensorflow 和 PyTorch。由于有各种可用的深度学习框架,人们可能想知道何时使用 PyTorch。以下是人们更喜欢使用 Pytorch 来完成特定任务的原因。 Pytorch…...

微信自动批量添加好友的方法
在现在的营销中微信已成为一种重要的沟通方式。微信目前是没有自动批量添加好友的功能,需要运营者一个一个手动去添加,这样太过于浪费时间,并且加频繁了还容易被封号,今天给大家介绍几种手动批量加好友的方式以及怎么借助第三方软…...

[网鼎杯 2018]Comment git泄露 / 恢复 二次注入 .DS_Store bash_history文件查看
首先我们看到账号密码有提示了 我们bp爆破一下 我首先对数字爆破 因为全字符的话太多了 爆出来了哦 所以账号密码也出来了 zhangwei zhangwei666 没有什么用啊 扫一下吧 有git git泄露 那泄露看看 真有 <?php include "mysql.php"; session_start(); if(…...

生态兼容性进一步提升!白鲸开源 WhaleStudio 与火山引擎ByteHouse完成产品互认
数据作为新型生产要素,已快速融入生产、分配、流通、消费和社会服务管理等各环节,深刻改变着生产方式、生活方式和治理方式。越来越多企业也在尝试充分利用数据要素,开辟全新发展路径,进一步实现业务价值提升。 在数字化转型的大…...

Opencv中的addweighted函数
一.addweighted函数作用 addweighted()是OpenCV库中用于图像处理的函数,主要功能是将两个输入图像(尺寸和类型相同)按照指定的权重进行加权叠加(图像融合),并添加一个标量值&#x…...
Spring Boot面试题精选汇总
🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 Spring Boot面试题精选汇总⚙️ **一、核心概…...

C# 类和继承(抽象类)
抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...

微信小程序云开发平台MySQL的连接方式
注:微信小程序云开发平台指的是腾讯云开发 先给结论:微信小程序云开发平台的MySQL,无法通过获取数据库连接信息的方式进行连接,连接只能通过云开发的SDK连接,具体要参考官方文档: 为什么? 因为…...
Linux离线(zip方式)安装docker
目录 基础信息操作系统信息docker信息 安装实例安装步骤示例 遇到的问题问题1:修改默认工作路径启动失败问题2 找不到对应组 基础信息 操作系统信息 OS版本:CentOS 7 64位 内核版本:3.10.0 相关命令: uname -rcat /etc/os-rele…...
JavaScript基础-API 和 Web API
在学习JavaScript的过程中,理解API(应用程序接口)和Web API的概念及其应用是非常重要的。这些工具极大地扩展了JavaScript的功能,使得开发者能够创建出功能丰富、交互性强的Web应用程序。本文将深入探讨JavaScript中的API与Web AP…...
08. C#入门系列【类的基本概念】:开启编程世界的奇妙冒险
C#入门系列【类的基本概念】:开启编程世界的奇妙冒险 嘿,各位编程小白探险家!欢迎来到 C# 的奇幻大陆!今天咱们要深入探索这片大陆上至关重要的 “建筑”—— 类!别害怕,跟着我,保准让你轻松搞…...

C++ 设计模式 《小明的奶茶加料风波》
👨🎓 模式名称:装饰器模式(Decorator Pattern) 👦 小明最近上线了校园奶茶配送功能,业务火爆,大家都在加料: 有的同学要加波霸 🟤,有的要加椰果…...

系统掌握PyTorch:图解张量、Autograd、DataLoader、nn.Module与实战模型
本文较长,建议点赞收藏,以免遗失。更多AI大模型应用开发学习视频及资料,尽在聚客AI学院。 本文通过代码驱动的方式,系统讲解PyTorch核心概念和实战技巧,涵盖张量操作、自动微分、数据加载、模型构建和训练全流程&#…...
Modbus RTU与Modbus TCP详解指南
目录 1. Modbus协议基础 1.1 什么是Modbus? 1.2 Modbus协议历史 1.3 Modbus协议族 1.4 Modbus通信模型 🎭 主从架构 🔄 请求响应模式 2. Modbus RTU详解 2.1 RTU是什么? 2.2 RTU物理层 🔌 连接方式 ⚡ 通信参数 2.3 RTU数据帧格式 📦 帧结构详解 🔍…...