当前位置: 首页 > news >正文

鸿蒙原生应用开发及部署:首选华为云,开启HarmonyOS NEXT App新纪元

 目录

前言

HarmonyOS NEXT:下一代操作系统的愿景

1、核心特性和优势

2、如何推动应用生态的发展

3、对开发者和用户的影响

华为云服务在鸿蒙原生应用开发中的作用

1、华为云ECS C系列实例

(1)全维度性能升级

(2)全流程安全可信

(3)全链路SLA保障

2、华为云Flexus X实例

(1)1.6倍算力:GeekBench跑分1.6于业界独享型实例

(2)综合降本30%:智能业务画像+CPU内存柔性配比

a.智能动态业务画像为业务量体裁衣,迁移到X实例即可降本30%

b.柔性算力新物种,CPU内存初始配比规格随心配置,更匹配业务实际需求

(3)关键应用6倍性能加速:独有X-Turbo加速技术+大模型智能调度

a.X-Turbo加速,常见业务应用性能可达友商同规格独享型实例6倍,长时可达2倍

b.大模型底层智能调度,一直加速一直快

(4)旗舰级稳定可靠

3、华为云Flexus云数据库RDS

(1)轻量规格,高性价比

(2)极简购买,便捷运维

(3)一键扩容,灵活扩展

(4)数据库安全超高等级

(5)高性能高可靠

4、华为云Flexus L实例

(1)智能不卡顿

(2)价优随心用

(3)上手更简单

(4)管理特省心

鸿蒙原生应用开发服务

1、中软国际移动应用鸿蒙化专家服务

2、万户鸿蒙元应用开发服务

百万级APP的挑战与机遇

鸿蒙原生应用实践案例分享

1. 环境搭建

2. 语音播报核心功能

3.小结

结束语


前言

在当前的全球科学技术竞争中,操作系统作为信息技术产业的核心,对于推动数字经济的发展具有至关重要的作用。而HarmonyOS,作为华为自主研发的新一代智能终端操作系统,不仅标志着中国在全球操作系统领域的一次重要突破,也为全球用户提供了一个更加安全、智能、互联的全新选择。随着5G、物联网和人工智能技术的快速发展,HarmonyOS的市场前景广阔,有望在全球范围内实现广泛应用。尤其是随着HarmonyOS NEXT的发布,是在当前全球数字化转型加速的大背景下,对HarmonyOS进行的一次重大升级,它不仅继承了HarmonyOS的分布式能力,还引入了更多的创新特性,如更强大的性能、更高的安全性和更丰富的应用生态,这一升级对于推动HarmonyOS在全球市场的竞争力,以及为用户提供更加卓越的体验具有重要意义。那么就来深入分享关于HarmonyOS NEXT的核心特性、市场前景以及华为云服务在其原生应用开发和部署中的作用,同时,本文还将介绍华为云服务如何支持百万级APP的高效开发和部署,并通过实践案例分析,为大家提供参考经验和启示。

HarmonyOS NEXT:下一代操作系统的愿景

如果说HarmonyOS NEXT是下一代操作系统,那么可以看到目前千行百业应用鸿蒙话,从上到下、从头部大厂到中小企业都在鸿蒙生态中贡献一份力量。关于HarmonyOS NEXT成为下一代操作系统的愿景,可以从下面三方面来看。

1、核心特性和优势

先来看看HarmonyOS NEXT的核心特性和优势,HarmonyOS NEXT的核心特包括其分布式架构、高性能、高安全性和丰富的应用生态,这些特性使得HarmonyOS NEXT能够为用户提供更加流畅、安全和多样化的体验。与此同时,HarmonyOS NEXT的开放性和兼容性也为开发者提供了广阔的创新空间。

2、如何推动应用生态的发展

在推动应用生态的发展方面,HarmonyOS NEXT通过提供统一的开发平台和工具,极大地降低了开发者的门槛,这让我们开发者能够更加高效、便捷地开发跨平台应用。以及HarmonyOS NEXT丰富的API和UI框架也给开发者提供了强大的使用支持,这就可以很好的推动了鸿蒙原生应用生态的快速发展。

3、对开发者和用户的影响

对于开发者而言,尤其是大前端开发者来讲,HarmonyOS NEXT给大家提供了一个全新的开发平台,结合目前技术圈流行的前沿技术,这让大家能够开发出更加创新和多样化的应用。对于使用者和用户来说,HarmonyOS NEXT带来了更加丰富和高质量的应用选择,也打破了传统应用的体验缺陷问题,从而提升了应用的使用体验。

华为云服务在鸿蒙原生应用开发中的作用

再来分享一下华为云服务助力鸿蒙原生应用开发的方方面面。不难看出,随着华为云产品服务的不断更新壮大,适用于鸿蒙原生应用开发相关的服务还是非常多的,那么接下来就来详细介绍一下华为云服务在鸿蒙原生应用开发中可应用的方面。

1、华为云ECS C系列实例

关于华为云ECS C系列实例,其实该系列实例提供了高性能的计算能力,特别适合需要大量计算资源的鸿蒙应用开发。根据华为云官方对ECS C系列实例的介绍,该系列提供安全稳定、可随时自助获取、弹性伸缩的计算服务,灵活计费,极简运维,极大降低企业成本,以及高CPU性能和大内存容量,也适用于大数据处理、人工智能等场景。

那么,我们在鸿蒙原生应用开发的时候,为什么选择华为云弹性云服务器 ECS?具体优势如下所示:

(1)全维度性能升级

  • 较上一代算力大幅提升:C7单核算力提升30%,整机最大算力提升超过50%,并可提供高达128核的实例规格选择,进一步提升高负载场景处理性能;内存由原来的6通道、2933MHz升级至8通道、3200MHz,程序运行访问内存效率大幅提升;
  • 千万级网络包转发能力更加稳定:应对大量网络包转发的场景更加游刃有余,稳定的满足苛刻的网络高性能场景诉求。
  • 云原生的最佳算力底座:单ECS实例可支持256个直通模式容器,部署密度领先业界1倍,用容器,底座就选C7。

(2)全流程安全可信

  • 安全启动:通过擎天卡进行数字签名和验签,我们可确保主板固件和内核零篡改,实现主机的安全启动
  • 硬件加密:在数据加密过程中,我们将加密的流程卸载至擎天卡中,实现加解密过程的硬件加速,并且让用户基本感知不到因加密带来的性能损耗。
  • 数据密钥保护:我们将传统依靠软件来实现的身份证明,通过硬件实现密钥保护。

(3)全链路SLA保障

  • 硬件故障预测:能够精准预测硬件故障,第一时间排除潜在隐患
  • 热补丁、热替换、热迁移的无感知三热:实现补丁的自动更新和无中断升级,帮助客户业务平滑演进
  • 多级故障域可靠性隔离:提供跨可用区,可用区内,主机等多级故障域可靠性隔离,为用户带来极致稳定可靠的全流程SLA保障。

2、华为云Flexus X实例

其实华为云Flexus X实例以其柔性算力和性能加速而著称,它能够根据应用的实际需求动态调整资源,实现成本效益的最大化,这种灵活性对于资源需求不断变化的鸿蒙应用开发尤为重要。根据华为云官方的介绍可以知道,Flexus X实例的柔性算力,旗舰体验,1.6倍算力,综合降本30%,关键应用6倍性能加速,旗舰级可靠性。

那么,我们在鸿蒙原生应用开发的时候,为什么选择华为云Flexus云服务器X实例?具体如下所示:

(1)1.6倍算力:GeekBench跑分1.6于业界独享型实例

  • 底层多重调优,实现1.6倍业界同规格独享型实例算力性能:凝结华为技术专家多年经验,内嵌智能应用调优算法,底层多重调优加速,基础模式GeekBench单核及多核跑分可达业界同规格独享型实例1.6倍;性能版可超过友商旗舰级实例产品性能。
  • 基础/性能模式随意切换,成本性能轻松平衡:提供基础模式和性能模式两种运行模式,基础模式价格低,性能模式性能强,可基于业务随意切换,在成本和性能之间取得最佳平衡

(2)综合降本30%:智能业务画像+CPU内存柔性配比

a.智能动态业务画像为业务量体裁衣,迁移到X实例即可降本30%
  • 智能预画像迁移降本:针对从第三方云或者离线数据中心迁移上华为云的场景,首创智能资源预画像,帮助用户在华为云上推荐匹配其应用真实性能的资源规格,消除资源浪费,迁移至X实例即可降本30%;
  • 持续动态画像规格优化:基于客户业务负载进行动态性能画像,帮助用户持续推荐匹配其业务性能的资源规格、持续优化业务性能和成本。

b.柔性算力新物种,CPU内存初始配比规格随心配置,更匹配业务实际需求

业界首创CPU内存规格柔性定义,突破1:2次幂的固有配比,实现1:3、2:5等自定义特殊规格,最高可提供3:1的CPU/内存比,量身匹配业务性能诉求。当前已上线100+种规格,可降低30%的算力成本。

(3)关键应用6倍性能加速:独有X-Turbo加速技术+大模型智能调度

a.X-Turbo加速,常见业务应用性能可达友商同规格独享型实例6倍,长时可达2倍

业界首个X86业务应用智能加速,智能识别数据库、中间件、图形图像等应用场景,针对MySQL、Redis、Nginx等应用,最高可实现6倍业界独享型实例产品性能,长时运行均值可达2倍。

b.大模型底层智能调度

首创大模型QoS保障,智能全域调度,算力分配长稳态运行,一直加速一直快。

  • 业界首创大模型QoS保障,实现智能资源监测与调度,结合QingTian架构,性能始终保持最优释放
  • 基于用户业务负载实际需求,智能动态为其预留资源,确保业务峰值到来时的性能需求,避免卡顿

(4)旗舰级稳定可靠

  • 提供旗舰级实例可靠性:提供与华为云旗舰级云服务器产品相同的单AZ 99.975% 可用性,跨AZ 99.995%可用性;
  • 超强运维能力:拥有国内最大的SRE团队之一,基于华为云确定性运维理念,确保云服务超高可用性
  • 可搭载多版本主机安全服务:历经最严苛的网络安全挑战,全面保障主机整体安全

3、华为云Flexus云数据库RDS

关于华为云Flexus云数据库RDS,它提供了便捷、可靠、安全和高性能的数据库服务,RDS的自动备份和一键恢复功能,为鸿蒙应用的数据安全提供了强有力的保障。华为云官方对于Flexus云数据库RDS的介绍,它拥有开箱即用、稳定可靠、安全运行、极简运维等特点,给使用者带来超高性价比的数据库服务。

那么,在鸿蒙原生应用开发的时候,为什么选择华为云Flexus云数据库RDS?具体如下所示:

(1)轻量规格,高性价比

  • 相比本地自建数据库节省软硬件基础设施成本,无需部署安装,变更扩容方便快捷
  • 相比ECS自建数据库无需自购/安装/升级数据库软件,DBA运维更便捷,节省人力成本
  • 相比标准版成本降低最少28%,通过进程瘦身,减少管理面的资源抢占,用户在相同实例可以获得更多资源

(2)极简购买,便捷运维

  • 参数配置从30+降低至5个,按套餐一键购买
  • 一键概览,四项监控,简化了繁多运维项,专注于轻量化的数据库应用

(3)一键扩容,灵活扩展

  • 磁盘自动扩容,容量无忧,业务更有保障
  • 通过一键恢复功能,用户可实现一键规格变更,资源快速扩展

(4)数据库安全超高等级

  • 国内首家获得应用安全标准ISO/IEC 27034和云安全CSA STAR V4认证厂商,已通过工信部可信云认证
  • 3项先进完备的安全机制,已获得15+安全等级认证

(5)高性能高可靠

  • 进程级瘦身,架构级创新,结合PaaS层柔性计算,资源利用率提升50%,相比自建数据库高并发下性能提升2倍
  • 双机热备秒级自动切换,RTO
  • 默认自动备份,一键恢复任意时间点

4、华为云Flexus L实例

再来介绍一下华为云Flexus L实例,它专为轻量级应用设计,轻量级云服务器,即开即用,轻松运维,开启简单上云第一步,提供了足够的计算能力和存储资源,同时保持了成本效益。另外,它适用于小型应用和微服务架构,能够满足快速开发和部署的需求。

同理,在鸿蒙原生应用开发的时候,为什么选择华为云Flexus应用服务器L实例?具体如下所示:

(1)智能不卡顿

  • 华为云擎天架构加持,软硬协同结合顶尖AI算法智能调度,引领业界极致性能
  • 华为云全球存算一张网,数据传输时延比眨眼还短,满足游戏、音视频等低网络时延场景的高要求

(2)价优随心用

  • 超高性价比,超低门槛,敞开随心用
  • 多种实例规格,平衡性能与成本
  • 技术升级优化用云成本,普惠更多初创企业和开发者

(3)上手更简单

  • 多种镜像、资源组合一键下单
  • 严选多款高品质镜像,经过华为云官方严格测试,覆盖七大场景,预置模板,快速搭建,安全可信
  • 自动化编排,资源一键开通,业务分钟级上线
  • 平滑学习曲线,向导式应用搭建,应用轻松启用
  • 主机、容器的安全防护功能合一,减少告警数量,大幅降低运维工作量

(4)管理特省心

  • 拓扑、资源、镜像可视化管理,业务架构透明化管理
  • 贴心服务状态提醒,资源续退一键式操作,实现极简管理
  • 资源负载、安全,使用率实时监控,保障服务永远在线
  • 可选配丰富的安全服务,包括丰富的备份、主机安全等服务,提供最高等级的安全防护
  • 提供资产管理、漏洞管理、基线检查、病毒查杀、入侵检测等主机、容器的全生命周期安全防护

鸿蒙原生应用开发服务

不用多讲,在技术圈领域,任何一门新的技术诞生,都需要一个推广和使用的过程,开发者和使用者是促进新技术的推广的主力军。那么在鸿蒙原生应用开发中,技术推广先行者可以以自己的经验去影响周边的使用者,但是毕竟还是很有限的,需要专业的团队和组织去主推才可以,这里就不得不分享两家比较靠谱的鸿蒙原生应用开发服务商。

1、中软国际移动应用鸿蒙化专家服务

中软国际作为鸿蒙生态的重要参与者,提供了专业的移动应用鸿蒙化专家服务,其团队拥有丰富的HarmonyOS开发经验,能够为企业提供从咨询、设计到开发和部署的全方位服务。而且中软国际深耕HarmonyOS与OpenHarmony研发数年,拥有2000多名初、中、高级鸿蒙相关专业开发、测试、运维、运营工程师,400多名通过开发者学堂HarmonyOS认证的专业开发者团队,在鸿蒙应用研发、迁移以及元服务研发上积累了丰富的经验。

可以说中软国际在鸿蒙原生应用研发、重构以及元服务研发上具备丰富的经验,对系统、架构、语言更了解,全方位深度参与鸿蒙系统内核、系统服务层、框架、应用层研发,提供鸿蒙生态南北向统一的一站式场景定制服务。

2、万户鸿蒙元应用开发服务

再来介绍第二个鸿蒙元应用开发服务商:万户鸿蒙元应用开发服务,万户鸿蒙元应用开发服务(原为"原子化服务")是一种基于HarmonyOS API的全新服务提供方式,元服务仅需开发一次,即可支持多终端设备运行,以鸿蒙万能卡片等多种呈现形态,向用户提供更轻量化的服务,有独立入口、且免安装。

另外,万户鸿蒙元应用开发服务提供了万能卡片和鸿蒙小程序的开发支持,这些服务以其低成本、无需安装和节省空间的特点,为用户提供了便捷的应用体验。通过这些服务,开发者可以快速构建和部署鸿蒙应用,抓住流量蓝海的机遇。

百万级APP的挑战与机遇

开发了鸿蒙原生应用只是成功了第一步,相关的部署也是非常重要的,鸿蒙原生应用的部署空间往往关系到市场需求等因素。那么对于百万级APP来讲,尤其是随着HarmonyOS用户的增长,需求也在不断上升,而且这些百万级APP应用需要能够提供丰富的功能和优质的用户体验,以满足用户的多样化需求。那么华为云服务通过提供强大的计算、存储和网络资源,就可以支持大规模应用的部署,还有华为云自动化的运维工具和平台,也可以使得应用的管理和维护变得更加高效。

我们作为开发者和使用者,我们在鸿蒙原生应用开发中如何利用华为云服务实现高效开发和部署呢?我们可以利用华为云服务提供的各种工具和平台,比如ECS实例、云数据库RDS和DevOps工具链,实现应用的快速开发和部署,这些服务不仅提高了开发效率,还降低了运维的复杂性。

鸿蒙原生应用实践案例分享

接下来再来分享一下关于鸿蒙原生应用实际开发的内容,作为开发者,我们可以直接通过HarmonyOS NEXT的特性来开发鸿蒙原生应用,尤其是大前端开发者对于鸿蒙原生应用开发的使用可以是不在话下,非常容易上手。那么接下来就来通过一个简单的实际开发示例来给大家详细演示鸿蒙原生应用开发的易上手行。本文的这个demo旨在创建一个基础的语音播报应用,开发者可以通过预设文本内容,应用会将文本转换为语音并播放,这个demo将涵盖以下功能:

  • 文本设置:用户可以在应用中提前设置想要播报的文本。
  • 语音合成:应用将文本转换为语音。
  • 播放控制:用户可以点击内容进行多次播放。

1. 环境搭建

先要确保已经安装了DevEco Studio,并且配置了HarmonyOS NEXT的较新版本的开发环境。

2. 语音播报核心功能

HarmonyOS提供了语音合成API,可以在具体使用中调用这些API来实现文本到语音的转换,先创建载体页面及调用,具体代码如下所示:

/*** @author 三掌柜* @data 2024/9/23 14:56*/
import  TextToSpeech  from './TextToSpeechUtils';@Entry
@Component
struct Index {@State message: string = 'Hello World';build() {Column() {RelativeContainer() {Text('语音播报demo').height(54).id('title').alignRules({middle: {anchor: '__container__',align: HorizontalAlign.Center}})}.width('100%').height(80).padding({ right: 10})Column() {Text('点击语音播报').fontColor(Color.Red).fontSize(30).margin({ top: 100 }).onClick(()=>{let speech:string = 'Hello, HarmonyOS'; //语音播报文本内容TextToSpeech.createSpeak(speech, 1) //语音播报 此处调用语音播报的方法})}.width('100%').height('100%').hitTestBehavior(HitTestMode.Transparent)}.width('100%').height('100%')}
}

再来分享一下关于语音播报的工具类文件,具体代码如下所示:

/*** @author 三掌柜* @data 2024/9/23 14:56*/
import { textToSpeech } from '@kit.CoreSpeechKit';
import { BusinessError } from '@kit.BasicServicesKit';let ttsEngine: textToSpeech.TextToSpeechEngine; // 引擎实例
let originalText = ''; // 原始文本
let speed: number = 1 // 语速class TextToSpeechUtils {// 数据回调speakListener?: textToSpeech.SpeakListener;constructor(originalText: string, speed: number) {this.initListener()this.createSpeak(originalText, speed)}//服务初始化initListener() {this.speakListener = {// 开始播报回调onStart(requestId: string, response: textToSpeech.StartResponse) {console.info(`onStart, requestId: ${requestId} response: ${JSON.stringify(response)}`);},// 完成播报回调onComplete(requestId: string, response: textToSpeech.CompleteResponse) {if (response.type === 1) {ttsEngine.shutdown();console.info(`onComplete, requestId: ${requestId} response: ${JSON.stringify(response)}`);}},// 停止播报完成回调,调用stop方法并完成时会触发此回调onStop(requestId: string, response: textToSpeech.StopResponse) {console.info(`onStop, requestId: ${requestId} response: ${JSON.stringify(response)}`);},// 返回音频流onData(requestId: string, audio: ArrayBuffer, response: textToSpeech.SynthesisResponse) {console.info(`onData, requestId: ${requestId} sequence: ${JSON.stringify(response)} audio: ${JSON.stringify(audio)}`);},// 错误回调,播报过程发生错误时触发此回调// 未创建引擎时调用speak方法时返回错误码1003400007,合成及播报失败// 连续调用两次speak,第二次speak会返回错误码1003400006,服务正忙碌onError(requestId: string, errorCode: number, errorMessage: string) {console.error(`onError, requestId: ${requestId} errorCode: ${errorCode} errorMessage: ${errorMessage}`);}};}// 创建引擎,通过callback形式返回// 当引擎不存在、引擎资源不存在、初始化超时,返回错误码1003400005,引擎创建失败createSpeak(originalText: string, speed: number) {// 设置创建引擎参数let extraParam: Record<string, Object> = { "style": 'interaction-broadcast', "locate": 'CN', "name": 'EngineName' };let initParamsInfo: textToSpeech.CreateEngineParams = {language: 'zh-CN',person: 0,online: 1,extraParams: extraParam};// Promise方式// 调用createEngine方法textToSpeech.createEngine(initParamsInfo).then((res: textToSpeech.TextToSpeechEngine) => {// 获得引擎实例ttsEngine = res;// 设置回调console.info(`Succeeded in creating engine, result: ${JSON.stringify(res)}.`);if (res) {ttsEngine.setListener(this.speakListener);this.speak(originalText, speed)}}).catch((err: BusinessError) => {console.error(`Failed to create engine. Code: ${err.code}, message: ${err.message}.`);}).finally(() => {})};// 调用speak播报方法// 未初始化引擎时调用speak方法,返回错误码1003400007,合成及播报失败speak(originalText: string, speed: number) {// 设置播报相关参数let extraParam: Record<string, Object> = {"queueMode": 0,"speed": speed, // 语速,取值范围[0.5, 2.0]"volume": 2,"pitch": 1,"languageContext": 'zh-CN',"audioType": "pcm","soundChannel": 3,"playType": 1}let speakParams: textToSpeech.SpeakParams = {requestId: Date.now().toString(), // requestId在同一实例内仅能用一次,请勿重复设置extraParams: extraParam};// 调用speak播报方法ttsEngine?.speak(originalText, speakParams);};// 停止合成及停止播报stop() {// 调用stop方法停止播报ttsEngine?.stop();};// 释放引擎,释放成功后,再次调用createEngine方法会重新创建引擎shutdown() {// 调用release方法释放引擎ttsEngine?.shutdown();};//判断当前是否处于合成或播报中isSpeaking() {let isSpeaking: boolean = ttsEngine.isBusy();console.info(`isSpeaking: ${isSpeaking}`);return isSpeaking;};
}export default new TextToSpeechUtils(originalText, speed);

3.小结

通过上文这个简单的语音播报的demo示例,我们可以看到HarmonyOS NEXT在语音交互方面提供的健全的API,作为开发者的我们可以利用这些工具和API,快速构建功能丰富、用户体验优秀的鸿蒙原生应用。最后也希望这个demo能为更多开发者提供学习帮助和参考价值,也欢迎大家进行修改和完善这个demo,欢迎大家体验使用。

结束语

通过上文的详细分享,大家想必已经对鸿蒙原生开发以及部署都有了详细的了解,以及鸿蒙原生应用开发对于推动HarmonyOS生态的发展的重要意义,个人觉得随着技术的不断进步和市场需求的增长,鸿蒙原生应用的前景十分广阔。还有就是华为云服务为鸿蒙原生应用的开发和部署提供了强大的支持,通过这些服务,开发者可以更加高效地构建和部署应用,为用户提供更加优质的体验。最后,也希望相关开发者能够加入到HarmonyOS NEXT的应用创新浪潮中来,结合华为云服务和HarmonyOS的特性,我们可以开发出更多具有创新和有价值的鸿蒙原生应用,加入鸿蒙原生应用开发正当时!

参考文献

1、华为云ECS C系列实例云服务器_云主机_弹性云服务器ECS_租用_购买-华为云

2、华为云Flexus X实例Flexus云服务器X实例-华为云

3、华为云Flexus L实例Flexus应用服务器L实例 _【最新】_轻量云服务器_轻量服务器_轻量应用服务器-华为云

4、华为云Flexus云数据库RDS华为Flexus云数据库RDS__直播_云数据库-华为云

5、中软国际移动应用鸿蒙化专家服务鸿蒙应用开发服务_鸿蒙_HarmonyOS_【最新版】_云商店-华为云、

6、万户鸿蒙元应用开发服务万户鸿蒙元应用开发服务最新版_【最新版】_云商店-华为云

7、简单上云第一步!华为云 Flexus 应用服务器 L 实例亮相 简单上云第一步!华为云 Flexus 应用服务器 L 实例亮相华为云 618 营销季_服务器_什么值得买

相关文章:

鸿蒙原生应用开发及部署:首选华为云,开启HarmonyOS NEXT App新纪元

目录 前言 HarmonyOS NEXT&#xff1a;下一代操作系统的愿景 1、核心特性和优势 2、如何推动应用生态的发展 3、对开发者和用户的影响 华为云服务在鸿蒙原生应用开发中的作用 1、华为云ECS C系列实例 &#xff08;1&#xff09;全维度性能升级 &#xff08;2&#xff…...

CSS之3D转换

三维坐标系 三维坐标系其实就是指立体空间&#xff0c;立体空间是由3个轴共同组成的。 x轴:水平向右注意:x右边是正值&#xff0c;左边是负值 y轴:垂直向下注意:y下面是正值&#xff0c;上面是负值 z轴:垂直屏幕注意:往外面是正值&#xff0c;往里面是负值 3D移动 translat…...

uni-app初学笔记:文件路径与作用

components:可复用的组件pages:页面&#xff08;可见/不可见&#xff09;static:静态资源&#xff0c;存放图片视频等 &#xff08;相当于vue项目的 assets&#xff09;mainjs:Vue初始化入口文件App.vue:应用配置&#xff0c;用来配置App全局样式以及监听pages.json :配置页面路…...

子组件中$emit和update更新传递变量

vue2.6之后才可以使用update更新&#xff0c;vue2.6以下版本使用input和v-model 需求描述&#xff1a;蒙层上展示弹窗&#xff0c;弹窗点击关闭&#xff0c;需要向父传递关闭的信息 方法1&#xff0c;简便直接传递变量visible&#xff08;或者不改名isModalVisible也是可以的…...

浅谈Python库之lxml

一、基本介绍 lxml 是一个用 Python 编写的库&#xff0c;它提供了对 XML 和 HTML 文档的解析和操作功能。它使用 C 语言编写的 libxml2 和 libxslt 库作为后端&#xff0c;因此解析速度非常快&#xff0c;并且能够处理大型文档。lxml 支持 XPath 和 XSLT&#xff0c;这使得它在…...

spring boot框架漏洞复现

spring - java开源框架有五种 Spring MVC、SpringBoot、SpringFramework、SpringSecurity、SpringCloud spring boot版本 版本1: 直接就在根下 / 版本2:根下的必须目录 /actuator/ 端口:9093 spring boot搭建 1:直接下载源码打包 2:运行编译好的jar包:actuator-testb…...

IDEA插件CamelCase,快速转变命名格式

在IDEA上大小写转换的快捷键是 CtrlshitU 其它的格式转换的快捷键是 shitaltu 安装方法&#xff1a; file-settings-plugins-在marketplace搜索“CamelCase”-点击安装。 安装成功设置后&#xff0c;重新打开idea 下载完成后 点击 Apply 和OK 此刻就可以选中命名 并使用快捷…...

Elasticsearch中的节点(比如共20个),其中的10个选了一个master,另外10个选了另一个master,怎么办?

大家好&#xff0c;我是锋哥。今天分享关于【Elasticsearch中的节点&#xff08;比如共20个&#xff09;&#xff0c;其中的10个选了一个master&#xff0c;另外10个选了另一个master&#xff0c;怎么办&#xff1f;】面试题。希望对大家有帮助&#xff1b; Elasticsearch中的节…...

Spring Boot 集成 Knife4j 的 Swagger 文档

在开发微服务应用时&#xff0c;API 文档的生成和维护是非常重要的一环。Swagger 是一个非常流行的 API 文档工具&#xff0c;可以帮助我们自动生成 RESTful API 的文档&#xff0c;并提供了一个友好的界面供开发者测试 API。本文将介绍如何在 Spring Boot 项目中集成 Knife4j …...

C# 创建快捷方式文件和硬链接文件

C# 创建快捷方式文件和硬链接文件 引言什么是快捷方式什么是硬链接文件硬链接与快捷方式不同 实现创建快捷方式文件实现创建硬链接文件小结 引言 什么是快捷方式 平常我们最常window桌面上点击的左下角带小箭头的文件就是快捷方式了&#xff0c;大家都很熟悉它。快捷方式是Wi…...

Linux高阶——1123—服务器基础服务器设备服务器基础能力

目录 1、服务器基础 1、服务器基本概述 2、服务器设计之初解决的问题 网络穿透 网络数据设备间的收发 3、服务器的类型C/S、B/S 2、服务器设备 将自己的服务器软件部署上线 3、代理服务器负载均衡&#xff0c;以及地址绑定方式 4、服务器的基础能力 1、服务器基础 1…...

LabVIEW串口通讯速度

LabVIEW串口通讯能达到的速度 LabVIEW支持高效的串口通讯&#xff0c;通过优化设置&#xff0c;理论上可以实现每次接收一个字节时达到1ms甚至更短的周期。不过&#xff0c;实际性能会受到以下因素的限制&#xff1a; ​ 波特率&#xff08;Baud Rate&#xff09;&#xff1a;…...

Jmeter中的监听器

3&#xff09;监听器 1--查看结果树 用途 调试测试计划&#xff1a;查看每个请求的详细信息&#xff0c;帮助调试和修正测试计划。分析响应数据&#xff1a;查看服务器返回的响应数据&#xff0c;验证请求是否成功。检查错误&#xff1a;识别和分析请求失败的原因。 配置步骤…...

缺失的第一个正数(java)

题目描述&#xff1a; 给你一个未排序的整数数组 nums &#xff0c;请你找出其中没有出现的最小的正整数。 请你实现时间复杂度为 O(n) 并且只使用常数级别额外空间的解决方案。 示例 1&#xff1a; 输入&#xff1a;nums [1,2,0] 输出&#xff1a;3 解释&#xff1a;范围 […...

跨部门文件共享安全:平衡协作与风险的关键策略

在现代企业中&#xff0c;跨部门协作已成为推动业务发展的关键因素。然而&#xff0c;随着信息的自由流动和共享&#xff0c;文件安全风险也随之增加。如何在促进跨部门协作的同时&#xff0c;确保文件共享的安全性&#xff0c;成为了一个亟待解决的问题。 一、明确文件分类与…...

一键AI换脸软件,支持表情控制,唇形同步Facefusion-3.0.0发布!支持N卡和CPU,一键启动包

嗨,小伙伴们!还记得小编之前介绍的FaceFusion 2.6.1吗?今天给大家带来超级exciting的消息 —— FaceFusion 3.0.0闪亮登场啦! &#x1f31f; 3.0.0版本更新 &#x1f3d7;️ 全面重构:修复了不少小虫子,运行更稳定,再也不怕突然罢工啦! &#x1f600; Live Portrait功能:新增…...

我要成为算法高手-递归篇

目录 题目1&#xff1a;汉诺塔题目2&#xff1a;合并两个有序链表题目3&#xff1a;反转链表题目4&#xff1a;两两交换链表中的结点题目5&#xff1a;Pow(x,n) 题目1&#xff1a;汉诺塔 面试题 08.06. 汉诺塔问题 - 力扣&#xff08;LeetCode&#xff09; 解题思路&#xff1…...

Git 提交的相对引用

Git 提交的相对引用 在 Git 中&#xff0c;使用 ~ 和 ^ 符号可以帮助你更灵活地引用提交历史中的特定提交。以下是这些符号的具体用法和示例&#xff1a; 1. ~&#xff08;波浪号&#xff09; ~ 符号用于指向上一个或多个父提交。它总是沿着第一个父提交的链向上追溯。 HEA…...

国内首家! 阿里云人工智能平台 PAI 通过 ITU 国际标准测评

近日&#xff0c;阿里云人工智能平台 PAI 顺利通过中国信通院组织的 ITU-T AICP-GA&#xff08;Technical Specification for Artificial Intelligence Cloud Platform&#xff1a;General Architecture&#xff09;国际标准和《智算工程平台能力要求》国内标准一致性测评&…...

CDAF / PDAF 原理 | PDAF、CDAF 和 LAAF 对比 | 图像清晰度评价指标

注&#xff1a;本文为 “CDAF / PDAF 原理 | PDAF、CDAF 和 LAAF 对比 | 图像清晰度评价指标” 几篇相关文章合辑。 文章中部分超链接、图片异常受引用之前的原文所限。 相机自动对焦原理 TriumphRay 于 2020-01-16 18:59:41 发布 凸透镜成像原理 这一部分大家中学应该就学过…...

小米C++ 面试题及参考答案下(120道面试题覆盖各种类型八股文)

指针和引用的区别?怎么实现的? 指针和引用有以下一些主要区别。 从概念上来说,指针是一个变量,它存储的是另一个变量的地址。可以通过指针来间接访问所指向的变量。例如,我们定义一个整型指针int *p;,它可以指向一个整型变量的内存地址。而引用是一个别名,它必须在定义的…...

WPF异步UI交互功能的实现方法

前面的文章我们提及过&#xff0c;异步UI的基础实现。基本思路主要是开启新的UI线程&#xff0c;并通过VisualTarget将UI线程上的Visual(即RootVisual)连接到主线程上的UI上即可渲染显示。 但是&#xff0c;之前的实现访问是没有交互能力的&#xff0c;视觉树上的UI并不能实现…...

2024 java大厂面试复习总结(一)(持续更新)

10年java程序员&#xff0c;2024年正好35岁&#xff0c;2024年11月公司裁员&#xff0c;记录自己找工作时候复习的一些要点。 java基础 hashCode()与equals()的相关规定 如果两个对象相等&#xff0c;则hashcode一定也是相同的两个对象相等&#xff0c;对两个对象分别调用eq…...

TCP/IP学习笔记

TCP\IP从实际应用的五层结构开始&#xff0c;自顶而下的去分析每一层。 TCP/IP五层架构概述 学术上面是TCP/IP四层架构&#xff0c;OSI/ISO是七层架构&#xff0c;实际中使用的是TCP/IP五层架构。 数据链路层 ICMP数据包分析 Wireshark抓包分析ICMP协议_wireshark抓ping包分析…...

基于IPMI的服务器硬件监控指标解读

在现代化数据中心中&#xff0c;服务器的稳定运行对于保障业务连续性至关重要。为了实时掌握服务器的健康状况&#xff0c;运维团队需要借助高效的监控工具。监控易作为一款功能强大的监控软件&#xff0c;支持使用IPMI&#xff08;Intelligent Platform Management Interface&…...

相亲交友小程序项目介绍

一、项目背景 在当今快节奏的社会生活中&#xff0c;人们忙于工作和事业&#xff0c;社交圈子相对狭窄&#xff0c;寻找合适的恋爱对象变得愈发困难。相亲交友作为一种传统而有效的社交方式&#xff0c;在现代社会依然有着巨大的需求。我们的相亲交友项目旨在为广大单身人士提…...

Day3 洛谷Day3 1161+1179+1200+1304

零基础洛谷刷题记录 Day1 2024.11.18 Day2 2024.11.25 Day3 2024.11.26 文章目录 零基础洛谷刷题记录1161&#xff1a;题目描述1161&#xff1a;解题代码1161&#xff1a;学习成果1179&#xff1a;题目描述&#xff08;成功写出&#xff09;1179&#xff1a;解题代码1179&…...

【通俗理解】ELBO(证据下界)——机器学习中的“情感纽带”

【通俗理解】ELBO&#xff08;证据下界&#xff09;——机器学习中的“情感纽带” 关键词提炼 #ELBO #证据下界 #变分推断 #机器学习 #潜变量模型 #KL散度 #期望 #对数似然 第一节&#xff1a;ELBO的类比与核心概念【尽可能通俗】 ELBO&#xff0c;即证据下界&#xff0c;在…...

Vue: computed 计算属性

在Vue中&#xff0c;computed属性是用于计算和返回基于其他响应式数据的值的功能。 适合在模板中使用&#xff0c;因为能够根据依赖的数据自动更新。 当依赖的数据变化时&#xff0c;computed属性会重新计算&#xff0c;并且会将结果缓存&#xff0c;以提高性能。 computed的…...

【自动化Selenium】Python 网页自动化测试脚本(上)

目录 1、Selenium介绍 2、Selenium环境安装 3、创建浏览器、设置、打开 4、打开网页、关闭网页、浏览器 5、浏览器最大化、最小化 6、浏览器的打开位置、尺寸 7、浏览器截图、网页刷新 8、元素定位 9、元素交互操作 10、元素定位 &#xff08;1&#xff09;ID定位 &…...

数据库命令规范、数据库基本设计规范

所有数据库对象名称必须使用小写字母并用下划线分割 所有数据库对象名称禁止使用mysql保留关键字&#xff08;如果表名中包含关键字查询时&#xff0c;需要将其用单引号括起来&#xff09; 数据库对象的命名要能做到见名识意&#xff0c;并且最后不要超过32个字符 临时库表必…...

php常用伪协议整理

前言 欢迎来到我的博客 个人主页:北岭敲键盘的荒漠猫-CSDN博客 本文整理php常见的伪协议 php伪协议介绍 直观点&#xff0c;就是php可以识别的协议。 类似于我们访问网站的http协议&#xff0c;我们用浏览器访问我们自己本地文件的file协议等。 php可以识别这些协议&#xf…...

Redis与MySQL如何保证数据一致性

Redis与MySQL如何保证数据一致性 简单来说 该场景主要发生在读写并发进行时&#xff0c;才会发生数据不一致。 主要流程就是要么先操作缓存&#xff0c;要么先操作Redis&#xff0c;操作也分修改和删除。 一般修改要执行一系列业务代码&#xff0c;所以一般直接删除成本较低…...

NIO三大组件

现在互联网环境下&#xff0c;分布式系统大相径庭&#xff0c;而分布式系统的根基在于网络编程&#xff0c;而netty恰恰是java领域的网络编程的王者&#xff0c;如果要致力于并发高性能的服务器程序、高性能的客户端程序&#xff0c;必须掌握netty网络编程。 NIO基础 NIO是从ja…...

智能呼叫中心是什么?

智能呼叫中心是什么&#xff1f; 作者&#xff1a;开源智能呼叫中心系统 FreeIPCC&#xff0c;Github地址&#xff1a;https://github.com/lihaiya/freeipcc 智能呼叫中心是指运用人工智能、大数据分析等技术&#xff0c;对来电进行智能分析和处理的客户服务中心。以下是对智能…...

LSTM原理解读与实战

在RNN详解及其实战中&#xff0c;简单讨论了为什么需要RNN这类模型、RNN的具体思路、RNN的简单实现等问题。同时&#xff0c;在文章结尾部分我们提到了RNN存在的梯度消失问题&#xff0c;及之后的一个解决方案&#xff1a;LSTM。因此&#xff0c;本篇文章主要结构如下&#xff…...

24.11.26 神经网络 参数初始化

神经网络 感知神经网络 神经网络&#xff08;Neural Networks&#xff09;是一种模拟人脑神经元网络结构的计算模型&#xff0c;用于处理复杂的模式识别、分类和预测等任务 生物学&#xff1a; 人脑可以看做是一个生物神经网络&#xff0c;由众多的神经元连接而成 树突&#…...

51单片机从入门到精通:理论与实践指南(一)

单片机在智能控制领域的应用已非常普遍&#xff0c;发展也很迅猛&#xff0c;学习和使用单片机的人员越来越多。虽然新型微控制器在不断推出&#xff0c;但51单片机价格低廉、易学易用、性能成熟&#xff0c;在家电和工业控制中有一定的应用&#xff0c;而且学好了51单片机&…...

wordpress获取文章总数、分类总数、tag总数等

在制作wordpress模板的时候会要调用网站的文章总数分类总数tag总数等这个数值&#xff0c;如果直接用count查询数据库那就太过分了。好在wordpress内置了一些标签可以直接获取到这些数值&#xff0c;本文整理了一些常用的wordpress网站总数标签。 文章总数 <?php $count_…...

Tcon技术和Tconless技术介绍

文章目录 TCON技术&#xff08;传统时序控制器&#xff09;定义&#xff1a;主要功能&#xff1a;优点&#xff1a;缺点&#xff1a; TCONless技术&#xff08;无独立时序控制器&#xff09;定义&#xff1a;工作原理&#xff1a;优点&#xff1a;缺点&#xff1a; TCON与TCONl…...

WinFrom调用webapi接口另一个方法及其应用实例

1.调用接口方法 代码如下&#xff1a; public class WebAPI{#region WebAPI调用 public async Task<string> Call_Webapi(string Url, string Json) //url传入的是接口名称&#xff0c;json传入的是接口参数{string responseBody string.Empty; //responseBod…...

上海乐鑫科技一级代理商飞睿科技,ESP32-C61高性价比WiFi6芯片高性能、大容量

在当今快速发展的物联网市场中&#xff0c;无线连接技术的不断进步对智能设备的性能和能效提出了更高要求。为了满足这一需求&#xff0c;乐鑫科技推出了ESP32-C61——一款高性价比的Wi-Fi 6芯片&#xff0c;旨在为用户设备提供更出色的物联网性能&#xff0c;并满足智能设备连…...

【机器学习】数据集合集!

本文将为您介绍经典、热门的数据集&#xff0c;希望对您在选择适合的数据集时有所帮助。 1 privacy 更新时间&#xff1a;2024-11-26 访问地址: GitHub 描述&#xff1a; 此存储库包含 TensorFlow Privacy&#xff08;一种 Python&#xff09;的源代码 库&#xff0c;其中包…...

GitLab使用操作v1.0

1.前置条件 Gitlab 项目地址&#xff1a;http://******/req Gitlab账户信息&#xff1a;例如 001/******自己的分支名称&#xff1a;例如 001-master&#xff08;注&#xff1a;master只有项目创建者有权限更新&#xff0c;我们只能更新自己分支&#xff0c;然后创建合并请求&…...

企业后端多租户管理平台

1 简介 此系统在企业后端管理系统上进行的更改&#xff0c;用于快速开发租户管理平台。项目中详细的功能请查看文章&#xff1a;企业后端系统通用模版_后端模板-CSDN博客 支持多租户&#xff0c;支持多租户切换&#xff0c;支持多租户数据隔离&#xff0c;支持多租户数据同步等…...

【模型学习之路】PyG的使用+基于点的任务

这一篇是关于PyG的基本使用 目录 前言 PyG的数据结构 演示 图的可视化 基于点的任务 任务分析 MLP GCN 前言 对图结构感兴趣的朋友可以学一下常用的有关图结构的库&#xff1a;networkx详细介绍 networkx 库&#xff0c;探讨它的基本功能、如何创建图、操作图以及其常…...

【ubuntu】数学人的环境搭建

Python 语言环境 python 的 pip 第三方库管理 sudo apt install python3-pippython 的 idle 界面 sudo apt install idle3R 语言环境 sudo apt install r-cran-zoo### RStudio 界面 ubuntu sudo snap install rstudio --classicJulia 语言环境 sudo snap install julia --…...

Android 常用命令和工具解析之Trace相关

目录 1、Perfetto基本用法 1.1 perfetto抓取命令 1.2 Perfetto主界面 1.3 Perfetto常用技巧 1.3.1 CPU的运行状态 1.3.2 CPU的频率 1.3.3 CPU的所有任务 1.3.4 判断是否低内存 1.3.5 CPU的负载计算 1.3.6 查看某进程是否运行在大核 1.3.7 CPU的大核占用率计算 2、应…...

使用IDEA构建springboot项目+整合Mybatis

目录 目录 1.Springboot简介 2.SpringBoot的工作流程 3.SpringBoot框架的搭建和配置 4.用Springboot实现一个基本的select操作 5.SpringBoot项目部署非常简单&#xff0c;springBoot内嵌了 Tomcat、Jetty、Undertow 三种容器&#xff0c;其默认嵌入的容器是 Tomcat&#xff0c;…...

Python学习34天

import random class Game: peo0 rob0 # # def __init__(self,peo,rob): # self.peopeo # self.robrob def Play(self): """ 石头剪刀布游戏&#xff0c;0代表石头&#xff0c;1代见到&#xff0c;2代表石头 …...