不过,抢票软件并非万能,巧coder难为无票之炊,除了技术,你可能还需要一点点运气。 无论采取哪种交通方式,祝大家都能开开心心过年回家,平平安安回来搬砖~ 原生项目地址 其实作者已经没有在维护了… 我只是拿剩下的进行了二开 多多少少会有些问题..🐷 支持的Python版本 2.7.10 - 2.7.15(目前根据作者代码来看已经不支持) 3.6 - 3.7.4(推荐) 2.7.9(不太确定) 3.8.x(今天测试-不支持) 已实现功能 自动打码 自动登录 准点预售和捡漏 智能候补 邮件通知 server酱通知 短信通知提示(2020-1-11日新增) 更新Token参数(优先调用) 预获取Cookie(待...

MySQL性能优化-优化思路 大概的优化思路分为以下几个内容 PS: 优化是有风险的,如果你要优化就要变更。 硬件层面优化 系统层面优化 MySQL版本选择优化 MySQL三层结构及参数优化 MySQL开发规范 MySQL的索引优化 MySQL的事务以及锁优化 MySQL架构优化 MySQL安全优化 硬件层面优化 这个地方就略过了就是一些加大硬件配置的需求. 系统层面优化 id: 空闲状态,如果数值越大,表示空闲状态越多。如果可能达到0的情况下,表示当前CPU的核心处于满负荷状态。 us: 表示当前CPU核心数量的使用率。 sy: 表示CPU与内核交互的频率,内核与CPU处理请求的占用,如果此参数高,表示内核很忙。...

介绍 Envoy Nginx HAproxy HTTP/2 对HTTP/2有最完整的支持,同时支持upstream和downstream的HTTP/2 1.9.5以后有限支持HTTP/2,只在upstream server支持,downstream依然是1.1 不支持 Rate Limit 通过插件进行限流 支持基于配置的限流,只支持基于源IP的限流 ACL 给予插件实现四层的ACL 给予源/目的地址实现ACL Connection draining 支持hot reload,并且通过share memory实现connection draining功能 Plush版本才支持 支持热启动,但是不保证丢弃...

Istio架构 Istio 服务网格从逻辑上分为数据平面和控制平面,因为Istio是Envoy的控制平面。 数据平面 由一组智能代理(Envoy )组成,被部署为 Sidecar。这些代理负责协调和控制微服务之间的所有网络通信。它们还收集和报告所有网格流量的遥测数据。 控制平面 管理并配置代理来进行流量路由。 下图展示了组成每个平面的不同组件: 从完整意义上来讲,Istio服务网格逻辑上分为数据平面和控制平面。 目前Istio已经回归单体服务架构了 控制平面: 由多个组件组成完成控制机制,主要有Pilot、Citadel、Galley,新版已经移除限流的组件Mixer。 Pilot: 控制面的核心组件,...

总结了一下平常Docker常见的错误处理,大概二十几个左右。 Docker迁移存储目录 问题起因 由于公司最开始的服务器在/var/lib/docker没有挂载存储,容量只有40G,导致服务器磁盘用满。现将原有的Docker目录数据进行迁移。 注意:请各位Kubernetes用户不要操作,因为容器编排不支持! # 启动容器发现如下报错 ERROR:cannot create temporary directory! 方法一: 软连接方式 # 1.停止docker服务 systemctl stop docker # 2.开始迁移目录 mv /var/lib/docker /data/ # 使用cp命令也可以 cp -arv...

本章内容针对tortoise-orm进行多对多关系的数据分析 简单的多对多关系介绍 如上ER图中看到了我们的三张表:分别是access、role、user(user这张表我没放上去). 多对多关系: role角色表的一条记录能够对应另外一张user用户表中的多条记录,同时user表中的一条记录也能对应role表中的多条记录,被称之为我们的多对多关系。 在tortoise-orm的ManyToManyRelation关系中,默认是使用pk字段作为关联字段的 class ManyToManyRelation(ReverseRelation[MODEL]): """ Many to many relation...

playbook是由一个或多个"play"组成的列表 play的主要功能在于将预定义的一组主机,装扮成事先通过ansible中的task定义好的角色。 Task实际是调用ansible的一个module,将多个play组织在一个playbook中, 即可以让它们联合起来,按事先编排的机制执行预定义的动作 Playbook采用YAML语言编写 ---- hosts:test# 指定主机列表remote_user:root# 远程操作以什么身份执行tasks:- name:Install Redis # 提示字段,表示当前处于什么进度command:install redis# 当前执行的具体命令操作1.0 PlayBook...

模块化:调用特定的模块,完成特定任务 基于:Paramiko,PyYAML,Jinja2 支持自定义模块 基于Python语言实现 部署简单,基于python和SSH(默认已安装),agentless 安全,基于OpenSSH 支持playbook编排任务 幂等性:一个任务执行1遍和执行n遍效果一样,不因重复执行带来意外情况 无需代理不依赖PKI(无需ssl) 可使用任何编程语言写模块,比如:java、Golang… YAML格式,编排任务,支持丰富的数据结构 较强大的多层解决方案 1.0 基础配置操作 1.0.1 主机清单inventory /etc/ansible/hosts # 当没有加入主机清单的时候,可以采用-k选...

缓存穿透 简单地就是用户请求透过redis直接进入到mysql当中进行查询,通常是一个不存在的key,在数据库查询为null。每次请求落在数据库、并且高并发。数据库扛不住会挂掉。 当用户的请求进入到Redis当中的时候,Redis当中并没有用户查询的键。 Redis会告诉用户没有查询到此Key,随后请求会被直接转发到后台MySQL当中 MySQL当中自然也不会存在此键值对,所以当大量的请求落在MySQL当中则会导致数据库宕机 解决缓存穿透的方案 可以将查到的null设成该key的缓存对象。 当然,也可以根据明显错误的key在逻辑层就就行验证。 同时,你也可以分析用户行为,是否为故意请求或者爬虫、攻击者。针对用户访问做限制。...

yum -y install libevent-devel openssl-devel 1.1下载编译安装coturn git clone https://github.com/coturn/coturn cd coturn ./configure --prefix=/usr/local/coturn make install 1.2查看是否安装成功 which turnserver 1.3配置文件 安装目录位于/usr/local/coturn cd /usr/local/coturn/etc/ cp turnserver.conf.default turnserver.conf 1.4 配置证书 openssl req...