结构 流程图 流程 程序

Fabric2.x中Raft共识算法核心数据结构

一、共识算法可插拔的代码体现Chain接口 Hyperledger Fabric的共识算法是可插拔的,在代码上体现为Chain接口,所有不同的共识算法均可根据Chain接口进行具体实现,目前fabric支持solo、kafka、raft、sbft等共识算法。Chain接口的代码在fabric/ord ......
数据结构 共识 算法 核心 Fabric2

NAPT网络结构下TCP/UDP/ICMP访问外网原理思考

背景 作为程序员,应该都听说过NAT(Network Address Transfer,网络地址转换)这一技术名词,并或多或少大概知道其原理与作用--NAT是用于解决IPv4地址不够用,保证我们能够在IPv6普及前依然可以正常使用互联网而广泛使用的一个技术,其原理正如其名称所示:其可以将私网IP通过 ......
原理 结构 网络 NAPT ICMP

Linux环境下:程序的链接, 装载和库[静态链接]

看以下例子 main.c extern int x; int main() { int y = 100; swap(&x,&y); return 0; } int x = 1; void swap(int* x, int* y) { int temp = *x; *x = *y; *y = temp ......
链接 静态 环境 程序 Linux

Flutter框架渲染流程与使用

Flutter简述 Flutter是一个UI框架, 可以进行移动端(iOS, Android),Web端, 桌面端开发,它是一个跨平台解决方案。 Flutter的特点:美观,快速,高效,开放。 美观:Flutter内置了美丽的Material Design和 Cupertino widget, 方便 ......
框架 流程 Flutter

uniapp小程序使用高德地图api实现路线规划

路线规划 简介 路线规划常用于出行路线的提前预览,我们提供4种类型的路线规划,分别为:驾车、步行、公交和骑行,满足各种的出行场景。 高德开放平台 本例是驾车路线规划功能和位置选择地图api:chooseLocation 示例: 1、在页面的 js 文件中,实例化 AMapWX 对象,请求进行驾车路线 ......
路线 地图 程序 uniapp api

(Java)设计模式:结构型

前言 这篇博文续接的是 UML建模、设计原则、创建型设计模式、行为型设计模式,有兴趣的可以看一下 3.3、结构型 这些设计模式关注类和对象的组合。将类和对象组合在一起,从而形成更大的结构 * 3.3.1、proxy 代理模式 定义:为某对象提供一种代理以控制对该对象的访问。即:客户端通过代理间接地访 ......
结构型 设计模式 模式 结构 Java

一个想活得简单的程序猿的2022年终总结!

前言 今年的总结相比以往来说,可写的太少了,但看到我17年开始写的年终总结,已定下每年写下的承诺,因此即便可写的不多,但是还是写下吧,毕竟又过了一年,总有东西会留下! 今年事件 疫情 这是今年绕不过去的一个事情,经历了各种核酸检测,各种封控,最终突然而来的全面放开进行的全民免疫。这一块也避免不了感染 ......
程序 2022

Java程序员用代码,计算最大公约数和最小公倍数

作者:小傅哥 博客:https://bugstack.cn 源码:https://github.com/fuzhengwei/java-algorithms 沉淀、分享、成长,让自己和他人都能有所收获!😄 一、前言 嘿,小傅哥怎么突然讲到最大公约数了? 这么想你肯定是没有好好阅读前面章节中小傅哥讲 ......

回顾2022,展望2023,一个普通98年程序员的自述和分享

一、前言 第一次记录自己的年度总结,一直想写,不知从何写起;其实也是自己这两年来了解到的东西,分享给大家,虽然是个井底之蛙,但是也要勇于说出自己的看法,欢迎大佬指导哈。可能自己语言功底太差,这也是小编一直写博客的动力,锻炼自己的写作能力! 本次主要来说一下小编对于Java后端开发人员的一些见解哈! ......
程序员 程序 2022 2023

腾讯出品小程序自动化测试框架【Minium】系列(一)环境搭建之第一个测试程序

一、什么是Minium? minium是为小程序专门开发的自动化框架,使用minium可以进行小程序UI自动化测试。 当然,它的能力不仅仅局限于UI自动化, 比如: 使用minium来进行函数的mock 可以直接跳转到小程序某个页面 设置页面数据, 做针对性的全面测试 这些能力是其他的一些工具所不具 ......
程序 框架 环境 Minium

C#开发的插件程序 - 开源研究系列文章

上次编写了一个家庭小助手的小工具软件,也对其中的线程池及管理器进行了介绍(见博文:C#开发的线程池和管理器 - 开源研究系列文章),这次把里面的插件部分的功能单独放出来进行介绍,让更多的朋友能够进行学习借鉴及代码复用上。 一、 项目目录; 下面对项目目录进行介绍,其中PlugIns是主程序,Lzhd ......
插件 程序 文章

C#开发的资源文件程序(可国际化) - 开源研究系列文章

上次将小软件的线程池描述了,也将插件程序描述了,这次就将里面的资源文件相关的内容进行下记录,这里能够让程序做成国际化的形式(即多语言程序),主要就是通过这个资源文件的方式进行的处理。下面将对这个资源文件的定义进行描述,比网上的其它例子更能够具有代码复用意义。 一、 项目目录; 下图是项目目录,上面是 ......
文件 程序 国际 资源 文章

腾讯出品小程序自动化测试框架【Minium】系列(三)元素定位详解

写在前面 昨天转发这篇文章时,看到群里有朋友这样说: 这么卷吗?这个框架官方已经不维护了。 姑且不说卷不卷的问题,要是能卷明白,别说还真不错; 不维护又怎样?我想学习,想会,分享给很期待这系列的文章的人罢了。 元素定位 元素定位,应该是很多UI自动化测试入门学习必会的技能了,下面我将为大家举例演示元 ......
框架 元素 程序 Minium

腾讯出品小程序自动化测试框架【Minium】系列(四)API详解(上)

写在前面 不知道是不是因为之前出过书的原因,在写教程之类的文章,会潜意识有自带目录和章节的感觉在里面,有点说不出的感觉吧。 上篇文章我们介绍了关于元素定位的使用方法,这篇文章将为大家分享关于Minium中Minium、App模块的API 使用。 常用API使用详解 get_system_info() ......
框架 程序 Minium API

腾讯出品小程序自动化测试框架【Minium】系列(二)项目配置及测试套件使用说明

一、写在前面 真的人这一散漫惯了,收心就很难了,上午把小程序开发环境启动后,在QQ游戏里,杀了三把象棋,5把2D桌球,一上午没了,还是没法心静下来去学点东西。 那就老样子,逼着自己开始,找到 “肌肉记忆” 自然也就可以静下心去思考问题了。 二、搞定配置项 1、配置文件部分 示例如下: { "proj ......
套件 使用说明 框架 程序 项目

【深入浅出Spring原理及实战】「源码调试分析」结合DataSourceRegister深入分析ImportBeanDefinitionRegistrar的源码运作流程

每日一句 人的一生中不可能会一帆风顺,总会遇到一些挫折,当你对生活失去了信心的时候,仔细的看一看、好好回想一下你所遇到的最美好的事情吧,那会让你感觉到生活的美好。 注入案例代码 如何通过实现SpringBoot框架带有的ImportBeanDefinitionRegistrar注册器,注入我们想要注 ......

【深入浅出Seata原理及实战】「入门基础专题」带你透析认识Seata分布式事务服务的原理和流程(1)

分布式事务的背景 随着业务的不断发展,单体架构已经无法满足我们的需求,分布式微服务架构逐渐成为大型互联网平台的首选,但所有使用分布式微服务架构的应用都必须面临一个十分棘手的问题,那就是“分布式事务”问题。 在分布式微服务架构中,几乎所有业务操作都需要多个服务协作才能完成。对于其中的某个服务而言,它的 ......
原理 Seata 深入浅出 分布式 实战

MySql树形结构(多级菜单)查询设计方案

背景 又很久没更新了,很幸运地新冠引发了严重的上呼吸道感染,大家羊过后注意休息和防护 工作中(尤其是传统项目中)经常遇到这种需要,就是树形结构的查询(多级查询),常见的场景有:组织架构(用户部门)查询 和 多级菜单查询 比如,菜单分为三级,一级菜单、二级菜单、三级菜单,要求用户按树形结构把各级菜单查 ......
树形 菜单 结构 方案 MySql

微信小程序转发onShareAppMessage设置path参数后在onload获取不到值的原因和解决方法

官方实例:https://developers.weixin.qq.com/miniprogram/dev/reference/api/Page.html#onShareAppMessage-Object-object 官方实例代码如下: Page({ onShareAppMessage() { c ......

Cert Manager 申请 SSL 证书流程及相关概念 - 一

2022.3.9 用 cert-manager 申请成功通配符证书 (*.ewhisper.cn), 2022.4.30 该证书距离过期还有 30 天,cert-manager 进行自动续期,但是却失败了。😱😱😱 然后过了几天,在 2022.5.8, 最终成功了。如下图: 正好借着这个情况捋一 ......
证书 流程 概念 Manager Cert

Cert Manager 申请SSL证书流程及相关概念-三

中英文对照表 | 英文 | 英文 - K8S CRD | 中文 | 备注 | | | | | | | certificates | Certificate | 证书 | certificates.cert-manager.io/v1 | | certificate issuers | Issuer ......
证书 流程 概念 Manager Cert

SpringBoot源码学习3——SpringBoot启动流程

系列文章目录和关于我 一丶前言 在 《SpringBoot源码学习1——SpringBoot自动装配源码解析+Spring如何处理配置类的》中我们学习了SpringBoot自动装配如何实现的,在 《Spring源码学习笔记12——总结篇IOC,Bean的生命周期,三大扩展点》我们总结了Spring ......
SpringBoot 源码 流程

SpringMVC学习笔记 - 第一章 - 工作流程、Bean加载控制、请求与响应(参数接收与内容返回)、RESTful

【前置内容】Spring 学习笔记全系列传送门: Spring学习笔记 - 第一章 - IoC(控制反转)、IoC容器、Bean的实例化与生命周期、DI(依赖注入) Spring学习笔记 - 第二章 - 注解开发、配置管理第三方Bean、注解管理第三方Bean、Spring 整合 MyBatis 和 ......
工作流程 SpringMVC 流程 参数 RESTful

《一个程序猿的生命周期》-《发展篇》- 43.从技术向市场转型的感悟。注:对2022年的总结。

转型就是改变,可能向好的方向转、可能向坏的方向转。现在的社会发展节奏快,三年不做调整、不做改变,极有可能面临淘汰的危机。总之,在改变中寻找机会比在等待中迎接危机要好的多。 ......
周期 生命 程序 市场 技术

每个Java程序员都必须知道的四种负载均衡算法

前言 一般来说,我们在设计系统的时候,为了系统的高扩展性,会尽可能的创建无状态的系统,这样我们就可以采用集群的方式部署,最终很方便的根据需要动态增减服务器数量。但是,要使系统具有更好的可扩展性,除了无状态设计之外,还要考虑采用什么负载均衡算法,本文就带领大家认识以下常见的4种负载均衡算法。 欢迎关注 ......
程序员 算法 程序 Java

[数据结构]KMP算法(含next数组详解)

#字符串匹配问题 给定一个字符串 s 和一个要匹配的模式串 p。模式串 p 有可能在 s 中多次出现,请求出模式串 p 在 s 中所有出现的起始位置。 #暴力匹配算法 BF ##算法思路 在面对字符串匹配问题时,很容易想到暴力求解。字符串匹配的暴力算法思路很简单,即在 s 中枚举起点 i,对于每个起 ......
数据结构 数组 算法 结构 数据

前端Linux部署命令与流程记录

以前写过一篇在Linux上从零开始部署前后端分离的Vue+Spring boot项目,但那时候是部署自己的个人项目,磕磕绊绊地把问题解决了,后来在公司有了几次应用到实际生产环境的经验,发现还有很多可以补充的地方,很多指令和下载地址每次用到的时候再找就相对麻烦,通过这篇文章可以做一个记录。 另外,之前 ......
前端 命令 流程 Linux

跳跃表数据结构与算法分析

目前市面上充斥着大量关于跳跃表结构与Redis的源码解析,但是经过长期观察后发现大都只是在停留在代码的表面,而没有系统性地介绍跳跃表的由来以及各种常量的由来。作为一种概率数据结构,理解各种常量的由来可以更好地进行变化并应用到高性能功能开发中。本文没有重复地以对现有优秀实现进行代码分析,而是通过对跳跃... ......
数据结构 算法 结构 数据

TiDB 底层存储结构 LSM 树原理介绍

随着数据量的增大,传统关系型数据库越来越不能满足对于海量数据存储的需求。对于分布式关系型数据库,我们了解其底层存储结构是非常重要的。本文将介绍下分布式关系型数据库 TiDB 所采用的底层存储结构 LSM 树的原理。 ......
底层 原理 结构 TiDB LSM

【C++ 数据结构:链表】二刷LeetCode707设计链表

【C++链表】 使用c++重新写一遍LeetCode707设计链表 目的是熟悉c++中链表的操作 知识点 C++链表节点的实现 在c++中,一般通过结构体来定义链表的节点,也需要写构造函数(使用初始化列表) 如: struct ListNode{ int val; ListNode* next; / ......
数据结构 LeetCode 结构 数据 707