分布式事务 —— SpringCloud Alibaba Seata

Seata 简介 传统的单体应用中,业务操作使用同一条连接操作不同的数据表,一旦出现异常就可以整体回滚。随着公司的快速发展、业务需求的变化,单体应用被拆分成微服务应用,原来的单体应用被拆分成多个独立的微服务,分别使用独立的数据源,业务操作需要调用三个服务来完成。此时每个服务内部的数据一致性由本地事务

基于TOTP算法的Github两步验证2FA(双因子)机制Python3.10实现

从今年(2023)三月份开始,Github开始强制用户开启两步验证2FA(双因子)登录验证,毫无疑问,是出于安全层面的考虑,毕竟Github账号一旦被盗,所有代码仓库都会毁于一旦,关于双因子登录的必要性请参见:别让你的服务器(vps)沦为肉鸡(ssh暴力破解),密钥验证、双向因子登录值得拥有。 双因

MySQL到TiDB:Hive Metastore横向扩展之路

本文介绍了vivo在大数据元数据服务横向扩展道路上的探索历程,由实际面临的问题出发,对当前主流的横向扩展方案进行了调研及对比测试,通过多方面对比数据择优选择TiDB方案。其次分享了整个扩展方案流程、实施遇到的问题及解决方案,对于在大数据元数据性能上面临同样困境的开发者本篇文章具有非常高的参考借鉴价值...

【RocketMQ】DLedger模式下的选主流程分析

RocketMQ 4.5版本之前,可以采用主从架构进行集群部署,但是如果master节点挂掉,不能自动在集群中选举出新的Master节点,需要人工介入,在4.5版本之后提供了DLedger模式,使用Raft算法,如果Master节点出现故障,可以自动选举出新的Master进行切换。 Raft协议 R

分布式事务提交慢的一次总结和思考

分布式事务提交慢的一次总结和思考 背景 分布式事务未提交 是应用程序出现宕机异常的很重要的一原因. 应用宕机主要可以分为: 1. 内存泄露导致的OOM宕机. 表现在系统越来越慢, 应用的内存和CPU占用量越来越高. 最终达到无响应的状态, 此时数据库一般是正常的. 2. 分布式事务未提交导致的宕机,

低功耗引擎 Cliptrix 有什么价值

在一些硬件配置较低的设备(如 POS 机,穿戴设备等)中运行使用小程序时可能会出现无法运行,运行后卡顿的问题。 Cliptrix 的开发目标则是作为完全独立的小程序渲染引擎,与当前小程序逻辑分开,最终完全替换现有的 WebView 引用,保证即使在硬件配置较低的设备中也可以提供流畅的使用与运行体验。

一个超经典 WinForm 卡死问题的再反思

一:背景 1.讲故事 这篇文章起源于昨天的一位朋友发给我的dump文件,说它的程序出现了卡死,看了下程序的主线程栈,居然又碰到了 OnUserPreferenceChanged 导致的挂死问题,真的是经典中的经典,线程栈如下: 0:000:x86> !clrstack OS Thread Id: 0

从 WinDbg 角度理解 .NET7 的AOT玩法

一:背景 1.讲故事 前几天 B 站上有位朋友让我从高级调试的角度来解读下 .NET7 新出来的 AOT,毕竟这东西是新的,所以这一篇我就简单摸索一下。 二:AOT 的几个问题 1. 如何在 .NET7 中开启 AOT 功能 在 .NET7 中开启 AOT 非常方便,先来段测试代码。 interna

记一次 .NET某报关系统 非托管泄露分析

## 一:背景 ### 1. 讲故事 前段时间有位朋友找到我,说他的程序内存会出现暴涨,让我看下是怎么事情?而且还告诉我是在 Linux 环境下,说实话在Linux上分析.NET程序难度会很大,难度大的原因在于Linux上的各种开源工具主要是针对 C/C++, 和 .NET 一毛钱关系都没有,说到底

Python常见面试题017: Python中是否可以获取类的所有实例

017. Python中是否可以获取类的所有实例 转载请注明出处,https://www.cnblogs.com/wuxianfeng023 出处 https://docs.python.org/zh-cn/3.9/faq/programming.html#faq-multidimensional-

表格集算表高性能原理——怎样实现纯前端百万行数据秒级响应

> 本文由葡萄城技术团队于博客园原创并首发 > 转载请注明出处:[葡萄城官网](https://www.grapecity.com.cn/ "葡萄城官网"),葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 集算表 (Table Sheet)是一个具备高性能渲染、数据绑定功能、公式计算

碉堡!“万物皆可分”标记模型上线「GitHub 热点速览」

这周有个让人眼前一亮的图像识别模型 segment-anything,它能精细地框出所有可见物体,它标记出的物体边界线清晰可见。如此出色的模型,自然获得了不

[ROI 2018] Innophone 题解

# [ROI 2018] Innophone > 看了半天网上仅有的一篇题解……才堪堪写出来 > > 不过在LOJ上看提交,全是 `KTT`,看得我瑟瑟发抖~~(不会~~ ## 题意翻译 在平面上有一些点,你需要在这个平面上任意确定一个点(不要求是给定的点),定义其贡献为 横坐标 $\times$

CF1815

# CF1815 > `Div. 1` 确实难,`Virtual Contest` 上只完成了两道题,想出来了三道题。 ## A. Ian and Array Sorting 秒切题……考虑将前 $n - 1$ 个数变成一样的一个数 $x$。显然可以完成。 然而考虑此时最后一个数。如果 $\ge x

CF98C Help Greg the Dwarf 题解

CF98C Help Greg the Dwarf 题解 为什么不三分? 首先我们考虑如何求出答案。 如图,考虑设夹角为 \(\theta\),那么可以得到表达式: \[[\cfrac a {\tan \theta} - (l \cos \theta - b)] \sin \theta \]整理可得

focus blur 事件

前言 在浏览器中表单元素天然支持focus和blur事件,这两个事件在开发过程中出现的频率还是挺高的,前端开发者也都比较熟悉,在这里特意总结一下。 触发场景 鼠标点击 键盘tab键 直接调用dom的focus,blur方法 使用tabIndex使非表单元素支持focus和blur事件 给一个普通的d

ajax的statusText在http1.1和http2中的不同

问题 在服务端支持协议从http1.1升级到http2的时候,项目中正常的请求流程出现了错误,经排查是ajax封装代码使用xmlHttpRequest的statusText属性判断是否正常返回,进而导致错误,那么statusText属性在不同协议间发生了什么变化呢? 通过MDN文档(英文版本)查询到

Git上传本地项目到远程仓库

打开我们的项目,此时项目中是没有 .git 文件的 在你的项目文件夹里面【鼠标右击】弹出菜单 在【鼠标右击】弹出的菜单中,点击【Git Bash Here】 在命令窗口中输入:git init 在 Gitee 中 我们刚刚新建的仓库里,去复制仓库的地址 在命令窗口中输入:git remote add

组合模式详解

## 简介 组合模式(Composite)是针对由多个节点对象(部分)组成的树形结构的对象(整体)而发展出的一种结构型设计模式,它能够使客户端在操作整体对象或者其下的每个节点对象时做出统一的响应,保证树形结构对象使用方法的一致性,使客户端不必关注对象的整体或部分,最终达到对象复杂的层次结构与客户端解

云图说|AppCube零代码,开启无码新生活

阅识风云是华为云信息大咖,擅长将复杂信息多元化呈现,其出品的一张图(云图说)、深入浅出的博文(云小课)或短视频(云视厅)总有一款能让您快速上手华为云。更多精彩内容请单击此处。 摘要: 应用魔方 AppCube零代码应用构建平台,无需任何编程语言,只需通过拖、拉、拽,即可快速搭建应用程序,畅快创作,量