2021 10-18

Python字典和集合

1.什么是字典 Python内置的数据结构之一,与列表一样是一个可变序列 以键值对的方式存储数据,字典是一个无序的序列 在存储数据时要经过hash(key)的计算,计算的结果就是存储的位置,因此字典的键值对顺序并不是按照存储时的先后顺序决定的,而是经过计算得到的存储位置。 字典中的键必须时不可变序列,否则当键改变时,hash计算的结果就会发生变化,导致存储位置发生变化。因此键必须要使用不可变序列 字典的实现原理 与查新华字典类似,差字典是先根据部首或者拼音查找相应的页码,Pytho

2021 10-18

容器化之路Docker网络核心知识小结,理清楚了吗?

  Docker网络是容器化中最难理解的一点也是整个容器化中最容易出问题又难以排查的地方,加上使用Kubernets后大部分人即使是专业运维如果没有扎实的网络知识也很难定位容器网络问题,因此这里就容器网络单独拿出来理一理。   先了解一下Docker的一点基础架构知识,Docker技术架构图:     Docker是不能直接在Windows平台上运行的,只支持linux系统,因为Docker依赖linuxkernel三项最基本的技术。 Namespaces充当隔离的第一级,是对D

2021 10-18

重学c#系列——字典(十一)

前言 重学c#系列继续更新,简单看一下字典的源码。 看源码主要是解释一下江湖中的两个传言: 字典foreach顺序是字典添加的顺序 字典删除元素后,字典顺序将会改变 正文 那么就从实例化开始看起,这里我们假定key是string情况下开始看。 一般我们之间实例化: Dictionary<string,string>keys=newDictionary<string,string>(); 那么看下内部的实例化是怎么样的。 publicDictionary():this

2021 10-17

流量治理神器-Sentinel的限流模式,选单机还是集群?

大家好,架构摆渡人。这是我的第5篇原创文章,还请多多支持。 上篇文章给大家推荐了一些限流的框架,如果说硬要我推荐一款,我会推荐Sentinel,Sentinel的限流模式分为两种,分别是单机模式和集群模式。今天我们就来学习下这两种模式的区别和使用场景。 单机流控 单机流控就是流控的效果只针对服务的一个实例,比如你的服务部署了三个实例分别在三台机器上。请求访问到了A实例的时候,如果触发了流控,那么只会限制A实例后面的请求,不会影响其他实例上的请求。 比如你单身的时候,每月的工资都花个精光。影响的

2021 10-17

Go语言核心36讲(Go语言基础知识六)--学习笔记

06|程序实体的那些事儿(下) 在上一篇文章,我们一直都在围绕着可重名变量,也就是不同代码块中的重名变量,进行了讨论。还记得吗? 最后我强调,如果可重名变量的类型不同,那么就需要引起我们的特别关注了,它们之间可能会存在“屏蔽”的现象。 必要时,我们需要严格地检查它们的类型,但是怎样检查呢?咱们现在就说。 我今天的问题是:怎样判断一个变量的类型? 我们依然以在上一篇文章中展示过的demo11.go为基础。 packagemain import"fmt" varcontainer=[]strin

2021 10-17

写操作系统之实现进程

目录 C语言和汇编语言混合编程 方法 例程 代码 代码讲解 导入导出 系统调用 编译运行 切换堆栈和GDT 是什么 怎么做 代码讲解 切换GDT 修改gdtptr 切换堆栈 代码讲解 eflags 中断 是什么 实现机制--通俗版 实现机制--严谨版 实现流程 工作流程 代码 建立IDT 建立中断例程 调用中断 小结 外部中断 8259A 初始化8259A ICW和OCW的数据结构 实现单进程 进程三要素 进程体 进程表 CPU的快照

2021 10-17

2-3-4树对应红黑树的实现,红黑树的融会贯通!!!

目录 红黑树 1.2-3-4树 2.红黑树实现 2.1.概述 2.2.右旋 2.3.左旋 2.4.插入 2.5.删除 3.总代码 红黑树 要想真正的学会红黑树,不应该是无脑背判断啊条件什么的,而是应该沿着红黑树的前身2-3-4树来真正学会这种数据结构,当然我也只是认为加上2-3-4树可以对红黑树的理解。不喜勿喷(●ˇ∀ˇ●) 1.2-3-4树 2-3-4树是四阶的B树(BalanceTree),他属于一种多路查找树,2-3-4树是对完美平衡二叉树的扩展,它的结构有以下限制

2021 10-17

深度学习——手动实现残差网络ResNet 辛普森一家人物识别

深度学习——手动实现残差网络辛普森一家人物识别 目标 通过深度学习,训练模型识别辛普森一家人动画中的14个角色 最终实现92%-94%的识别准确率。 数据 ResNet介绍 论文地址https://arxiv.org/pdf/1512.03385.pdf 残差网络(ResNet)是微软亚洲研究院的何恺明、孙剑等人2015年提出的,它解决了深层网络训练困难的问题。利用这样的结构我们很容易训练出上百层甚至上千层的网络。残差网络的提出,有效地缓解了深度学习两个大问题 梯度消失:当使用深层的网络时(

2021 10-17

模板大全

这里存放本人的一些板子 不定期会更吖,主要还是人懒 1.高精度加法 #include<bits/stdc++.h> usingnamespacestd; charch[205]; inta[205],b[205],f[205]; intlena,lenb,len; intmain() { cin>>ch+1; lena=strlen(ch+1); reverse(ch+1,ch+lena+1); for(inti=1;i<=lena;i++) a[i]=ch[i]

2021 10-17

k8s学习笔记(2)- Rancher2.x部署springboot应用及高可用、扩容

前言:上一篇介绍基于k3s环境,使用kubectl部署springboot简单项目应用,本篇介绍基于rancher2.x部署应用程序 1、上篇已部署一个springboot应用,我们可以通过rancher查看工作负载状态 说明:我们没有通过rancher添加主机管理部署K8s集群,所以我们这里直接用rancher在k3s上操作 登录rancher,查看集群工作负载 点击负载名称,查看负载信息 可以看到springboot部署在了ubuntunode2节点上,ip地址192.168.231.13