XOR

应用部署初探:微服务的3大部署模式

在之前的文章中,我们已经充分了解了应用部署的4种常见模式(金丝雀部署、蓝绿部署、滚动部署及影子部署)。随着云原生技术逐步成熟,企业追求更为灵活和可扩展的系统,微服务架构大行其道。 微服务固然有诸多优点,但也给架构及运维工程师带来了新的挑战。在单体架构中,应用的设计、部署以及扩展都是作为一个单元进行, ......
模式

2023年 .NET Monorepo 来了

Monorepo(monolithic repository)是一种项目架构,简单来说就是,将多个项目或包文件放到一个git仓库来管理,很多前端项目vue3、element都是采用的这种架构模式。 之所以应用monorepo,主要是解决以下问题:代码复用的问题 。开发流程统一 。高效管理多项目/包。 ......
Monorepo 2023 NET

.NET 团队 更新了 .NET 语言策略

2023年2月6日 ,.NET团队在官方博客上发布了.NET 语言策略的更新文章,具体参见 https://devblogs.microsoft.com/dotnet/update-to-the-dotnet-language-strategy/。微软在.NET平台上提供3种语言 - C#,F#和V ......
NET 团队 策略 语言

分布式事务 | 使用 dotnetcore/CAP 的本地消息表模式

本地消息表模式,其作为柔性事务的一种,核心是将一个分布式事务拆分为多个本地事务,事务之间通过事件消息衔接,事件消息和上个事务共用一个本地事务存储到本地消息表,再通过定时任务轮询本地消息表进行消息投递,下游业务订阅消息进行消费,本质上是依靠消息的重试机制达到最终一致性。 ......
分布式 dotnetcore 事务 消息 模式

分布式事务 | 使用DTM 的Saga 模式

DTM 首创的子事务屏障技术,使得开发者基于DTM 提供的SDK能够轻松开发出更可靠的分布式应用,彻底将开发人员从网络异常的处理中解放出来,再也不用担心空补偿、防悬挂、幂等等分布式问题。如果要进行分布式事务框架的选型,DTM 将是不二之选。 ......
分布式 事务 模式 Saga DTM

记录一次排查log4cxx库按照日期回滚,不创建新目录的BUG

记录一次排查log4cxx库按照日期回滚,但是第二天没有新目录创建的的BUG。日志目录根据当天日期生成新目录,目录下存放日志文件 ......
日期 log4cxx 目录 4cxx log4

Asp.Net Core中利用过滤器控制Nginx的缓存时间

前言 Web项目中很多网页资源比如html、js、css通常会做服务器端的缓存,加快网页的加载速度 一些周期性变化的API数据也可以做缓存,例如广告资源位数据,菜单数据,商品类目数据,商品详情数据,商品列表数据,公共配置数据等,这样就可以省去很多在服务端手动实现缓存的操作 最早资源缓存大部分都用Ex ......
过滤器 缓存 时间 Nginx Core

【动画笔记】数据结构-AVL树的插入操作

本笔记主要围绕AVL树的平衡因子、纸上做题思路、失衡类型(LL/RR/LR/RL)、失衡调整方法、插入后回溯这几部分知识点展开。 ......
数据结构 结构 笔记 动画 数据

JavaScript 中更安全的 URL 读写

前言 URL对于我们开发人员来讲,应该是非常熟悉了。在对URL进行参数拼接时,我们一般都会直接进行字符串拼接或使用模版字符串,因为这样非常方便,但是我们这样其实会在不知不觉中以不安全的方式编写 URL。 比如,我们通常会这样写: const url = `https://www.baidu.com ......
JavaScript URL

玩转web3第一篇——web3-react

概况 web3-react是由Noah Zinsmeister开发的一个web3框架,主要功能是实时获取DApp里的关键数据(如用户当前连接的地址、网络、余额等)。 Noah也是著名的去中心化交易所uniswap里的工程师,因此这个库在uniswap里也已被大量的使用。 web3-react有两个版 ......
web3 web3-react web react

玩转web3第二篇——Web3UI Kit

介绍 开发web2应用的时候,可以很方便找到很多优秀的UI库,比如antd,material ui,element ui等等,但web3应用对应的UI库却不多。 今天给大家介绍一款优秀的WEB3的UI库——Web3UI Kit,借助它内置的丰富组件,可以帮助开发人员快速开发出美观的web3页面。 安 ......
Web3UI web3 Web3 web Web

DaemonSet方式部署nginx-ingress

前言 nginx-ingress是k8s官方维护的一个Ingress Controller,具体使用,官方有详细的文档:https://kubernetes.github.io/ingress-nginx/deploy/ 直接按照官方文档进行安装,一般都会失败,本文将帮助你成功安装他。 官方的安装方 ......
nginx-ingress DaemonSet ingress 方式 nginx

带团队后的日常思考(十一)

一、日常问题 1)需求的讨价还价 做最大的努力,维护自己团队成员的开发利益。 产品和运营会根据他们的业务来提出需求,从他们的角度来说,这些需求无可厚非。 不过,他们提出的需求,在实现时有些改动会比较复杂。那么就需要与他们协商。 协商的目的不是砍需求,而是用一种更合适的方式实现,既能满足他们的需求,也 ......
团队

动态代理-cglib分析

生成代理类文件的方式 jvm添加此启动参数,后面就是代理类class生成的地址 -Dcglib.debugLocation=~/baldhead/java/dynamic-proxy-cglib/src/main/java/com/baldhead/dynamic/proxy/cglib/class ......
动态 cglib

开源世界的爱恨情仇

开源系统和工具在我们生活中扮演着越来越重要的角色,作为一个软件开发人员,不可避免的会与各种开源环境打交道,今天就大体介绍一些开源世界中如雷贯耳的名词到底是什么意思,有什么关系,这些提到的产品,也是开源世界的根基。 Multics ("Multiplexed Information and Compu ......
情仇 爱恨 世界

遗传算法求TSP问题

一、实验内容及目的 本实验以遗传算法为研究对象,分析了遗传算法的选择、交叉、变异过程,采用遗传算法设计并实现了商旅问题求解,解决了商旅问题求解最合适的路径,达到用遗传算法迭代求解的目的。选择、交叉、变异各实现了两种,如交叉有顺序交叉和部分交叉。 二、实验环境 Windows10 开发环境Python ......
算法 问题 TSP

python命令行参数argparse常用命令

1、参数个数控制 parser.add_argument('-i', '--integers', nargs='?', const=100, type=int, help='input a number') 参数nargs: nargs='*' 表示参数可设置0个或多个,参数是一个列表 nargs= ......
命令 argparse 常用 参数 python

前端报表如何实现无预览打印解决方案或静默打印

在前端开发中,除了将数据呈现后,我们往往需要为用户提供,打印,导出等能力,导出是为了存档或是二次分析,而打印则因为很多单据需要打印出来作为主要的单据来进行下一环节的票据支撑, 而前端打印可以说是非常令人头疼的一件事。 为什么令大家头疼呢? 因为前端打印,要强依赖与浏览器的打印预览页面,会天然存在以下 ......
前端 报表 解决方案 方案

T02 ExtractSubject 项目开发总结

公纵号: 皮豪 博客:www.kbug.cn 邮箱:pphboy@qq.com 前言 看来已经是一种习惯,每次寒假都会开发一个项目出来。本次项目使用的是Qt GUI,语言是C++。不得不说,在业务上写C++和Java区别还是非常大,但我的技术水平非常低,不懂处理指针,所以很大程度上,用的代码也不能体 ......
项目开发 ExtractSubject 项目 T02 02

借助Radamsa变异数据(初探)

Radamsa 介绍 Radamsa是一款测试用例生成器,通常用来测试程序对格式错误和潜在恶意输入的承受能力(对程序进行模糊测试)。它通过你的输入来返回变异后的数据。它的主要卖点是,它已经在真正重要的程序中发现了许多错误。 Radamsa 使用方法 1、可以直接喂给它字符,它就会返回变异之后的数据给 ......
变异 Radamsa 数据

Python 发展趋势:与 Rust 深度融合、更易于编写 Web 应用

大家好,我是猫哥,好久不见!2022 年末的时候,我不可避免地阳了,借着身体不舒服就停更了,接踵而至的是元旦和春节假期,又给自己放了假,连年终总结也鸽了,一懈怠就到了 2 月中旬…… 现在是我家娃出生的第三个月,全家人大部分的时间和精力都在他身上,结果是幸福与疲累共存。新生儿是那么的可爱,又是那么的 ......
深度 趋势 Python Rust Web

关于微服务的一些总结和经验之谈,来看看你都了解吗

一 谈谈对微服务的理解 1. 什么微服务? 微服务是一种软件开发技术- 面向服务的体系结构(SOA)架构样式的一种变体,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。 每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相沟通(通常是基于HTTP ......
经验

一篇文章带你了解设计模式——创建者模式

一篇文章带你了解设计模式——创建者模式 在之前的文章中我们已经学习了设计模式的基本原则和基本分类 下面我们来介绍第一种设计模式,创建型模式的主要关注点是怎样创建对象,它的主要特点是“将对象的创建与使用分离”。 下面我们将从下面四个方面讲述五种创建者模式: 单例模式 工厂模式 原型模式 建造者模式 单 ......
模式 创建者 设计模式 篇文章

一篇文章带你了解设计模式——结构型模式

一篇文章带你了解设计模式——结构型模式 在之前的文章中我们已经介绍了设计模式中的创建者模式 下面我们来学习第二种类型的设计模式,结构型模式描述如何将类或对象按某种布局组成更大的结构 它分为类结构型模式和对象结构型模式,前者采用继承机制来组织接口和类,后者釆用组合或聚合来组合对象。 由于组合关系或聚合 ......

python实战-基于正交实验(工具:allpairs)自动生成接口异常测试用例

#代码以上传github,欢迎使用 https://github.com/qtclm/allpairs_interface_test_case_generate_abnormity_utils 有啥问题建议或者bug啥的可以加我qq一起交流学习,248313385 #更新日志 2023.2.7:修复 ......
正交 自动生成 实战 allpairs 接口

Kubernetes(k8s)密码管理:Secret

一.系统环境 | 服务器版本 | docker软件版本 | Kubernetes(k8s)集群版本 | CPU架构 | | | | | | | CentOS Linux release 7.4.1708 (Core) | Docker version 20.10.12 | v1.21.9 | x86 ......
Kubernetes 密码 Secret k8s 8s

Kubernetes(k8s)配置文件管理:ConfigMap

Kubernetes(k8s)配置文件管理:ConfigMap ,创建ConfigMap,以环境变量的方式使用ConfigMap ,以卷的方式使用ConfigMap ......
Kubernetes ConfigMap 文件 k8s 8s

Kubernetes(k8s)控制器(一):deployment

Kubernetes(k8s)控制器(一):deployment:修改deploy副本数,Pod 水平自动扩缩HorizontalPodAutoscaler,k8s升级镜像,镜像升级历史记录 ......
控制器 Kubernetes deployment k8s 8s

Kubernetes(k8s)控制器(二):DaemonSet

Kubernetes(k8s)控制器(二):DaemonSet :创建DaemonSet ,创建daemonset 让其在k8s集群所有worker节点运行pod ,创建daemonset让其仅在某些节点上运行 Pod ......
控制器 Kubernetes DaemonSet k8s 8s

Kubernetes(k8s)控制器(三):ReplicationController

Kubernetes(k8s)控制器(三):ReplicationController:ReplicationController工作机制 ,创建ReplicationController ,扩展replicationcontroller副本数 ......