自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 这年头,高低也要画几张架构图!

这年头,高低也要画几张架构图! - 掘金

2024-04-20 14:44:02 19

原创 python爬虫常用的库

此外,还有其他一些常用的库,如`unirest for Python`、`hyper`、`PySocks`、`treq`、`aiohttp`等。

2024-02-20 13:59:25 2637 1

原创 正则表达式

【代码】正则表达式。

2024-02-12 15:59:07 369

原创 rabbitmq技术

1,docker运行rabbitmq。

2023-11-29 15:57:54 900 1

原创 grpc协议

1.grpc字段映射。

2023-05-29 22:53:16 112

原创 大数据技术

1. 大数据技术生态体系2. hadoop目录结构bin: Hadoop的命令sbin: Hadoop的脚本etc: Hadoop的配置文件share: Hadoop的jar包

2023-03-23 22:52:05 126

转载 优雅的API接口

优雅的API接口

2022-12-17 09:16:07 159

原创 数据结构与算法之美

数据结构与算法之美

2022-07-08 09:37:54 152

原创 Elasticsearch小结

Elasticsearch

2022-06-02 23:32:29 105

转载 uwsgi的http、http-socket和socket的区别

uwsgi的http、http-socket和socket配置项_小白、瑶的博客-CSDN博客_http uwsgi

2022-02-14 08:56:40 821

原创 加密解密小结

python接口自动化-实现sign签名(MD5加密) - 柠檬草不孤单 - 博客园md5为什么不安全

2022-02-11 15:19:08 1289

原创 虚拟化技术

服务器虚拟化如何节约IT成本

2022-01-08 14:55:36 151

原创 kubernetes笔记

架构图 Pod控制器类型 ReplicationController & ReplicaSet & Deployment HPA(Horizontal Pod Autoscaler) StatefulSet DaemonSet Job CronJob​

2022-01-07 22:59:35 1092

原创 高可用集群

Zookeeper集群为什么要是单数 - 冰冻开水 - 博客园 容错能力相同的情况下,单数更节省成本 脑裂的情况下单数能保证服务可用

2022-01-07 09:43:48 1330

转载 supervisor配置详解(转)

supervisor配置详解(转)

2021-12-23 14:55:47 113

原创 监控相关的知识点

1,监控分类

2021-11-15 23:22:46 208

原创 virtualenvwrapper操作小结

安装虚拟环境 pip install virtualenv 安装virtualenvwrapper pip install virtualenvwrapper # 直接安装virtualenvwrapper,会自动安装virtualenv 创建虚拟环境 mkvirtualenv venv 进入虚拟环境 workon venv 退出虚拟环境 deactive 列出所有虚拟环境 lsvirtualenv 进入虚..

2021-10-21 17:00:09 69

原创 JAVA笔记

java运行环境,切换版本(mac系统) $ /usr/libexec/java_home -V // 查询当前系统所有java版本及所在路径// 切换java版本// 打开~/.zshrc文件export JAVA_HOME=$(/usr/libexec/java_home) // 默认版本export JAVA_HOME=$(/usr/libexec/java_home -v 1.8.0_291) // 指定版本 IntellJ IDEA切换java版本 File-&g...

2021-07-24 11:39:59 87

原创 数据库与缓存一致性方案

在实践过程中,由于操作缓存与操作数据库不是原子性的,非常有可能出现执行失败,导致数据库与缓存不一致。或者在高并发的系统中,同时对同一条数据进行读写操作,在数据库层面并发的读写并不能保证先后顺序,也就是说后发出的读请求很可能先完成(读出脏数据),脏数据又入了缓存,缓存与数据库中的数据不一致出现了。我们从几个方案来探究如何保证数据库与缓存的一致性:1,先更新数据库,再更新缓存(1)这个方案的代价有时是比较高的。每次修改数据库的时候,都要将其对应的缓存一份。但对于某些系统写数据库场景比较多,读数据库场景比

2021-05-07 23:08:39 77

原创 常用的限流算法

一、介绍限流前我们先来介绍几种应对服务器高并发的方案:1,服务降级:在高并发的情况下,为了防止用户一直等待,使用服务降级方式(直接返回一个友好的提示给客户端)2,服务熔断:熔断机制的目的是为了在高并发的情况下保护服务,当高并发的情况下,如果流量达到一定阈值后,后面的请求全部拒绝访问,起到保护服务的作用。熔断其实也是降级方式的一种3,服务隔离:一般情况下,多个HTTP服务会共享一个线程池,假设其中一个HTTP服务访问的数据库响应非常慢,这将造成服务响应时间延迟增加,大多数线程阻塞等待数据响应返回,

2021-05-07 23:07:43 130

原创 go语言小结

1,编译到指定文件夹```shellgo build -mod=vendor -o ~/vhost/jadiduit/crontab/cashme_server_cron```

2020-12-11 14:15:13 96

原创 高性能Mysql

选取书中特别有代表性的点来讲:一:Mysql逻辑架构mysql的架构解析:当一个sql请求从客户端请求过来,先经过连接池,连接池如果有空闲的线程,则可以直接用,如果没有就新创建一个建立连接,如果是查询类的sql,会先检查是否命中缓存,有缓存则直接返回缓存结果给客户端,如果没有命中缓存,则经过解析器解析sql语法,会解析出关键字和非关键字,解析sql是否合法,不合法会直接报错终止线程,合法的话会进入优化器,优化器会为sql生成最优的执行计划,例如选择最合适的索引,生成执行计划后调用存储引.

2020-12-03 16:51:45 2429 1

原创 python实现多任务方式

什么是多任务?就是操作系统可以同时运行多个任务多任务的执行方式并发:交替执行,是假的多任务并行:同时执行,是真的多任务第一种多任务的实现方式:多线程python线程的两种写法(第一种会比较常用):第一种: def say(): print("我在说话")def sing(): print("我在唱歌") time.sleep(1)if __name__ == "__main__": t1 = threading.Thread(tar

2020-12-03 16:39:35 554

原创 缓存穿透和布隆算法

缓存穿透是指查询一条数据库和缓存都没有的一条数据,就会一直查询数据库,对数据库的访问压力就会增大,缓存穿透的解决方案,有以下两种方案:1、缓存空对象:代码维护简单,但是效果不好。2、布隆过滤器:代码维护复杂,效果很好缓存穿透的发生由低到高分三种情况:第一种情况,客户端请求id=-1的数据,此时数据库和缓存都没有数据,就会一直查询数据库,解决方案就是把id=-1的数据以NULL值缓存在redis中,就是上面的方案一第二种情况,客户端请求id=UUID的数据,此时如果采用方案一,就会...

2020-12-03 16:36:44 304 1

转载 python之什么是初始化,实例化,区别

---恢复内容开始---一.首先必须先了解类和实例的区别类是你定义的这个新类型,这个类型可以有很多个实例。比如 a = A(),A是个类,a就是A的一个实例,同样可以b=A(),b也是A的一个实例。初始化函数__init__在实例刚创建完成的时候调用,这里可以对这个实例的属性进行初始化classA:def__init__(self,num):...

2019-10-11 06:52:35 1303 2

转载 Python中*args和**kwargs的区别

(注:本文部分内容摘自互联网,由于作者水平有限,不足之处,还望留言指正。)中秋的夜,微凉,但却始终看不见月亮。 我想,它一定是害羞了,悄悄的躲到了乌云的后面。 嗯,就是这样,我真是太TM机智了。正文: 注:《python核心编程第2版》的11.6可变长度的参数---章节中有详细介绍。一、*args的使用方法...

2019-10-11 06:40:19 69

原创 uwsgi graceful reload

传统重启弊端:后台上线功能,以往的做法是当有对代码进行更改,需要将新代码提供给用户时,将uwsgi服务器重新启动以使更改生效,但这个重启过程会将所有uwsgi的worker进程强行kill掉,然后再重新启动这些worker,导致的结果:worker正在处理的请求无法正常处理完, 重启过程中uwsgi无法正常接收请求,请求报502的错误,特别是由于某些原因重启时间可能很久从stop uw...

2019-10-09 06:14:21 782 1

原创 浅谈文字编码和Unicode

ASCII编码:计算机的历史上,由于计算机是美国人发明的,英文是美国人的母语,英文无非就是一些大小写英文字母、数字和一些符号,比较少,只有127个字符,总所周知,1字节=8bit,用1个字节可以完全表示所有英文,所以最初美国人将这127个字符被编码到计算机中,这就出现了ASCII编码ASCII编码表:各国语言编码:由于ASCII编码只是为英文所用,其他国家的语言无法使用,所以其...

2019-10-09 06:10:25 1160

原创 网络问题排查

1. DNS问题pingwww.baidu.com,如果出现Temporary failure in name resolution的报错,说明DNS有问题 打开cmd->输入nslookup回车->输入www.baidu.com回车,如果出现DNS request timed out,timeout was 2 seconds的提示信息,则说明DNS确实出问题了,如果DNS解...

2019-09-26 14:52:04 300

原创 同步与异步 阻塞与非阻塞

同步与异步转自:https://www.jianshu.com/p/47ee57646369同步和异步关注的是消息通信机制.同步异步指的是调用者与被调用者两者之间的关系,而不是经常容易误解的多个被调用者之间的关系。同步所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不会返回,一旦调用返回,就得到返回值了。换句话说,就是由调用者主动等待这个调用结果.按照此定义,其...

2019-09-21 16:26:03 92

原创 python小结

django打印原生sqlfrom django.db import connectionsfor query in connections['ymoffers_setting'].queries: print(query)

2019-07-02 16:15:48 105 1

原创 docker

什么是DockerDocker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。和虚拟机的区别组成Docker是一个C/S结构,由镜像,容器和仓库组成容器是由镜像实例化而来,这和我们学习的面向对象的概念十分相似,我们可以把镜像看作类,........................

2019-06-03 00:24:53 155 1

转载 哈希

hash(散列、杂凑)函数,是将任意长度的数据映射到固定长度的域上。即将一段数据M进行杂糅,然后输出一段数据h。作为他的数据特征(指纹)即无论m多长,输出的h的长度是固定的。Hash表采用一个映射函数 f : key —> address 将关键字映射到该记录在表中的存储位置,从而在想要查找该记录时,可以直接根据关键字和映射关系计算出该记录在表中的存储位置.通常情...

2019-06-03 00:07:10 183

原创 ubuntu下使用nvm安装npm和node

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash nvm --version nvm install node nvm install 8.2.0 npm install -g [email protected] npm -v

2019-05-22 15:54:03 159

原创 时间复杂度

视频:https://www.iqiyi.com/v_19rr5wm3uw.html博文1:https://baijiahao.baidu.com/s?id=1609024533531824968&wfr=spider&for=pc博文2:https://blog.csdn.net/kang123488/article/details/79768205...

2019-05-07 07:35:24 81

原创 Vue双向绑定原理及vue-cli

Vue.js介绍1. Vue.js的MVVM框架数据的双向绑定当数据发生变化,ViewModel会观察到数据的这种变化,然后通知到视图做自动更新当用户操作视图,ViewModel会监听到视图的这种变化,然后通知到数据做改动2. 什么是Vue.jsVue.js是一个轻量级的MVVM框架中文官网:https://cn.vuejs.org/3. 对比React、Angular...

2019-05-05 08:28:11 352

原创 Websocket数据解析全过程

之前在协助建军做自动通知前端刷新和最近分片上传大文件的时候都使用到了websocket,对websocket做了一些调研,这篇文章就跟大家一起分享一下。websocket的使用场景:一般我们做聊天室这种需要保持通讯状态的功能,如果是用HTTP协议去做的话,需要客户端一直做长轮询去查询服务端是否由新消息,再显示在客户端上,这是因为HTTP本身是一个短连接,当我们客户端发起请求时,服务器...

2019-05-05 08:24:40 5028

原创 说说进程、线程和协程

window适合多线程,linux适合多进程,linux用多线程没有必要 内存(线程占优): 线程直接共享内存和变量 进程越多,内存消耗越大, 线程比进程消耗内存低,进程无法共享内存,浪费,但现代内存大 性能(进程占优): 进程通过增加CPU,就可以容易扩充性能 线程受限内存,且到达一定线程数后再增加cpu也无法提升性能 多进程可以尽量减少线程加锁/解锁的影响,极大提高...

2019-04-28 23:05:39 100

原创 Vue.js框架(一)

2019-02-06 22:54:59 217

原创 GO语言(一)

第一个go程序// go语言是以包为管理单位// 每个文件必须先声明包// 程序必须有一个main包package mainimport "fmt"// 入口函数,go(一个文件夹)有且只有一个入口函数mainfunc main() { // 将"Hello World"打印到屏幕,Println()会自动换行 // 调用函数,大部分都需要导入包 fmt.Println...

2019-01-01 19:01:00 172

空空如也

空空如也

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

TA关注的人

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