代码技术
文章平均质量分 82
技术猿18870278351
这个作者很懒,什么都没留下…
展开
-
深入解析:System.IO.Ports.SerialPort类的最佳实践与注意事项
在进行串行通信编程时,System.IO.Ports.SerialPort类提供了一个强大的工具集,用于在.NET框架中实现串行端口通信。本文将对使用SerialPort类时的关键注意事项和最佳实践进行摘译和整理,确保开发者能够高效、稳定地进行串行通信编程。System.IO.Ports.SerialPort类是.NET框架中用于管理串行端口通信的类。它支持基本的串行通信功能,如数据发送和接收、端口配置等。原创 2024-07-26 14:26:09 · 677 阅读 · 0 评论 -
深入解析仓颉编程语言:函数式编程的核心特性
仓颉编程语言以其独特的语法和功能,为开发者提供了强大的编程工具。本文将深入探讨仓颉语言中的嵌套函数、Lambda 表达式和闭包等函数式编程的核心特性,帮助开发者更好地理解和利用这些工具。仓颉编程语言是一种支持多种编程范式的现代语言,特别强调函数式编程的特性。它允许开发者以声明式的方式编写代码,提高代码的可读性和可维护性。原创 2024-07-26 11:12:10 · 401 阅读 · 0 评论 -
探索Llama 3.1:深入理解其多语言与长上下文处理能力
Llama 3.1,一款先进的语言模型,以其庞大的参数量和卓越的性能而闻名。本文将分析Llama 3.1在不同规模版本中—405B、70B和8B—的多语言处理能力和长上下文理解能力,探讨其在人工智能领域的应用潜力。Llama 3.1是一款基于深度学习的神经网络模型,专为处理复杂的语言任务而设计。它通过大量的参数和先进的算法,能够理解和生成自然语言。原创 2024-07-26 09:19:38 · 1161 阅读 · 0 评论 -
WPF脱机应用:实现拼音模糊搜索的AutoCompleteBox
然而,在脱机环境下实现拼音模糊搜索功能,需要一些额外的技术处理。通过在WPF中实现拼音模糊搜索的AutoCompleteBox,不仅可以提升用户输入的便捷性,还能增强应用的用户体验。尽管在脱机环境下实现这一功能面临一些挑战,但通过合理的设计和技术实现,可以有效地解决这些问题。拼音模糊搜索是一种根据用户输入的拼音,返回匹配的汉字或词语的搜索方式。分析不同的数据结构(如哈希表、Trie树等)对搜索性能的影响,并选择最适合的实现方式。探讨在WPF中实现异步搜索的方法,避免界面冻结,提供流畅的用户体验。原创 2024-07-25 14:52:27 · 638 阅读 · 0 评论 -
生物信息学新突破:在英特尔 Gaudi 2 上实现 ProtST 蛋白质语言模型加速
ProtST是一种基于深度学习的蛋白质序列预测模型,能够预测蛋白质的三维结构和功能。ProtST模型通过学习蛋白质序列的模式,预测其结构特征,为药物设计和疾病机理研究提供了新的工具。原创 2024-07-25 14:20:41 · 469 阅读 · 0 评论 -
深入剖析:GaussDB与MySQL在COUNT查询中的并行化技术
COUNT查询是数据库中用于统计记录数的基本操作,它在数据分析、报告生成等场景中非常常见。MySQL 5.7及以上版本开始支持查询的并行执行,可以根据系统配置和查询特性自动或手动启用并行执行。原创 2024-07-25 09:12:06 · 892 阅读 · 0 评论 -
数学建模基础:数据的分析与模型构建
本篇文章将探讨数学建模的基础知识,特别是数据处理与拟合模型的重要性和方法。通过精确的数据处理和合适的模型拟合,我们可以有效地解决实际问题。数据的质量直接影响模型的准确性和可靠性。数据处理是数学建模中的一个核心环节,它涉及到数据的预处理、特征工程和数据转换。数据预处理包括处理缺失值、异常值和噪声数据,以提高数据的质量和模型的性能。数据整理是对收集到的数据进行清洗和格式化,确保数据的一致性和可用性。线性模型是最简单的拟合模型之一,适用于描述数据的线性关系。模型的评估和优化是确保模型有效性的关键步骤。原创 2024-07-25 08:51:20 · 605 阅读 · 0 评论 -
PyMol在Windows系统上的免费安装指南
PyMol是一个开源的分子图形系统,它能够创建高质量的3D图像和动画,支持多种文件格式,并提供了丰富的分子编辑和分析工具。PyMol广泛应用于科研和教育领域,是分子生物学家和结构生物学家的重要工具。原创 2024-07-24 14:41:11 · 894 阅读 · 0 评论 -
MiniExcel:.NET中处理Excel的高效方案
MiniExcel是一个开源的.NET库,用于简化读写Excel文件的过程。它支持,因此可以在多种平台上运行,包括.NET Core、.NET Framework、Xamarin、MAUI等。原创 2024-07-24 10:49:51 · 809 阅读 · 0 评论 -
流量录制与回放:jvm-sandbox-repeater工具详解
jvm-sandbox-repeater是一款基于Java虚拟机(JVM)的流量录制和回放工具。它允许开发者在沙箱环境中捕获和重放网络请求,从而模拟用户行为和系统交互。这种工具对于测试分布式系统、微服务架构以及需要复杂交互的应用程序尤为有用。jvm-sandbox-repeater支持自定义录制和回放规则,例如忽略某些请求头或者修改请求参数。java。原创 2024-07-24 08:48:18 · 732 阅读 · 0 评论 -
探索Java虚拟机(JVM)的演进历程引言
当然,对于虚拟机,需要针对每个平台分别开发,为了保证不同平台、不同公司开发的虚拟机都能正确执行 Java 字节码,SUN 公司制定了一系列的 Java 虚拟机规范。从实践的角度来看,虚拟机的兼容性做得非常好,低版本的 Java 字节码完全可以正常运行在高版本的虚拟机上。JVM的演进历程是技术创新和适应需求的典范。从最初的跨平台执行环境到现代的高性能、多语言支持的平台,JVM的发展不仅推动了Java语言的进步,也对整个软件开发领域产生了深远的影响。在此,我们附上一张 Java 之父的光辉图片!原创 2024-07-23 16:33:40 · 452 阅读 · 0 评论 -
C++探索:约数与倍数的性质及其编程实现
约数(Divisor):如果一个整数a能被另一个整数b整除(b≠0),那么b就是a的约数。例如,1、2、3和6都是6的约数。倍数(Multiple):一个数能够被另一数整除,那么这个数就是另一数的倍数。例如,6、12、18等都是3的倍数。通过本文,我们不仅了解了约数与倍数的基本概念和性质,还学习了如何在C++中编写程序来寻找一个数的所有约数和判断一个数是否为另一个数的倍数。这些基础知识对于深入理解数学中的数论问题以及进行高效的编程实践都具有重要意义。希望本文能为你的学习和研究提供有益的参考。原创 2024-07-23 15:10:48 · 368 阅读 · 0 评论 -
编程技能在数据库管理中的应用与重要性
在当今的信息技术领域,数据库管理员(DBA)的角色已经远远超越了传统意义上的数据库维护和操作。随着技术的快速发展,DBA需要具备更多的技能,其中编程能力成为了一个不可或缺的部分。编程技能对于现代DBA来说是一项宝贵的资产。它不仅能够帮助DBA在日常工作中更加高效,还能够为DBA的职业发展打开新的可能性。通过不断学习和实践,DBA可以不断提升自己的技能,以适应不断变化的技术环境。对于DBA来说,学习编程不仅仅是为了编写代码,更重要的是培养逻辑思维、问题解决能力和创新能力。原创 2024-07-23 14:10:15 · 274 阅读 · 0 评论 -
深入理解 SQL Server 中的 NUMA 架构及其优化策略
NUMA是一种计算机内存架构,它允许多个处理器共享一个统一的内存空间,但每个处理器访问本地内存的速度比访问远程内存快。这种设计可以提高多处理器系统中的内存访问效率,减少内存访问延迟。原创 2024-07-23 09:16:38 · 399 阅读 · 0 评论 -
python 里 certifi 库的作用
certifi 库安装文件夹里面只有一个core.py和cacert.pem文件,core.py里面只有一个where()函数,用来返回cacert.pem的路径,所以经常更新certifi库本质就是要经常更新cacert.pem文件。安装了certifi之后,和requests库一样也有一个cacert.pem,可以用编辑器打开cacert.pem,里面包含了很多可信任知名公司的证书/公钥。通过360浏览器可以看到百度的根证书,查一下cacert.pem文件,确实是有根证书的。原创 2024-07-22 11:06:39 · 428 阅读 · 0 评论 -
由delete引起的锁扩大
这句话意思是:假设delete语句物理删除数据,那么delete事务会持有gap lock,那么会造成锁扩大,而实际上delete操作会转为update操作,最终delete事务持有的gap lock退化为record lock,不会造成锁扩大。锁住的范围是 [25, +∞) 正无穷, 所以session 2的insert操作被阻塞了,也就是删除 c=25 这行数据,导致gap lock 扩大到 正无穷。分析:这里我们要关注的加锁对象依然是二级索引【c】,这里跟SQL Server一样。原创 2024-07-22 10:28:14 · 815 阅读 · 0 评论 -
SQL Server内置的HTAP技术
假设用户建了一个行存索引和列存索引组合的表,事务插入数据时,会同时插入行存和Delta Store,Delta Store达到100W行阈值后冻结,tuple-mover后台线程会将其中较冷的数据迁移到Main Store,无论是过去的传统数仓,还是现在的大数据技术栈,都存在这个时效性问题。根据数仓场景的特点,SQL Server列存的开销其实可以接受,然后使用类Delta-Main架构也是比较主流的做法,但是到了HTAP的场景,整个数据库需要支撑高并发的查询和更新,列存的开销就会被放大。原创 2024-07-22 09:40:00 · 702 阅读 · 0 评论 -
FIO磁盘性能测试工具
ioengine:FIO 工作时使用的引擎。使用 FIO 工具测试硬盘性能,首先确定待模拟IO负载的IO参数,如I/O type,Block size,I/O engine,I/O depth,Target file/device等。rw: 读写方式,顺序读read,顺序写write,随机读randread ,随机写randwrite,混合读写randrw,如果要测试吞吐量,需要设为顺序读read,顺序写write。根据实际业务的场景,一般将 I/O 的表现分为四种场景,随机读、随机写、顺序读、顺序写。原创 2024-07-22 09:03:56 · 1168 阅读 · 0 评论 -
数据库容灾等级
描述:这个等级一般是业务进入稳定期,需要考虑把容灾等级提升一个档次,这时候数据库选型上,一般需要具备跨机房数据同步能力,例如,SQL Server的AlwaysOn、MySQL的MGR、PostgreSQL的流复制等能满足;描述:一般金融业务等对数据安全要求比较高的需要达到这个等级,也就是我们常说的,异地双活、异地多活,数据库选型上一般需要具备分布式多节点数据同步能力,例如,某Base,某DB等能满足。备份站点一般只备份数据,不承担业务。为了解决这些问题,当灾难发生时,可先恢复关键数据,后恢复非关键数据。原创 2024-07-19 11:28:51 · 515 阅读 · 0 评论 -
SQL Server实例间同步登录用户
目前来看,作业等其他实例对象的同步还比较难实现,比如作业分为很多步骤,而且作业包含的命令也比较复杂,作业也支持调用其他子系统,比如 PowerShell ,ActiveX,CmdExec等数据库外部程序和命令,用动态SQL方式很难处理。(3)删除用户:如果从库存在同名用户,就不新建用户,否则新建用户,为了尽可能减少对线上生产环境影响,不做删除用户操作,所以如果从库存在同名用户并且用户SID不同,建议手动删除用户由脚本自动同步主库用户过来。4、高可靠性,使用SQLServer自带原生工具,足够简单高效。原创 2024-07-18 15:26:26 · 743 阅读 · 0 评论 -
微软成为PostgreSQL主要贡献者
另一方面,目前在国内,除了老大哥Oracle比较少人喷之外,SQL Server也是经常被人喷,说MySQL和PostgreSQL比SQL Server强多少倍,然后还有MySQL的人跟PostgreSQL的人经常互喷。这就导致几个问题,代码没有被真实场景打磨,代码有漏洞,性能有问题,贡献的代码由于不是真实的或者迫切的客户需求,所以对数据库内核稳定性有影响。真的不明白有什么好喷的,只能说国内喷子太多,包括国内某些大牛,或许这就是国内的数据库环境和氛围,还有学术上也有些欠缺吧。原创 2024-07-18 13:45:07 · 1051 阅读 · 0 评论 -
拯救SQL Server数据库事务日志文件损坏的终极大招
-表错误: 对象 ID 0,索引 ID -1,分区 ID 0,分配单元 ID 0 (类型为 Unknown),页 ID (1:69830) 在其页头中包含错误的页 ID。--表错误: 对象 ID 0,索引 ID -1,分区 ID 0,分配单元 ID 0 (类型为 Unknown),页 ID (1:69831) 在其页头中包含错误的页 ID。数据库停服后,将testdb数据库 的ldf事务日志文件改名或者移到其他路径,重新启动SQL Server 服务,可以看到,testdb 数据库处于“恢复挂起”状态。原创 2024-07-18 10:49:35 · 1350 阅读 · 0 评论 -
GaussDB(DWS)运维利刃:TopSQL工具解析
TopSQL是GaussDB(DWS)数据库中内置的一款功能十分强大的性能分析工具。在生产环境中,难免会出现一些突发情况,导致查询语句出现异常中断、阻塞时间长等情况,如果当时没能记录下来,那么事后就要投入更多的人力以及时间成本去对错误进行定位和解决,有时还往往定位不到错误出现的地方。为了解决这样的窘迫的情况,GaussDB(DWS)开发了TopSQL功能,对运行中的语句记录(实时TopSQL),对运行完成的语句进行记录(历史TopSQL)。原创 2024-07-12 09:19:25 · 976 阅读 · 0 评论 -
实例详解如何构建动态SQL语句
在数据库中构建动态SQL语句是指根据不同的条件或参数创建不同的SQL语句。这通常是为了适应不同的业务需求,提高SQL的灵活性和效率。GaussDB数据库是一款具备高性能、高可用性和高扩展性的关系型数据库,它提供了丰富的功能和工具,支持动态SQL语句的构建。下面我们将介绍如何使用GaussDB数据库构建动态SQL语句。原创 2024-07-11 11:18:04 · 453 阅读 · 0 评论 -
GaussDB跨云容灾:实现跨地域的数据库高可用能力
GaussDB跨云容灾方案,实现了同云及跨云场景下的架构统一,解决了用户多云跨地域部署的数据库高可用难题。通过设计了一套容灾搭建,主备集群切换,容灾升主,容灾加回的方案,用于保证容灾场景下双集群的高可靠性,以满足金融级数据库容灾能力。原创 2024-07-09 08:44:18 · 828 阅读 · 0 评论 -
技术解读数据库如何实现“多租户”?
随着云计算时代的到来,多租户的概念也逐渐广为人知。“多租户”使得租户之间可以共享物理资源,能够帮助用户节约硬件成本和运维成本,提高资源利用效率。同时,在实现的过程中,考虑到共享带来的安全、隔离等问题以及后续业务面临的扩展需求,“多租户”在隔离性和扩展性方面也进行了相应的设计实现。那么,在数据库领域是如何实现“多租户”呢?业界有虚拟机多租、容器多租、数据库内核多租等多种技术可以实现多租户。原创 2024-07-08 16:00:54 · 918 阅读 · 0 评论 -
从Purge机制说起,详解GaussDB(for MySQL)的优化策略
Purge机制负责GaussDB(for MySQL) InnoDB过期数据的清理,对于数据库高性能平稳运行起到至关重要的作用。Purge机制不及时不仅会导致过期数据的堆积,占用大量磁盘空间,还会影响SQL执行效率。当前GaussDB(for MySQL)的Purge优化功能,通过任务流水线化、线程优先级调整、二次分发等手段,避免数据库undo log堆积,极大提升Purge的性能,大幅改善用户体验。原创 2024-07-03 10:19:14 · 409 阅读 · 0 评论 -
深度解读数据库引入LLVM技术后如何提升性能
LLVM被广泛运用于数据库、大数据、AI等领域。在数据库领域,多家商业数据库和开源数据库都应用其加速数据库处理。GaussDB作为企业级的数据库,经过了多年的技术发展,具备丰富的技术特性,使用该技术后提升了系统的查询性能,使得客户在OLAP和OLTP多场景中均受益。原创 2024-07-02 15:58:57 · 457 阅读 · 0 评论 -
深度体验与测评openGauss 6.0.0新版本
openGauss 6.0.0版本在安装方面进行了重大改进,推出了全新的一站式交互安装功能。这一功能极大地简化了安装流程,降低了用户的学习成本。在安装过程中,用户只需通过交互界面输入数据库的相关信息,系统便会自动生成xml配置文件,并自动进行数据库的初始化安装。相比之前的版本,这一改变无疑是一大亮点。在实际安装过程中,我按照提示逐步操作,整个过程流畅无阻。值得一提的是,openGauss 6.0.0版本还解除了对root用户的依赖,进一步提升了安装的安全性。原创 2024-07-02 10:23:13 · 378 阅读 · 0 评论 -
跨越云端,华为云技术专家分享高效跨云迁移实
在云计算多云时代,华为云Stack CMS服务提供了一套最适配政企的虚拟机跨云搬迁解决方案。存储双挂迁移、增量迁移均已商用,并在多个华为云Stack局点完成迁移实施;流式迁移演练正在推广使用。CMS基于Agent的跨云迁移方案在逐步规划构建,敬请期待。CMS将持续构建多云迁移竞争力,提升产品易用性,以充分满足政企客户对高安全、高性能、低中断的诉求,助力客户业务的平滑演进。原创 2024-07-01 09:26:44 · 356 阅读 · 0 评论 -
破除软件开发困局,基于容器平台的DevOps转型实践
随着信息化的进程不断加速,带来的各种业务应用、平台应用等软件资产的复杂度也快速上升。随之而来的信息化基础设施能力与软件工程全生命周期的管理也会变得越来越复杂,数字化转型、云原生、持续交付的口号随之升起。千行百业都在响应数字化转型的号召以提升业务效率、企业竞争力或是市场竞争力。但是企业在转型的过程中却举步维艰。往往原因有以下几点:流程固化,牵一发而动全身:原有的流程已经制定多年,相关人员也已经习惯这套流程。突然的规则转变以及带来的相关风险无人愿意主动承担。原创 2024-06-28 15:24:43 · 851 阅读 · 0 评论 -
干货收藏!Calico的BGP RouteReflector策略实践
容器网络组件Calico支持多种后端模式,有Overlay的IPIP、Vxlan模式,也有Underlay纯路由的BGP模式。相比于Overlay网络模型,Underlay网络具有更高的数据面转发性能。同时在纯路由模式下,也有两种方案:Calico BGP的fullmesh方案,该方案存在一些限制,适用于小规模kubernetes集群,集群节点越多,BGP连接就越多,需要建立大量连接来保证网络的互通性,每增加一个节点就要成倍的增加连接保证网络的互通性,这样的话就会使用大量的网络消耗。原创 2024-06-28 10:35:06 · 1112 阅读 · 0 评论 -
Kmesh进入CNCF云原生全景图,实现网格治理sidecarless化
近日,Kmesh 正式进入 CNCF 云原生全景图,位于 Service Mesh 类别下。CNCF Landscape 在云原生实践过程中的每个环节帮助用户了解有哪些具体的软件和产品选择,Kmesh 进入 CNCF Landscape,成为了 CNCF构建云原生服务网格最佳实践中的一环。原创 2024-06-27 10:26:22 · 343 阅读 · 0 评论 -
通过HPA+CronHPA组合应对业务复杂弹性伸缩场景
k8s社区提供的HPA策略支持在配置的实例数范围内,根据业务容器的CPU、内存等资源使用率实现自动扩缩容。叠加定时扩容策略CronHPA,期望在业务高峰到来前,先通过CronHPA定时任务提前扩容业务容器副本数,然而此时可能会因HPA检测到资源使用率很低而触发实例缩容,导致预扩容的策略失效。华为云CCE服务通过将HPA与CronHPA组合,实现指标弹性策略与定时弹性策略的有机协同,满足了客户业务复杂的弹性伸缩场景。原创 2024-06-27 09:26:55 · 828 阅读 · 0 评论 -
CCE云原生混部场景下的测试案例
企业的 IT 环境通常运行两大类进程,一类是在线服务,一类是离线作业。在线任务:运行时间长,服务流量及资源利用率有潮汐特征,时延敏感,对服务SLA 要求高,如电商交易服务等。离线任务:运行时间分区间,运行期间资源利用率较高,时延不敏感,容错率高,中断一般允许重运行,如大数据处理等。原创 2024-06-26 16:19:56 · 727 阅读 · 0 评论 -
基于Sermant的全链路灰度发布在汽车行业DMS系统的应用
随着汽车产业的智能升级,DMS系统作为汽车行业的经销管理系统也面临着更加多种多样的业务场景的挑战。借助Sermant,华为云能够为DMS系统提供一整套端到端全链路灰度发布方案,这套方案可以适应DMS系统应用中更多灵活多变的场景。基于Sermant的全链路灰度发布方案可以解决DMS系统目前在一些如新业务在试点门店测试上线等业务场景遇到的困难,并且这一套方案能适应各类敏捷迭代的业务场景。原创 2024-06-26 15:22:31 · 402 阅读 · 0 评论 -
Kurator V0.6.0:实现应用全流程生命周期管理
Kurator 是华为云开源的面向分布式云原生环境的一站式解决方案。它利用 Karmada 作为多集群编排基础,内置集成了Istio、Prometheus、Thanos、Volcano、KubeEdge、Argo 等主流云原生技术。基于此,Kurator 构建了包括集群舰队管理、集群生命周期管理、统一应用分发、流量治理、监控和策略管理在内的分布式云平台管理能力。在最新 0.6.0 版本中,Kurator 为云原生应用增加了 CI/CD 流水线设置与管理功能,简化流水线创建。原创 2024-06-26 14:30:29 · 429 阅读 · 0 评论 -
Java开发必读,谈谈对Spring IOC与AOP的理解
IOC和AOP是Spring中的两个核心的概念,下面谈谈对这两个概念的理解。原创 2024-06-24 10:47:18 · 397 阅读 · 0 评论 -
一文搞懂5种内存溢出案例,内含完整源码
首先,我们创建一个名称为BlowUpJVM的类,之后所有的案例实验都是基于这个类进行。如下所示。原创 2024-06-21 11:14:31 · 872 阅读 · 0 评论 -
一文带你理解透MyBatis源码
随着互联网的发展,越来越多的公司摒弃了Hibernate,而选择拥抱了MyBatis。而且,很多大厂在面试的时候喜欢问MyBatis底层的原理和源码实现。总之,MyBatis几乎成为了Java开发人员必须深入掌握的框架技术,今天,我们就一起来深入分析MyBatis源码。整体三万字左右,全程高能,小伙伴们可慢慢研究。总体上来说,MyBatis的源码还是比较简单的,只要大家踏下心来,花个两三天仔细研究下,基本上都能弄明白源码的主体脉络。原创 2024-06-20 09:34:26 · 316 阅读 · 0 评论