自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

转载 mac pyenv 安装2.7.5 报错ERROR: The Python ssl extension was not compiled. Missing the OpenSSL lib?

解决办法:CFLAGS=-I/usr/include/openssl LDFLAGS=-L/usr/lib pyenv install -v 2.7.5

2020-12-30 15:51:30 846

原创 Nginx 配置http和https 同时访问

目录一、HTTPS配置1.生成测试https证书2.构建nginx容器测试3.修改default.conf文件如下4.测试nginx配置文件是否正确5.测试(火狐浏览器)一、HTTPS配置1.生成测试https证书# 1.创建服务器私钥,执行以下命令,会让你输入一个口令,要记住它:openssl genrsa -des3 -out server.key 1024# 2.创建签名请求的证书(CSR):#这里执行后会让你填写一些服务器相关信息,如域名、公司等数据openssl req -new

2020-09-14 14:01:29 1721

原创 Centos搭建 ceph&Kubernetes挂载cephfs和cephrbd

目录一、配置说明二、环境准备1.安装epel源 (所有节点)2. 添加ceph源地址(所有节点)3.安装python工具包(所有节点)4.主节点安装ceph-deply(主节点)5.安装ntp(所有节点)6.安装ssh服务(所有节点)7.建立ceph用户,方便管理,并且给予root权限,免密登陆8.建立免密ssh登陆9.关闭防火墙10.SELinux 设置为 Permissive三、ceph集群搭建 主要在kube-master节点操作1.创建文件夹,保存ceph文件2.创建集群3.安装ceph 所有节点同

2020-08-21 11:20:27 466

原创 centos7.8 搭建kubernetes集群

目录一、概述二、硬件配置三、环境配置1、master、node节点分别修改主机名2、master、node节点主机名称解析3、保证各个主机之间ssh免密登录4、master、node节点关闭防火墙、SElinux、swap,安装支持桥接网络模块5、master、node节点部署ipvs6、master、node节点安装docker-ce并配置group,安装版本19.037、master、node节点安装kubelet、kubeadm、kubectl8、master初始化kubernetes集群(1)初始化

2020-08-20 19:28:03 327

原创 Flask项目编写Prometheus监控

一、背景说明目前监控数据库服务安全的服务存在本身服务不受监控的问题,根据调研,目前技术社区对Prometheus有较高评价,并且在k8s中的使用率高,目前已有完成的exporter能够监控k8s集群的各项服务。二、概念介绍Prometheus定义了4种不同的指标类型(metric type):Counter(计数器)、Gauge(仪表盘)、Histogram(直方图)、Summary(摘要)。Counter:Counter类型的指标其工作方式和计数器一样,只增不减(除非系统发生重置)。Gau

2020-08-12 19:09:31 1586

原创 Kubernetes dns问题排查

一、环境介绍二、问题说明1、es集群搭建过程中,查看日志,报错如下三、问题排查1、首先查看coredns是否有报错(运行正常)2、查看coredns日志3、按照官网上的步骤,添加一个简单的pod,然后验证4、查看pod中dns的配置是否正常,pod中的dns配置,在etc/resolv.conf中5、打开coredns的日志配置,重新请求域名解析,查看日志6、排查kube-proxy,发现报错三、解决问题1、 更新内核版本(k8s所有节点)使用该方式更新内容后,重启系统失败更新,在

2020-07-29 17:55:19 3219

原创 celery worker初始化--DAG实现

本文环境python3.5.2,celery 4.3.0系列celery的启动过程中涉及多个模块,各个模块之间又存在着依赖关系,那么如何按照依赖关系启动各个模块,celery设计了一套简单的DAG(有向无环图),本文就主要分析一下celery DAG的实现过程。celery 中各个模块定为stepWorkerTimer:用于执行定时任务的 Timer,和 Consumer 那里的 timer 不同Hub:Eventloop 的封装对象(回顾一下 Kombu 的)Pool:构造各种执行.

2020-05-11 13:28:53 930 1

原创 Kombu源码分析(二)Producer 消息发布

本文环境python3.5.2,kombu4.6.8系列本文主要根据kombu官方用例,来分析逐个分析kombu源码,了解kombu中的主要结构和代码实现上文主要根据官方示例分析了Connection初始化的源码,本篇将继续根据示例代码讲解Producer的初始化和消息发布的源码,上文中提到,Connection初始化过程是并没有建立连接的,而是在使用时才能建立连接,本篇在Producer...

2020-04-16 09:56:39 468

原创 Kombu源码分析(一) Connection

Celery是Python中最流行的异步消息队列框架,支持RabbitMQ、Redis、ZoopKeeper等作为Broker,而对这些消息队列的抽象,都是通过Kombu实现的。Kombu实现了对AMQP transport和non-AMQP transports(Redis、Amazon SQS、ZoopKeeper等)的兼容。AMQP中的各种概念,Message、Producer、Excha...

2020-04-14 09:38:46 669 1

原创 keepalived+mongo集群搭建高可用数据库集群

本文环境mongo=3.4, keepalived=2.0.5, docker=1.8本次采用三个节点,搭建mongo集群3sharding,每个sharding采用一主一从一仲裁, 其中搭建三个router节点,为防止application与mongo集群中router节点的连接出现单点故障,特搭建keepalived集群,通过虚拟ip连接三个节点上的router节点,application...

2019-12-04 10:43:36 778

原创 nginx性能优化--conf参数说明及优化

平时nginx部署项目,安装完成,然后到/etc/nginx/nginx.conf文件中配置好server,或者在conf.d中创建一个.conf文件进行配置,就可以实现基本功能,但是对nginx内原始参数基本很少修改,如果想进一步提升nginx性能,则需要对参数有基本的认识,并且了解参数设置值的由来,下面就简单介绍一下conf文件中的参数配置顶层配置user www-data;worker...

2019-10-30 10:51:12 500

原创 大数据工具--Sqoop简介及使用

本文环境hadoop 2.7.7,sqoop 1.4.7Sqoop是一个在结构化数据和Hadoop之间进行批量数据迁移的工具,此篇博客没有深入的介绍sqoop的底层,只是简单介绍其功能,重点记录sqoop的使用命令 sqoop import, sqoop export, sqoop job的使用Sqoop简介Sqoop是一个在结构化数据和Hadoop之间进行批量数据迁移的工具,结构化数据...

2019-09-18 12:01:24 611

原创 spark实现wordCount(scala、python)

本文环境spark1.6,java1.8, scala 2.1.6, python 2.7Spark是大家非常熟悉的大数据处理框架,虽然在公司已经使用了很久,但是没有深入的了解过Spark的底层代码原理,大家都清楚,Spark是由scala开发实现的,为了深入了解Spark,学习scala是必不可少的,在这里简单的写一下三种语言调用Spark接口的方式,实现wordCount功能。Scal...

2019-09-18 12:00:19 859

原创 轻量版orm-peewee源码分析

> 本文环境python3.5.2,peewee 2.0.6系列原本想写一下django的orm源代码,但是django的orm代码太庞大了,所以选了一个轻量级的orm,代码量小,但是实现原理基本相似,peewee已经发行了138个版本到3.8.2版本了,最新版本的代码也多了些“繁文缛节”,随意选了低版本的实现功能代码,原想选最低版本0.9.6,但随便点了一个2.0.6版本,代码量反而少了...

2019-02-27 15:00:43 1483

原创 django源码分析:信号signal

本文环境python3.5.2,django1.10.x系列本文主要介绍django是如果通过中间件SessionMiddleware来处理session,重点将放到SessionMiddleware中间键的源码讲解。django本就是依靠一套信号机制来来处理在框架的不同位置之间的信息。完成一套信号的处理函数(receiver),经过初始化后进行储存,等到需要调用此功能的时候,就可以通过发...

2019-02-22 17:46:32 601

原创 django源码分析:中间件SessionMiddleware

本文环境python3.5.2,django1.10.x系列本文主要介绍django是如果通过中间件SessionMiddleware来处理session,重点将放到SessionMiddleware中间键的源码讲解。关于中间件的作用,在上一篇文章介绍CsrfViewMiddleware中间件时已经讲过,在这里就不再进行赘述。下面就直入主题,讲讲SessionMiddleware的源码。...

2018-12-19 14:48:28 652

原创 django源码分析:中间件CsrfViewMiddleware

本文环境python3.5.2,django1.10.x系列介绍django中关于跨域请求保护的内容,主要由其中一个中间件完成,下面稍微讲一下关于csrf原理和django中间件在请求中的作用,重点将放到CsrfViewMiddleware中间键的源码讲解。csrf原理 CSRF概念:CSRF跨站点请求伪造(Cross—Site Request Forgery),跟XSS攻击一样,存...

2018-12-18 13:43:57 1045

原创 动态规划问题

本文参考书籍《图解算法》举例说明动态规划问题 考虑一个场景:周末准备一场户外旅行,要准备一些物品,你有一个可承载8kg背包和一些物品,物品也有重量和需求值,全部物品重量超过背包承重,因此无法全部携带,如何去选取价值总量最高的物品组合呢? 物品名 重量 价值 water 1k...

2018-08-30 22:43:29 182

原创 贪婪算法

本文参考书籍《图解算法》一、在了解贪婪算法之前,首先需要了解一下 NP完全问题 NP完全问题(NP-C问题),是世界七大数学难题之一。 NP的英文全称是Non-deterministic Polynomial的问题,即多项式复杂程度的非确定性问题。简单的写法是 NP=P?,问题就在这个问号上,到底是NP等于P,还是NP不等于P。。。。。。。具体的详细描述可以参考百度百科,...

2018-08-29 10:24:25 1855 1

原创 django 使用原生sql

Django中查询筛选数据时,大多数是使用封装好的orm,其中有一些较为复杂的sql语句很难使用orm实现,因此在此引入Django中原生sql的使用方法在Django中使用原生Sql主要有以下三种方法: 一:extra:结果集修改器,一种提供额外查询参数的机制 二:raw:执行原始sql并返回模型实例 三:直接执行自定义Sql 举例说明使用方法from djang...

2018-08-28 10:51:11 3290

原创 django源码分析:HTTP请求过程(wsgi)

本文环境python3.5.2,django1.10.x系列 python manage.py runserver 命令启动本地调试服务器后,接着要分析一下django对请求request的整个处理过程, 在此感谢在django源码学习中 小屋子大侠 的帮助, 小屋子大侠 博文地址:https://blog.csdn.net/qq_33339479/article/ca...

2018-08-24 14:33:12 2006

原创 python文本处理--TF-IDF原理及实例演示

python文本处理 – TF-IDF原理及实例演示代码基于python 3.5.2简要概述: TF-IDF(Term Frequency-Inverse Document Frequency, 词频-逆文件频率). 是一种用于资讯检索与资讯探勘的常用加权技术。TF-IDF是一种统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着...

2018-06-08 11:33:19 2824

原创 python基础 --functool.singledispatch

python基础 – functools.singledispatch代码基于python 3.5.2 python3.0以后functools.singledispath装饰器,学名:单分派泛函数,名字有点晦涩。分析后得出,该装饰器主要实现的功能就是:根据传入参数类型的不同而进行不同的函数处理。举例说明:from functools import singledispa...

2018-05-31 16:11:03 518

原创 python 基础 -- functools.lru_cache

python基础 – functools.lru_cache代码基于python 3.5.2 functools模块中lrucache是非常使用的装饰器,它实现了缓存,去重的功能。它将耗时的函数结果保存起来,避免传入相同的参数重复计算。LRU三个字母是”Least Recently Used”的缩写,表明缓存不会无限储存,一段时间不用,或者数量超出一定限制,旧缓存就会扔掉。列举简...

2018-05-31 15:07:24 5628 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除