交换排序 冒泡 和快速 的实现
Vue/ React/ Angular 前端项目在 Web 服务器上的部署配置
Web 服务器是一种用于存储,处理和传输 Web 内容的软件。它是一种特殊类型的服务器,具有处理 HTTP 请求并向浏览器返回 Web 页面和其他内容的能力。Web服务器支持多种编程语言,如 PHP,JavaScript,Ruby,Python 等,并且支持动态生成 Web 页面。常见的 Web 服 ......
Vue3 企业级优雅实战 - 组件库框架 - 11 组件库的打包构建和发布
回顾第一篇文章中谈到的组件库的几个方面,只剩下最后的、也是最重要的组件库的打包构建、本地发布、远程发布了。 1 组件库构建 组件库的入口是 packages/yyg-demo-ui,构建组件库有两个步骤: 添加 TypeScript 的配置文件: tsconfig.json 添加 vite.conf ......
redis实现分布式锁(包含代码以及分析利弊)
redis实现分布式锁(基础版) 使用redis实现分布式锁的方法有多种,基础版本是基于setnx命令,即如果不存在则设置。这个命令可以保证只有一个客户端能够成功设置一个key,从而获得锁。设置key的时候需要设置一个过期时间,以防止死锁。释放锁的时候需要删除key,或者使用lua脚本来保证原子性。 ......
Vue3 企业级优雅实战 - 组件库框架 - 10 实现组件库 cli - 下
上文创建了一堆 utils、component-info,并实现了新组件模块相关目录和文件的创建。本文继续实现后面的内容。 1 组件样式文件并导入 在 src/service 目录中创建 init-scss.ts 文件,该文件导出 initScss 函数。 由于 .vue 类型的组件的样式就直接写在 ......
聊聊项目中定时任务的处理方式
一个项目中一般都少不了定时任务,主要用来处理一些特殊的任务,有的是只执行一次的 定时任务,有的是周期循环执行的定时任务。可根据项目需要来选择定时任务类型。自己参与 开发的一个项目中,因为很多定时任务都是需要周期执行的,因此选用按周期循环执行的方式。 比如几分钟重载一次主表数据,重载数据字典表数据,定 ......
【极客升维记】人与机器的较量
最近一个月,ChatGPT在持续走热,整个技术圈似乎在“瑟瑟发抖”。因为大家在不断的构思着“科幻”的那一幕:整个世界被机器所控制,人沦为“机器”的“工具”。 ......
DNS 是如何影响你冲浪速度的?
本文详细介绍了 DNS 相关知识,包括 DNS 工作原理、如何提升域名解析速度、以及 DNS 记录与报文等内容。 1. 域名与域名服务器 在日常上网过程中,出于好记的原因,人们更喜欢在浏览器中输入网站的域名,而不是 IP 地址。比如想要访问百度,则会输入 www.baidu.com ,而不是202. ......
【CTO变形记】驱动力的选择
前言:每个人做事,都有着各种动机在里面,有时候看似不可理解的行为或者选择,初一看,可能是‘认知’,其实深层次实际是内在驱动力使然。例如,当一个人找我们问各种问题的时候,我们往往会先问‘你的意图’是什么?只有知道了你的意图,我们才知道如何回答! 系列相关链接: 【CTO变形记】驱动力的选择 【CTO变 ......
让人眼前一亮的应用「GitHub 热点速览」
大开眼界的一期 GitHub 热门项目,类似 Django 存在的 pynecone,搞定 Windows、Office 激活的 Microsoft-Activation-Scripts,都让我的收藏夹蠢蠢欲动。最不能错过的应该是 hyperswitch,搞定你的支付业务。当然,还有 GitHub ......
Azure Artifacts--全平台的程序包管理仓库(支持nuget)
写在前面 大部分一定规模的团队都有搭建私有nuget的需求;例如: MyGet BaGet 而我们使用的Azure DevOps 平台本身就提供了Artifacts, Artifacts不单只支持nuget包,还支持Npm、Maven、pip等; 这里简单说说nuget的Azure Devops A ......
朋友圈那串神秘字符背后的开源项目「GitHub 热点速览」
如果你这周没刷到类似 “npub1sg6plzptd64u62a878hep2kev88swjh3tw00gjsfl8f237...” 的一串字符,那就说明本期 GitHub Trending 周榜的内容非常适合你。这是前推特创始人多次推荐的去中心的社交网络 App Damus 的个人主页名片,而 ......
【十年奋战,一朝梦醒】6年后的归来,再看职场与自身发展
前言:再次感谢博客园,感谢园友,转眼间6年过去了,在这6年里经历了很多的事情,从技术角色,切换到创业角色,又切换到投资的角色。在路上,不断的探寻,不断的磕磕碰碰,蓦然回首,发现自己不再是当初那个“愣头青”,深夜沉思,发现自己内在依然是那个热血码农! 因为很久没有动笔写东西了,一时间不知道如何下笔。于 ......
WPF开发经验-实现一种三轴机械手控件
一 引入 考虑实现一种三轴机器人控件。 三轴机器人用来将某种工件从一个位置运送到另一个位置。 其X轴为手臂轴,可以正向和反向运动,它处于末端,直接接触工件; 其T轴为旋转轴,可以对手臂进行旋转; 其Z轴为升降轴,可以对手臂和旋转部分进行升降。 二 RobotControl 定义出机器人的轴动作枚举, ......
数据库系列:MySQL慢查询分析和性能优化
1 背景 我们的业务服务随着功能规模扩大,用户量扩增,流量的不断的增长,经常会遇到一个问题,就是数据存储服务响应变慢。 导致数据库服务变慢的诱因很多,而RD最重要的工作之一就是找到问题并解决问题。 下面以MySQL为例子,我们从几个角度分析可能产生原因,并讨论解决的方案。 2 定位慢查询的原因并优化 ......
什么是计算机中的高速公路-总线?
作者:小牛呼噜噜 | https://xiaoniuhululu.com 计算机内功、JAVA底层、面试、职业成长相关资料等更多精彩文章在公众号「小牛呼噜噜」 大家好,我是呼噜噜,在之前的文章计算机的基本组成是什么样子的中,我们知道了现代计算机还是沿用了冯·诺依曼计算机架构,分别是运算器、控制器、存 ......
OnionArch 2.0 - 基于DDD的洋葱架构改进版开源
大家好,去年我发布了一篇 OnionArch - 采用DDD+CQRS+.Net 7.0实现的洋葱架构 。很多程序员都比较感兴趣,给我要源代码。这次我把OnionArch进行了升级,改进了一些特性,并放出源代码,iamxiaozhuang/OnionArch2 (github.com) 欢迎大家研究 ......
Java线程池中的execute和submit
一、概述 execute和submit都是线程池中执行任务的方法。 execute是Executor接口中的方法 public interface Executor { void execute(Runnable command); } submit是ExecuteService接口中的方法。 pu ......
基于NOSTR协议的“公有制”版本的Twitter,去中心化社交软件Damus用后感,一个极端走向另一个极端
最近,一个幽灵,Web3的幽灵,在网络游荡,它叫Damus,这玩意诠释了什么叫做病毒式营销,滑稽的是,一个Web3产品却在Web2的产品链上疯狂传销,各方大佬纷纷为其背书,到底发生了什么?Damus的葫芦里,卖的是什么药? 注册和简单实用 很少有什么产品在用户注册环节会有什么噱头,但Damus确实出 ......
关于C#中async/await的用法
一直对c#中async/await的用法模模糊糊,不太清晰,今天写了一下Demo彻底明确一下async/await的用法,以免因为对其不了解而对后期的业务产生影响(比如事务导致的锁表等等)。 1. 首先,async/await 成对出现才有意义。其意义在于可以等待异步操作完成后继续顺序执行,而不是异 ......
面试必问:说一下 Java 虚拟机的内存布局?
我们通常所说的 Java 虚拟机(JVM)的内存布局,一般是指 Java 虚拟机的运行时数据区(Runtime Data Area),也就是当字节码被类加载器加载之后的执行区域划分。当然它通常是 JVM 模块的第一个面试问题,所以,接下来我们一起来看它里面包含了哪些内容。 官方定义 《Java虚拟机 ......
一文详解如何在基于webpack5的react项目中使用svg
本文主要讨论基于webpack5+TypeScript的React项目(cra、craco底层本质都是使用webpack,所以同理)在2023年的今天是如何在项目中使用svg资源的。 首先,假定您已经完成基于webpack5+TypeScript的React项目的搭建工作(如果您不太清楚搭建的背景, ......
深度复盘-重启 etcd 引发的异常
作者信息: 唐聪、王超凡,腾讯云原生产品中心技术专家,负责腾讯云大规模 TKE 集群和 etcd 控制面稳定性、性能和成本优化工作。 王子勇,腾讯云专家级工程师, 腾讯云计算产品技术服务专家团队负责人。 概况 作为当前中国广泛使用的云视频会议产品,腾讯会议已服务超过 3 亿用户,能高并发支撑千万级用 ......
微软外服札记④——Spark中的那些坑...
Spark中的那些坑 Spark中的那些坑 前言 读取配置文件 时区陷阱 怪异的DayOfWeek substring陷阱 IP地址解析 枚举的数值 posexplode函数 为什么我的程序运行那么慢?慎用Count()和Show() 为什么我的程序运行那么慢?(2)优化、优化 其它 题外话 前言 ......
和ChatGPT聊了一会天它的学习反映能力惊呆了我
我:用java写一段玫瑰花 ChatGPT:您可以使用 Java 绘制玫瑰花。以下是一段代码: import java.awt.*; import javax.swing.*; public class Rose extends JFrame { private int n = 8; public ......
Spring异步Async和事务Transactional注解
Spring开发中我们我们常常用到@Transaction和@Async,但这2个注解加在一起很多的开发者不敢用,担心事务不生效。下面我们就仔细讲解一下这2个注解同时运用,文章用3个场景讲述它们之间的运用,相信看完本篇文章你就能灵活运用这2个注解了。 场景一:@Async + @Transactio ......
开源世界的爱恨情仇
开源系统和工具在我们生活中扮演着越来越重要的角色,作为一个软件开发人员,不可避免的会与各种开源环境打交道,今天就大体介绍一些开源世界中如雷贯耳的名词到底是什么意思,有什么关系,这些提到的产品,也是开源世界的根基。 Multics ("Multiplexed Information and Compu ......
带团队后的日常思考(十一)
一、日常问题 1)需求的讨价还价 做最大的努力,维护自己团队成员的开发利益。 产品和运营会根据他们的业务来提出需求,从他们的角度来说,这些需求无可厚非。 不过,他们提出的需求,在实现时有些改动会比较复杂。那么就需要与他们协商。 协商的目的不是砍需求,而是用一种更合适的方式实现,既能满足他们的需求,也 ......
JavaScript 中更安全的 URL 读写
前言 URL对于我们开发人员来讲,应该是非常熟悉了。在对URL进行参数拼接时,我们一般都会直接进行字符串拼接或使用模版字符串,因为这样非常方便,但是我们这样其实会在不知不觉中以不安全的方式编写 URL。 比如,我们通常会这样写: const url = `https://www.baidu.com ......
应用部署初探:微服务的3大部署模式
在之前的文章中,我们已经充分了解了应用部署的4种常见模式(金丝雀部署、蓝绿部署、滚动部署及影子部署)。随着云原生技术逐步成熟,企业追求更为灵活和可扩展的系统,微服务架构大行其道。 微服务固然有诸多优点,但也给架构及运维工程师带来了新的挑战。在单体架构中,应用的设计、部署以及扩展都是作为一个单元进行, ......