<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[aninstein的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/aninstein</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; aninstein]]></copyright><item><title><![CDATA[macOS 上从源码安装 Nginx]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/136155928</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/136155928</guid><author>aninstein</author><pubDate>Sun, 18 Feb 2024 17:22:43 +0800</pubDate><description><![CDATA[在 macOS 上从源码安装 Nginx 并带上。]]></description><category></category></item><item><title><![CDATA[关于B+树的总结]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/135119379</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/135119379</guid><author>aninstein</author><pubDate>Wed, 20 Dec 2023 22:44:27 +0800</pubDate><description><![CDATA[3、设分块查找中将长为 n 的表分成均等的 b 个块,每块 s 个元素,则 b = (n / s)上取整,如果索引表中采用顺序查找,则ASL=(b+1)/2+(s+1)/2；（2）子节点数：非叶节点的子节点数>1，且<=M ，且M>=2，空树除外（注：M阶代表一个树节点最多有多少个查找路径，M=M路,当M=2则是2叉树,M=3则是3叉）；2、在n趋于无穷大时,折半查找的ASL=((n+1)log2(n+1))/n - 1,当n大于50时,ASL约等于log2(n+1)-1。则ASL成功和不成功分别是多少？]]></description><category></category></item><item><title><![CDATA[使用supervisor启动进程open files too many问题]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/131786807</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/131786807</guid><author>aninstein</author><pubDate>Tue, 18 Jul 2023 14:55:10 +0800</pubDate><description><![CDATA[supervisor启动进程修改文件句柄数量
修改系统参数：
/etc/security/limits.d/20-nproc.conf
/etc/sysctl.d/99-sysctl.conf
修改配置文件：
/usr/lib/systemd/system/supervisord.service
重启supervisord]]></description><category></category></item><item><title><![CDATA[K8S集群搭建]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/131470567</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/131470567</guid><author>aninstein</author><pubDate>Fri, 30 Jun 2023 10:11:06 +0800</pubDate><description><![CDATA[K8S集群搭建]]></description><category></category></item><item><title><![CDATA[K8S环境安装]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/131469983</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/131469983</guid><author>aninstein</author><pubDate>Fri, 30 Jun 2023 10:01:07 +0800</pubDate><description><![CDATA[K8S安装教程]]></description><category></category></item><item><title><![CDATA[k3s和k8s的区别和优缺点]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/125240907</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/125240907</guid><author>aninstein</author><pubDate>Sun, 12 Jun 2022 00:47:42 +0800</pubDate><description><![CDATA[K3s在功能上与K8s没有什么不同，但它们有一些区别，使它们显得独特。K3s能比K8s更快地部署应用程序。不仅如此，K3s可以比K8s更快地启动集群。K8s是一个通用的容器编排器，而K3s是一个专门为在裸金属服务器上运行Kubernetes而打造的容器编排器。...]]></description><category></category></item><item><title><![CDATA[【django】从1.11升级到4.0.4，同时升级python2到python3问题记录]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/125147306</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/125147306</guid><author>aninstein</author><pubDate>Mon, 06 Jun 2022 15:14:57 +0800</pubDate><description><![CDATA[【django】从1.11升级到4.0.4，同时升级python2到python3]]></description><category></category></item><item><title><![CDATA[【剑指offer】leetcode训练题1-35题]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/125028622</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/125028622</guid><author>aninstein</author><pubDate>Sun, 29 May 2022 11:25:33 +0800</pubDate><description><![CDATA[剑指offer


（一）栈和队列

python的list就是一个栈，使用append和pop

['1', '2', '3', '4']
pop 4
pop 3
['1', '2']

剑指 Offer 09. 用两个栈实现队列

代码：easy_queue_by_2_stack.py

剑指 Offer 30. 包含min函数的栈

代码：easy_min_stack.py

使用辅助栈的方式，冗余的添加min_stack的数据
（二）链表
剑指 Offer 06. 从尾到头打印链表

代码：easy]]></description><category></category></item><item><title><![CDATA[【转】源nat和目的nat的区别]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/124728366</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/124728366</guid><author>aninstein</author><pubDate>Thu, 12 May 2022 12:07:35 +0800</pubDate><description><![CDATA[配置基于源IP地址的NAT
基于源IP地址的NAT是指对发起连接的IP报文头中的源地址进行转换。它可以实现内部用户访问外部网络的目的。通过将内部主机的私有地址转换为公有地址，使一个局域网中的多台主机使用少数的合法地址访问外部资源，有效的隐藏了内部局域网的主机IP地址，起到了安全保护的作用。由于一般内网区域的安全级别比外网高，所以这种应用又称为NAT Outbound。

配置NAT No-pat

NAT No-pat是指进行不转换端口的NAT。配置No-pat参数后，设备会将转换前后的地址的所有端口进行一]]></description><category></category></item><item><title><![CDATA[centos7安装postgresql]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/124706916</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/124706916</guid><author>aninstein</author><pubDate>Wed, 11 May 2022 11:59:35 +0800</pubDate><description><![CDATA[1. 下载源码

以9.6.17为例，下载postgresql-9.5.17
官网：https://www.postgresql.org/ftp/source/v9.5.17/

下载.tar.gz的源码包
直接从官网下载可能会很慢，所以建议鼠标右键复制下载链接，迅雷下载。下载完后上传到linux服务器上。
2. 安装
安装依赖
yum install -y gcc readline-devel zlib-devel

源码安装：
tar zxvf postgresql-9.5.17.tar.gz 
cd ]]></description><category></category></item><item><title><![CDATA[kubernetes生态以及概念]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/124646858</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/124646858</guid><author>aninstein</author><pubDate>Sun, 08 May 2022 13:15:34 +0800</pubDate><description><![CDATA[kubernetes生态
kubernetes官方文档：https://kubernetes.io/zh/docs/setup/release/version-skew-policy/
1. docker
学习连接：
【介绍】https://www.orchome.com/docker/index
【菜鸟教程】https://www.runoob.com/docker/docker-resources.html
【进阶教程】http://c.biancheng.net/view/3130.html
【笔试面]]></description><category></category></item><item><title><![CDATA[Docker进阶（3）docker容器编排-docker compose、swarm、service]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/124165788</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/124165788</guid><author>aninstein</author><pubDate>Thu, 14 Apr 2022 10:29:46 +0800</pubDate><description><![CDATA[容器编排，docker-compose，swarm，service]]></description><category></category></item><item><title><![CDATA[Docker学习（二）容器网络]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/123790760</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/123790760</guid><author>aninstein</author><pubDate>Mon, 28 Mar 2022 11:17:56 +0800</pubDate><description><![CDATA[1. 容器网络
思考问题：

docker是如何处理容器的网络访问的？

1.1 docker0


docker0是docker安装时候自带的一个虚拟网卡，与物理网卡是属于nat关系。


evth-pair技术，是一堆虚拟设备接口，他们是成对出现的，一段连着的协议，一段彼此相连的。正是因为有这个特性，evth-pair充当一个桥梁，连接各种虚拟网络设备


–link，是使用的/etc/hosts做映射，因此容器互联需要相互配置，且IP变更了之后还是不能通过容器名称进行联通的，不建议使用。


1.2 ]]></description><category></category></item><item><title><![CDATA[Kafka-1-安装及相关概念说明]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/123469215</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/123469215</guid><author>aninstein</author><pubDate>Sun, 13 Mar 2022 23:52:49 +0800</pubDate><description><![CDATA[Kafka学习手册

本文摘自：
链接：https://www.orchome.com/5
来源：OrcHome

0. 预备动作

安装java

yum install java java-devel

下载软件包：
wget https://www.apache.org/dyn/closer.cgi?path=/kafka/2.7.0/kafka_2.13-2.7.0.tgz

解压即可，kafka依赖zookeeper进行管理。而在下载的kafka执行文件当中已经包括了zookeeper，并不需要单]]></description><category></category></item><item><title><![CDATA[【pythonweb国际化】国际化flask-babel，gettext，msgfmt，msginit]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/123414947</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/123414947</guid><author>aninstein</author><pubDate>Fri, 11 Mar 2022 00:29:11 +0800</pubDate><description><![CDATA[pythonweb 国际化与本地化，支持多语言切换


1. 工具与名词解释

babel：python的一个国际化组件包，官网：bable，提供了一些方便的参数，可以使用，本文以flask-babel为例：

pip install flask-babel


gettext: 属于GUN的国际化组件
po/pot: po文件是多语言的翻译文件，pot文件顾名思义就是po的template模板文件，里面只有msgid, 所有的msgstr都为空
mo: mo是po文件编译之后的翻译二进制文件，gettex]]></description><category></category></item><item><title><![CDATA[一种绝对安全的跳转单点登陆方法]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/121955508</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/121955508</guid><author>aninstein</author><pubDate>Wed, 15 Dec 2021 16:46:08 +0800</pubDate><description><![CDATA[一种绝对安全的跳转单点登陆方法]]></description><category></category></item><item><title><![CDATA[Python在Linux环境获取出口IP]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/117652845</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/117652845</guid><author>aninstein</author><pubDate>Mon, 07 Jun 2021 10:53:13 +0800</pubDate><description><![CDATA[Python在Linux环境获取出口IP

先使用ifconfig命令查看当前接口IP的信息
得到返回的数据str内容，按照" "空格劈开
“inet”字段后面为出口ip的字段，但是可能会有一些杂文
使用正则表达式提取出完整的ip，校验ip是否是多播或者回环
把ip写入geo配置白名单文件中

代码如下：
# -*- coding: utf-8 -*-
import re
import ipaddress
from subprocess import Popen, PIPE

geo_file_path =]]></description><category></category></item><item><title><![CDATA[剑指 Offer 42. 连续子数组的最大和（简单）]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/117638864</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/117638864</guid><author>aninstein</author><pubDate>Mon, 07 Jun 2021 00:25:38 +0800</pubDate><description><![CDATA[剑指 Offer 42. 连续子数组的最大和
题目链接：
https://leetcode-cn.com/problems/maximum-subarray/solution/
代码连接
https://gitee.com/aninstein/HappyJava/blob/master/learn_java/src/leetcode/offer100/arrays/EasyMaxSubArraySum.java
package leetcode.offer100.arrays;


/**
 * 题目：剑指]]></description><category></category></item><item><title><![CDATA[剑指 Offer 51. 数组中的逆序对（困难）]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/117634023</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/117634023</guid><author>aninstein</author><pubDate>Sun, 06 Jun 2021 18:32:37 +0800</pubDate><description><![CDATA[剑指 Offer 51. 数组中的逆序对
题目链接
https://leetcode-cn.com/problems/shu-zu-zhong-de-ni-xu-dui-lcof/
代码连接：
https://gitee.com/aninstein/HappyJava/blob/master/learn_java/src/leetcode/offer100/arrays/HardReversePairs.java
题目解析：

方法1：归并排序
方法2：离散化树状数组

官方题解：https://leetc]]></description><category></category></item><item><title><![CDATA[剑指 Offer 39. 数组中出现次数超过一半的数字]]></title><link>https://blog.youkuaiyun.com/aninstein/article/details/117537252</link><guid>https://blog.youkuaiyun.com/aninstein/article/details/117537252</guid><author>aninstein</author><pubDate>Thu, 03 Jun 2021 23:34:00 +0800</pubDate><description><![CDATA[题目：剑指 Offer 39. 数组中出现次数超过一半的数字
题目链接
https://leetcode-cn.com/problems/shu-zu-zhong-chu-xian-ci-shu-chao-guo-yi-ban-de-shu-zi-lcof/
代码连接：
https://gitee.com/aninstein/HappyJava/blob/master/learn_java/src/leetcode/offer100/arrays/EasyMajorityElement.java
解题思路
]]></description><category></category></item></channel></rss>