杂记 函数 原理

Dubbo 中 Zookeeper 注册中心原理分析

本文通过分析Dubbo中ZooKeeper注册中心的实现ZooKeeperResitry的继承体系结构,详细介绍了Dubbo中ZooKeeper注册中心的实现原理。 ......
Zookeeper 原理 Dubbo

Android IO 框架 Okio 的实现原理,如何检测超时?

本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 提问。 前言 大家好,我是小彭。 在上一篇文章里,我们聊到了 Square 开源的 I/O 框架 Okio 的三个优势:精简且全面的 API、基于共享的缓冲区设计以及超时机制。前两个优势已经分析过了,今天我们来分析 ......
框架 原理 Android Okio IO

Android IO 框架 Okio 的实现原理,到底哪里 OK?

本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 提问。 前言 大家好,我是小彭。 今天,我们来讨论一个 Square 开源的 I/O 框架 Okio,我们最开始接触到 Okio 框架还是源于 Square 家的 OkHttp 网络框架。那么,OkHttp 为什么要 ......
框架 原理 Android Okio IO

《Terraform 101 从入门到实践》 Functions函数

《Terraform 101 从入门到实践》这本小册在南瓜慢说官方网站和GitHub两个地方同步更新,书中的示例代码也是放在GitHub上,方便大家参考查看。 Terraform的函数 Terraform为了让大家在表达式上可以更加灵活方便地进行计算,提供了大量的内置函数(Function)。目前并 ......
函数 Terraform Functions 101

数据结构-详解优先队列的二叉堆(最大堆)原理、实现和应用-C和Python

一、堆的基础 1.1 优先队列和堆 优先队列(Priority Queue):特殊的“队列”,取出元素顺序是按元素优先权(关键字)大小,而非元素进入队列的先后顺序。 若采用数组或链表直接实现优先队列,代价高。依靠数组,基于完全二叉树结构实现优先队列,即堆效率更高。一般来说堆代指二叉堆。 优先队列的完 ......
数据结构 队列 大堆 原理 结构

Nacos服务注册原理分析

在分布式服务中,原来的单体服务会被拆分成一个个微服务,服务注册实例到注册中心,服务消费者通过注册中心获取实例列表,直接请求调用服务。 服务是如何注册到注册中心,服务如果挂了,服务是如何检测?带着这些问题,我们从源码上对服务注册进行简单的源码分析。 版本 2.1.1 Nacos Server:2.1. ......
原理 Nacos

基于遗传算法的地图四色原理绘图上色的Python代码

本文介绍利用Python语言,实现基于遗传算法(GA)的地图四色原理着色操作。 1 任务需求 首先,我们来明确一下本文所需实现的需求。 现有一个由多个小图斑组成的矢量图层,如下图所示。 我们需要找到一种由4种颜色组成的配色方案,对该矢量图层各图斑进行着色,使得各相邻小图斑间的颜色不一致,如下图所示。 ......
算法 原理 代码 地图 Python

Pulsar负载均衡原理及优化

前言 前段时间我们在升级 Pulsar 版本的时候发现升级后最后一个节点始终没有流量。 虽然对业务使用没有任何影响,但负载不均会导致资源的浪费。 和同事沟通后得知之前的升级也会出现这样的情况,最终还是人工调用 Pulsar 的 admin API 完成的负载均衡。 这个问题我尝试在 Google 和 ......
原理 Pulsar

SpringBoot学习笔记 - 构建、简化原理、快速启动、配置文件与多环境配置、技术整合案例

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

云端智创 | 基于视频AI原理的音视频智能处理技术

本文内容整理自「智能媒体生产」系列课程第二讲:视频AI与智能生产制作,由阿里云智能视频云高级技术专家分享视频AI原理,AI辅助媒体生产,音视频智能化能力和底层原理,以及如何利用阿里云现有资源使用音视频AI能力。课程回放见文末。 01 算法演进:视频AI原理 在媒体生产的全生命周期中,AI算法辅助提升 ......
云端 原理 智能 技术 视频

搞懂设计模式——代理模式 + 原理分析

举个栗子,众所周知,我们是可以在京东上购买机票的。 但机票是航司提供的,我们本质上是代理销售而已。 那为什么航司要让我们代理销售呢? 我们又是如帮他做代理的呢? 别急,本文将展开说说他们之间的关系。。。 ......
模式 设计模式 原理

OpenMP 线程同步 Construct 实现原理以及源码分析(下)

在上面文章当中我们主要分析了 flush, critical, master 这三个 construct 的实现原理。在本篇文章当中我们将主要分析另外两个 construct : barrier 和 single 。 ......
线程 Construct 源码 原理 OpenMP

OpenMP For Construct dynamic 调度方式实现原理和源码分析

在本篇文章当中主要给大家介绍 OpenMp for construct 的实现原理,以及与他相关的动态库函数分析,与 for construct 非常相关的是循环的调度方式,在 OpenMP 当中一共有四种调调方式,auto, dynamic, guided, runtime, 在本篇文章当中主要是... ......
Construct 源码 原理 dynamic 方式

R数据分析:孟德尔随机化中介的原理和实操

中介本身就是回归,基本上我看到的很多的调查性研究中在中介分析的方法部分都不会去提混杂,都是默认一个三角形画好,中介关系就算过去了,这里面默认的逻辑就是前两步回归中的混杂是一样的,计算中介效应的时候就自动消掉了。 但是,实际上对不对,还是有待具体分析的: Traditional, non-instru ......
数据分析 原理 中介 数据

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

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

JDK8 四大核心函数式接口及扩展接口总结

前言 Java8的四大函数式接口及相关的扩展接口在日常使用中的频率也是非常多的,包括自己定义的函数式接口,在JDK1.8之前,我们定义的方法都是用来接收参数,然后自己根据参数传递实现逻辑。在1.8之后,可以通过参数传递一段行为代码,将公共的行为代码封装成一个函数式接口传递,可以减少很多代码量,在St ......
接口 函数 核心 JDK8 JDK

【C++ 泛型编程01:模板】函数模板与类模板

【模板】 除了OOP外,C++另一种编程思想称为 泛型编程 ,主要利用的技术就是模板 C++提供两种模板机制:函数模板和类模板 函数模板 函数模板作用 建立一个通用函数,其函数返回值类型和形参类型可以不具体制定,用一个虚拟的类型来代表。 语法 template<typename T> 函数声明或定义 ......
模板 函数

一文读懂Go Http Server原理

hello大家好呀,我是小楼,这是系列文《Go底层原理剖析》的第二篇,依旧是分析 Http 模块,话不多说,开始。 从一个 Demo 入手 俗话说万事开头难,但用 Go 实现一个 Http Server 真不难,简单到什么程度?起一个 Server,并且能响应请求,算上包名、导入的依赖,甚至空行,也 ......
原理 Server Http

不懂编译原理?本文教你从零实现最简编译模型!

简介 前两日我偶然间在 GitHub 上发现了一个项目:the-super-tiny-compiler,官方介绍说这可能是一个最简的编译器。刚好之前学过「编译原理」这门课,我的兴趣一下子就上来了,简单看了一下,这个项目是将一个 Lisp 表达式转化为 C 的表达式的编译器,中间涉及词法分析、语法分析 ......
模型 原理

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

集算表 (Table Sheet)是一个具备高性能渲染、数据绑定功能、公式计算能力的数据表格,通过全新构建的关系型数据管理器结合结构化公式,在高性能表格的基础上提供排序、筛选、样式、行列冻结、自动更新、单元格更新等功能。 什么是集算表(Table Sheet)? 集算表是一个具有网络状行为和电子表格 ......
前端 高性能 表格 原理 数据

只需两步便可生成 51 单片机最精准的延时函数

前言 我们在学习 51 单片机的过程中会用到延时,比如一个简单的流水灯就需要延时来控制依次点亮的时间,或者一些模块在单片机发出读数据指令后,需要延时几十微秒才可以读出数据等等,这些都离不开延时,所以我们需要一个精准的延时函数来满足我们的需求。 本篇介绍一个最简单并且延时最精准的 51 单片机延时函数 ......
单片机 函数 只需 51

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

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

精华推荐 | 【JVM深层系列】「GC底层调优系列」一文带你彻底加强夯实底层原理之GC垃圾回收技术的分析指南(GC原理透析)

前提介绍 很多小伙伴,都跟我反馈,说自己总是对JVM这一块的学习和认识不够扎实也不够成熟,因为JVM的一些特性以及运作机制总是混淆以及不确定,导致面试和工作实战中出现了很多的纰漏和短板,解决广大小伙伴痛点,我写了本篇文章,希望可以帮助大家夯实基础和锻造JVM技术功底。 什么是垃圾收集(GC) 在JV ......
底层 原理 深层 垃圾 精华

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

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

【深入浅出Seata原理及实战】「入门基础专题」探索Seata服务的AT模式下的分布式开发实战指南(2)

承接上文 上一篇文章说到了Seata 为用户提供了 AT、TCC、SAGA 和 XA 事务模式,为用户打造一站式的分布式解决方案。那么接下来我们将要针对于AT模式下进行分布式事务开发的原理进行介绍以及实战。 Seata AT模式 在AT、TCC、SAGA 和 XA 这四种事务模式中使用最多,最方便的 ......
实战 Seata 深入浅出 分布式 原理

【Dubbo3终极特性】「云原生三中心架构」带你探索Dubbo3体系下的配置中心和元数据中心、注册中心的原理及开发实战(上)

Dubb3的应用级服务发现 Dubbo3提供了全新的应用级服务发现模型,该模型在设计与实现上区别于 Dubbo2 的接口级服务发现模型。 概括来说,Dubbo3 引入的应用级服务发现主要有以下优势 适配云原生微服务变革。云原生时代的基础设施能力不断向上释放,像 Kubernetes 等平台都集成了微 ......
Dubbo3 Dubbo 数据中心 架构 实战

【Dubbo3 终极特性】「云原生三中心架构」带你探索 Dubbo3 体系下的配置中心和元数据中心、注册中心的原理及开发实战(中)

承接上文 通过之前的【Dubbo3终极特性】「云原生三中心架构」带你探索 Dubbo3 体系下的配置中心和元数据中心、注册中心的原理及开发实战(上),让我们对Dubbo3的三中心架构体系有了一定的认识和了解。 Dubbo3的三中心部署架构 回顾一下部署架构(注册中心、配置中心、元数据中心),了解Du ......
Dubbo3 Dubbo 数据中心 架构 实战

浅谈生成函数

生成函数相关 首先对于函数$F(x)$,在$x_0$处泰勒展开,$F(x)=\sum\limits_{n=0}^{+\infin}\dfrac{F^{n}(x_0)}{n!}(x-x_0)^n$,这个$x$的取值是有一定范围的,当然我们也不关心 若在$x_0=0$处展开,即麦克劳林级数 $$ (1- ......
函数

【分布式技术专题】「LVS负载均衡」全面透析Web基础架构负载均衡LVS机制的原理分析指南

前提概要 在大规模互联网应用中,负载均衡设备是必不可少的组成部分,源于互联网应用的高并 发和大流量的冲击压力场景下,通常会在服务端部署多个无状态的应用服务器和若干有状态的存储服务器(数据库、缓存等等)实现高可用特点和机制。 LVS的介绍说明 官方站点:http://www.linuxvirtuals ......
分布式 架构 LVS 原理 机制

tornado原理介绍及异步非阻塞实现方式

tornado原理介绍及异步非阻塞实现方式 以下内容根据自己实操和理解进行的整理,欢迎交流~ 在tornado的开发中,我们一般会见到以下四个组成部分。 ioloop: 同一个ioloop实例运行在一个单线程环境下。 tornado.ioloop.IOLoop.current().start() a ......
原理 tornado 方式