区块 实战 基础 项目

Java+Redis 通过Lua 完成库存扣减,创建消息队列,异步处理消息--实战

需要完成功能 借助redis Stream 数据结构实现消息队列,异步完成订单创建,其中涉及到了缓存(击穿,穿透,雪崩),锁(Redisson),并发处理,异步处理,Lua脚本 IDE:IDEA 2022 1、读取库存数据 【Lua】 2、判断库存 【Lua】 3、扣减库存 【Lua】 4、创建队列 ......
消息 队列 实战 库存 Redis

Kustomize 生产实战-注入监控 APM Agent

Kustomize 简介 Kubernetes 原生配置管理工具, 它自定义引入了一种无需模板的方式来定制应用程序配置,从而简化了对现成应用程序的使用。目前,在kubectl中内置了,通过 apply -k 即可使用。 Kustomize 遍历 Kubernetes 清单以添加、删除或更新配置选项, ......
实战 Kustomize Agent APM

Python实战项目-7发送验证码/短信登录/短信注册接口

腾讯云短信开发申请 API和SDK,有SDK优先用SDK SDK: 3.0版本云操作:云操作的sdk,不仅仅有发送短信,还有云功能的其他功能 2.0版本,简单,只有发送短信功能 # 安装sdk -方式一:pip install tencentcloud-sdk-python -方式二源码安装: -下 ......
短信 实战 接口 项目 Python

Python实战项目-10文件存储/支付宝支付/支付成功回调接口

文件存储 视频文件存储在某个位置,如果放在自己服务器上 放在项目的media文件夹 服务器上线后,用户既要访问接口,又需要看视频,都是使用一个域名和端口 分开:问价你单独放在文件服务器上,文件服务器带宽比较高 # 文件服务器:专门存储文件的服务器 -第三方: -阿里云:对象存储 oss -腾讯对象存 ......
实战 接口 文件 项目 Python

Python实战项目6-后端多方式登录接口/手机登录接口

为开源项目共享代码 步骤: 1先fork开源项目 2clone下来,修改代码,进行提交 3提交pr,等作者同意 Pycharm 使用Git 右键文件会列出Git命令 登录注册功能分析 多方式登录接口:用户名/手机号/邮箱 + 密码都可以登陆 发送手机验证码接口 (借助于第三方短信平台) 短信登录接口 ......
多方式 接口 实战 项目 Python

个人数据保全计划:(2) NAS基础知识

前言 距离去年国庆入手了NAS至今有好几个月时间了,NAS折腾起来有点麻烦,且实际作用因人而异,并没有想象中的好用,所以说好的这个系列一直没有更新~ 还有另一方面的原因,这些NAS的系统基于Linux深度定制,对于我这种习惯用Linux的人来说,用着很别扭不自在,处处受限制… 所以在使用了这台威联通 ......
基础知识 基础 知识 数据 个人

Python实战项目5-Git远程仓库/分支合并/冲突解决

Git分支 为什么要有分支 可以保证主分支的版本都是可以查看的版本 我们都在开发分支开发,开发完成 合并代码 分支操作 分支查看 git branch 分支创建 git branch 分支名 分支切换git checkout 分支名 分支删除 git branch -d 分支名 分支合并 创建分支 ......
分支 仓库 实战 项目 Python

docker实战

docker实战笔记 一、安装docker 下面以ubuntu系统举例: 卸载已有的旧版本docker $ sudo apt-get remove docker \ docker-engine \ docker.io 使用apt安装最新版docker $ sudo apt-get update $ ......
实战 docker

vim入门实战

一入编程深似海,从此节操是路人。 前段时间由于业务场景需求,不得不近一步学习 vim 使用方法,提高工作效率,就总结了一些常用快捷键使用方法。满足一般需求,掌握基本增、删、改、查就可以了,近一步学习可以了解多屏操作和宏的使用以及自定义插件功能。 Linux发行版服务器基本上是已经配置好 vi 或者 ......
实战 vim

podman 入门实战

一入编程深似海,从此节操是路人。 最近使用podman,就想着写一篇总结性的笔记,以备后续参考。就如同写代码,不写注释,过了一段时间可能会想这是我写的吗?不会吧,还要理一下逻辑才能读懂,不利于后期维护。 感觉整体体验下来,镜像获取、容器创建、容器监控、容器移除,和docker差不多,感觉可以作为替代 ......
实战 podman

从源码MessageSource的三个实现出发实战spring·i18n国际化

从源码去看MessageSource的几个实现类的源码出发,基于spring的国际化支持,实现国际化的开箱即用,静态文件配置刷新生效以及全局异常国际化处理。 ......
MessageSource 实战 源码 三个 spring

Blazor项目在VisualStudio调试时配置运行基础目录

最近在使用 Blazor 开发管理后台时遇到了如下的问题,我这里后台整体采用了 AntDesignBlazor 组件库,在上线之后发现ReuseTabs组件在使用过程中,如果默认 / 没有指定为项目的base href,打开标签页后,相互切换会导致url错误。 本地开发的时候项目是直接启动运行的,所 ......
VisualStudio 基础 目录 项目 Blazor

电子钢琴项目--嵌入式开发

电子钢琴项目 复盘一下之前做的一个小项目,温习一下c语言和Linux的知识,唔,就是这样子。 一、环境搭建 所用软件以及工具如下: 1、VMware-workstation-full搭配Ubuntu18.04的Linux操作系统,VMware是桌面虚拟计算机软件,提供用户可在单一的桌面上同时运行不同 ......
嵌入式 钢琴 项目 电子

SpringMVC基础源码分析(一)

实现Controller的三种方式分析 每种实现的方式对应的HanderAdapter都不同。 实现Controller接口 该接口对应的HanderAdapter为SimpleControllerHandlerAdapter。 使用案列: public class LeController imp ......
SpringMVC 源码 基础

IDEA: 如何导入项目模块 以及 将 Java程序打包 JAR 详细步骤

IDEA: 如何导入项目模块 以及 将 Java程序打包 JAR 详细步骤 、 @ IDEA 导入项目模块 Module 一. 创建一个空项目 想要导入模块 Module ,我们需要先创建一个项目,因为 Module模块在 IDEA 中是存在于项目下的。 这里我们先创建一个空项目,当然已经有项目了, ......
模块 步骤 程序 项目 IDEA

Python Socket 基础多用户编程

简介 写下这篇小记的原因是想记录一下自己学习Python Socket编程的心路历程。之前在中专的时间学过一些基础的Socket编程,知道了一些比较基础的内容比如基础的socket.bind()类似简单方法的使用。编写了较为基础的应用程序,例如DNS的客户端(能够发出正确请求,但是解析数据没有成功) ......
基础 用户 Python Socket

明解STM32—GPIO理论基础知识篇之八种工作模式

一、引言 在之前围绕STM32的GPIO的基本结构进行了介绍,图1为STM32的5V容忍的GPIO口内部基本结构图,图2为GPIO的基本结构中各个模块部分的概述。 阅读GPIO基本结构的内容能够对GPIO的工作模式有更深的了解。正是由于GPIO的结构中包含了多样性的电路和模块,因此进行合理的配置组合 ......
基础知识 理论 模式 基础 知识

MySQL查看数据库性能常用命令和实战教学

MySQL查看数据库性能常用命令 # 列出MySQL服务器运行各种状态值 show global status; # 查询MySQL服务器配置信息语句 show variables; # 慢查询 show variables like '%slow%'; # MySQL服务器最大连接数 show v ......
实战 命令 性能 常用 数据库

使用Git进行版本控制,不同的项目怎么设置不同的提交用户名和邮箱呢?

1.全局设置用户名和邮箱 因为平时除了开发公司项目还会写自己的项目或者去维护开源项目,一般情况下,公司会要求提交代码时使用自己的真名或者拼音和公司邮箱,以前就只会设置全局用户名或邮箱如下 git config --global user.name "username" git config --gl ......
用户名 邮箱 版本 项目 用户

拥抱下一代前端工具链-Vue老项目迁移Vite探索

随着项目的不断维护,代码越来越多,项目越来越大,决定将老项目迁移至vite。本文介绍了Vue老项目像Vite迁移的过程、遇到的问题以及经验总结。 ......
前端 下一代 工具 项目 Vite

配运基础数据缓存瘦身实践

在基础数据的常规能力当中,数据的存取是最基础也是最重要的能力,为了整体提高数据的读取能力,缓存技术在基础数据的场景中得到了广泛的使用,下面会重点展示一下配运组近期针对数据缓存做的瘦身实践。 ......
缓存 基础 数据

【MRTK】HoloLens 项目部署的几种方法

前言 如果在项目部署过程中遇到报错 Unity.IL2CPP.Building.BuilderFailedException: Lump_libil2cpp_vm.cpp,可以查看我之前的文章 【MRTK】解决 Unity.IL2CPP.Building.BuilderFailedException ......
HoloLens 方法 项目 MRTK

【LeetCode二叉树#17】在二叉搜索树中插入或删除某个值(涉及重构二叉树、链表基础、以及内存泄漏问题)

二叉搜索树中的插入操作 力扣题目链接(opens new window) 给定二叉搜索树(BST)的根节点和要插入树中的值,将值插入二叉搜索树。 返回插入后二叉搜索树的根节点。 输入数据保证,新值和原始二叉搜索树中的任意节点值都不同。 注意,可能存在多种有效的插入方式,只要树在插入后仍保持为二叉搜索 ......
LeetCode 内存 基础 问题 17

.Net Core后端架构实战【1-项目分层框架设计】

摘要:基于.NET Core 7.0WebApi后端架构实战【1-项目结构分层设计】 2023/02/05, ASP.NET Core 7.0, VS2022 引言 从实习到现在回想自己已经入行四年了,很庆幸自己一直还是从事着开发的工作。这几年不管是工作还是生活都有很多不甘与失落还有收获,从学校出来 ......
架构 实战 框架 项目 Core

Vue3 企业级优雅实战 - 组件库框架 - 12 发布开源组件库

前面使用了 11 篇文章分享基于 vue3 、Monorepo 的组件库工程完整四件套(组件库、文档、example、cli)的开发、构建及组件库的发布。本文属于这 11 篇文章的扩展 —— 如何发布到 GitHub 上以及如何快速利用 GitHub 发布组件库文档。这样优雅哥的《组件库框架》系列便 ......
组件 实战 框架 企业 Vue3

gitlabApi如何获取项目文件夹的commitId

在我们做配置管理系统和gitlab系统集成的时候,有一个常见的场景,就是要获取某个文件的commitId,来记录本次配置文件提交的版本。这个通过gitlabApi很容易实现: GET /projects/:id/repository/files/:file_path?ref=:ref 其中: id: ......
文件夹 gitlabApi commitId 文件 项目

NuGet私有服务器ProGet Docker搭建和公司中实战用法

一、什么时候需要用到NuGet私有服务器 很多公司中架构师会搭建一个统一的项目基础架构模板,然后全部新项目都会拿这个基础架构来开发新的项目,那架构中就会有很多的中间件,比喻公司内部的封装好的Redis中间件,访问数据库的中间件,MQ中间件,小程序中间件等等。 现在很多项目都用这个模板开发了,然后其中 ......
实战 服务器 Docker ProGet NuGet

视觉SLAM基础-李群和李代数

李群和李代数 引言 ​ 为什么会有李群和李代数的引出。在通常的 SLAM 中,我们估计的无非就是在极短的时间内物体的一个相对位姿运动,然后进行累加,即可得到物体的当前位置,即 SLAM 中的定位问题,但是往往该运动在较短的时间内其变化量是极小的。 ​ 通常其运动变化我们可以使用旋转加平移进行表示,即 ......
代数 视觉 基础 SLAM

基于图的路径搜索技术基础知识

基于图搜索的路径规划方法基础概念,介绍了配置空间,工作空间等相关概念,引出了深度优先搜索和广度优先搜索并进行了对比。 ......
基础知识 路径 基础 知识 技术

高效、优雅的对象copy之MapStruct入门到精通,实战踩坑版

一、前言 大家在开发中,最让人头疼的就是:对象之间的拷贝,前端的VO和数据库的Entity不一致! 性能最好的就是手动set,主要是枯燥且无技术含量,不仅耗费大量时间而且很容易出错; 所以我们要成为优秀的程序员,要多借助轮子,开发效率事半功倍,开发技能也是增长不少! 如果系统性能没有要求,怎么实现都 ......
实战 MapStruct 对象 copy