燃灯工作室

专注Python架构的Wed集群方案研究。

  • 博客(40)
  • 资源 (1)
  • 收藏
  • 关注

原创 访问raw.githubusercontent.com失败问题的处理

GitHub上的项目的有些资源是放在raw.githubusercontent.com上的,通常我们在安装某些软件的时候会从该地址下载资源,直接访问的话经常容易失败。:因为神秘力量,域名解析不了,所以访问不了。:不用域名登录,直接用ip登录,或者去/etc/hosts里设置下域名解析。

2024-02-24 18:15:32 1826

原创 在 CentOS 上安装 JDK 1.8

首先,访问 Oracle 官方网站(https://www.oracle.com/java/technologies/javase-jdk8-downloads.html)下载适用于 CentOS 的 JDK 1.8 安装包(选取适合您系统的版本)。检查您的系统是否已经配置了正确的软件源。如果正常显示 Java 版本信息,说明安装成功。打开终端(命令行界面)。

2024-02-18 11:42:25 661

原创 MySQL删除表三种操作(delete、truncate、drop的区别)

delete 语句可以使用where子句实现部分删除,而truncate不可以,会将表中的整个数据全部删除,使用时,可以按需求选择;如果想从表中删除所有的数据,不要使用delete,可以使用truncate语句,因为这样执行速度更快。truncate语句实际是删除原来的表然后重新建立一个新表;在没有备份情况下,谨慎使用 drop 与 truncate。要删除表结构使用drop;

2023-07-24 14:02:14 5578

原创 Linux磁盘分配 把home的空间扩容给root

系统用来一段时间后,写入数据发现硬盘空间提示不足,当时感觉很奇怪,我的硬盘是500G,也没有什么大文件,为什么存在硬盘不足的情况呢。一查看硬盘使用情况,发现root分区只有50G,home有450G,现在知道为什么提示硬盘不足了,root分区既然只有50G,为什么root分区只有50G呢?后来在网上查了下才知道,再安装系统的时候,如果不进行操作硬盘分区,默认的情况下,root默认比较小,大部分分区会给home。知道原因了,现在只有想办法把home的空间扩容给root。利用df -h 显示,centos-ho

2022-12-03 23:03:53 3320 2

原创 详解supervisor配置与案例

​ supervisor是一个 Client/Server模式的系统,允许用户在类unix操作系统上监视和控制多个进程,或者可以说是多个程序。supervisor与launchd,daemontools,runit等程序有着相同的功能,与其中某些程序不同的是,它并不作为“id 为 1的进程”而替代init。相反,它用于控制应用程序,像启动其它程序一样,通俗理解就是,把Supervisor服务管理的进程程序,它们作为supervisor的子进程来运行,而supervisor是父进程。

2022-11-22 09:16:47 4456

原创 django后台运行runserver

django的runserver是一个简易的wed服务器,功能主要侧重于开发调试。不过有的缺点就是,我们运行 python3 manage.py runserver 0.0.0.0:8001 后必须一致开着shell窗口,不然服务就退出了。有没方法解决这个问题呢?答案是,有的,nohup 命令。基本命令:参数部分:nohup 命令运行由 Command参数和任何相关的 Arg参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,

2022-06-07 11:17:45 4295

原创 Python 命名规范

1. 规范1.变量名区分大小写;2.严禁使用关键字作为变量名;3.确定自己的命名风格,不可随意变换;4.命名应该科学严谨,切勿太长或者表达比较模糊;5.命名中若使用特殊约定或缩写,则要有注释说明;6.尽量不要使用中文字符和纯数学字符,避免编码错误;7.名字由英文字母、数字、下划线组成,如abc,abc13和_abc等;8.要清晰、明了,有明确含义,同时使用完整的单词或大家基本可以理解的缩写;9.同一软件产品内,应规划好接口部分(变量、结构、函数及常量)的命名,防止编译、链接时产生冲突。

2022-04-28 16:11:14 9343 2

原创 Pycharm 设置文件头模板

1.设置路径文件 —> 设置 —> 编辑器 —> 文件和代码模板 —> 在文件中选择 python Script2.常用模板#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : ${DATE} ${TIME}# @Author : 熊利宏# @project : Trace# @Email : xionglihong@163.com# @File : ${NAME}.py# @IDE

2022-04-28 10:28:02 466

原创 Django的ORM详解

1 ORM介绍1.1 ORM概念对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中。ORM在业务逻辑层和数据库层之间充当了桥梁的作用。1.2 ORM由来让我们从O/R开始。字母O起源于"对象"(Object),而R则来自于"关系"(Relational)。几乎所有的软件开发过程中都会涉及到对象和关系数据库

2022-04-26 17:29:00 7361

原创 Python车牌的正则表达式

1.python 校验车牌是否合规import repattern_str = "([京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼]" \ "{1}(([A-HJ-Z]{1}[A-HJ-NP-Z0-9]{5})|([A-HJ-Z]{1}(([DF]{1}[A-HJ-NP-Z0-9]{1}[0-9]{4})|([0-9]{5}[DF]" \ "{1})))|([A-HJ-Z]{1}[A-D0-9]{1}[0-9]{3}警)))|(

2021-12-13 16:18:51 2404

原创 Linux下使用tail查找日志文件关键词高亮显示

在Linux环境下,使用tail查找日志文件是比较常用的操作,密密麻麻的日志里面,要找到自己想要的内容是一个不容易的事情,如果自己要找的内容能高亮,那就直观多了。操作如下1.高亮关键字1.单个关键字高亮tail -f 日志文件 | perl -pe 's/(关键词)/\e[1;颜色$1\e[0m/g'tail -f all-2021-12-11.log | perl -pe 's/((project)/\e[1;34m$1\e[0m/g'2.多个关键字高亮(颜色一样)tail -f 日志文件

2021-12-13 14:23:48 7246

原创 Pycharm 提示错误类型太宽泛

1.Pycharm 提示错误类型太宽泛最近在 Pycharm 中写代码的时候会抱怨 Exception 没有指定错误类型Too broad exception clause...这是因为捕获的异常过于宽泛,没有针对性,可以通过指定精确的异常类型来解决2.怎么才能解决呢如果不确定有可能发生的错误,或者是就要使用 Exception 而且还不许 Pycharm 抱怨,那该怎么解决?关闭编译器中代码检测中有关检测 Exception 的选项在 try 语句前加入 # noinspection

2021-08-16 14:22:58 5934

原创 解决ssh连接linux(docker)系统特别慢的问题

今天在虚拟机里面安装了docker,利用docker起了一个centos。里面配置完成openssh后,利用xsheel连接docker里面的centos,发现特别慢,差不多要的1分钟才能连接上去。这肯定是有问题的,于是开始查原因。一、分析主要原因1.SSH的反向DNS解析会消耗大量时间2.GSS认证会消耗时间二、解决办法编辑配置文件# 编辑配置文件vim /etc/ssh/sshd_config修改以下内容# 关闭DNS解析UseDNS no# 关闭GSS认证(不过我发现不关闭这

2021-07-20 17:53:35 1029

原创 在docker中部署elasticsearch-head

1.拉取elasticsearch-headdocker pull mobz/elasticsearch-head:52.启动elasticsearch-headdocker run --privileged=true --restart=always --net=randeng_network --ip 192.168.1.61 --name elasticsearch --name=elasticsearch-head -p 9100:9100 -d mobz/elasticsearch-he

2021-07-16 17:50:41 525 3

原创 在docker中部署elasticsearch

1.拉取镜像docker pull elasticsearch:7.13.22.创建挂在文件# 创建目录mkdir -p /www/elasticsearch/configmkdir -p /www/elasticsearch/datamkdir -p /www/elasticsearch/plugins# 写入配置文件cat > /www/elasticsearch/config/elasticsearch.yml << EOFhttp.host: 0.0.0.0

2021-07-16 17:50:03 384

原创 在docker中部署sentry

1.sentry 是什么?Sentry是一个实时事件的日志聚合平台。它专门监测错误并提取所有有用信息用于分析,不再麻烦地依赖用户反馈来定位问题。2.利用docker部署sentry2.1.下载镜像docker pull redis:6.0.9docker pull postgres:13.3docker pull sentry:9.1.2备注:redis和postgres只需要以最简单的方式启动即可,因为不使用外部端口等2.2.redis相关操作2.1 生成目录用来存放redis的配置

2021-07-16 15:53:43 1293

原创 Sqlalchemy 使用 in or notin 无法批量删除或者修改数据

下面以删除为例,update和delete和修改一模一样的1. 解决方法可以在delete()括号内添加 synchronize_session=False 或者 synchronize_session=‘fetch’ 实现删除delete(synchronize_session=False)2. 出现的场景当我们使用 in 或者 notin 筛选出需要删除的数据并进行删的时候_m = MpSubscribeScheduledupdate_list = db.session.query(_

2021-05-24 18:59:05 754

原创 Linux安装包时提示域名无法解析

安装包的时候报错:Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=container error was14: curl#6 - “Could not resolve host: mirrorlist.centos.org; Unknown error”如下:[root@one_partner ~]# yum install wget

2021-04-21 11:04:04 2057

原创 Docker中时间时区错误

事件起因这件事情的起因是这样的,我在物理机CentOS中起了一个Docker里面安装的是CentOS,再在Docker的CentOS安装了flask,在写数据库的时间,创建时间总是错的,与北京时间(东八区)相隔8小时。其实说到这里,第一反应就是时区问题,物理机可能使用了UTC时间。可是查看物理机CentOS的时间,没有问题,后来进入Docker的CentOS查看时间,原来是Docker的CentOS用的UTC时间。问题找到了,下面就是解决,其实解决方法如下:解决问题# 安装ntp服务yum inst

2021-04-21 11:02:36 202

原创 在pycharm中终端git log 中文出现乱码

在pycharm中,终端里面执行git命令,git log的时候中文出现乱码其实解决起来比较简单,只需要把编码加入环境变量即可出现的现象如下:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lLI1ObjE-1618485735640)解决方法为:这里以windows10 系统为例在环境变量中设置LESSCHARSET=UTF-8然后重新打开pycharm或者终端,再使用git log时,中文已正常显示...

2021-04-15 19:24:18 2503

原创 升级系统python版本至3.7

1.切换到家目录这里的环境为 centos7.8,升级之前的python版本为 2.7.5这步非必要,但建议找个好记得目录# 切换至家目录cd ~2.下载 Python-3.7.0.tar# 下载pythonwget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz# 如果提示没有wget,就先按照wgetyum install wget如果下载太慢,可以直接使用此连接 点击下载 下载好后,传到家目录3.安装依

2021-03-30 15:20:56 1417 2

原创 接口对接常用加密方法

和第三方对接加密,通常需要进行字段加密,再进行传输。1.XML排序后加密项目实践中,和百年保险对接使用到了这种加密import xmltodictimport hashlibfrom lxml import etree# 计算加密串def xml_sorting_sha256(xml_str, secret_str): """ 插入xml字符串,返回排序好后并且加密的串 排序规则为 按字母升序排序后加上加密密钥secret,进行SHA-256加密

2021-03-09 14:18:49 2717

原创 安装NFS服务

1 服务器部分1.1 查看系统是否已安装NFS# 查看是否安装过nfsrpm -qa | grep nfsrpm -qa | grep rpcbind1.1 安装NFSyum -y install nfs-utils rpcbind1.3 创建共享目录并授权# 创建准备共享的目录mkdir -p /nfs# 赋予权限chmod 666 /nfs# chmod 命令更改文件/文件夹的属性:# chmod 666 /nfs 表示所有用户都可以读写但不能执行文件/文件夹;# c

2021-02-02 09:18:47 287 1

原创 使用kubeadmin安装部署Kubernetes

1 基础配置和组件安装(所有节点)1.1设置主机名hostname# 设置主机名(三台主机名分别为 master-01,node-01,node-02)hostnamectl set-hostname master-011.2 添加域名解析# 域名解析cat <<EOF>>/etc/hosts27.1.100.128 master-0127.1.100.129 node-0127.1.100.130 node-02EOF1.3 关闭防火墙# 关闭防火墙s

2021-01-29 10:57:28 1085 5

原创 Kubernetes 安装flannel组件(本地 kube-flannel.yml 文件)

可以直接用kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml搞定,但是 raw.githubusercontent.com已经被墙了,如果可以科学上网,上面可以直接搞定,如果不能科学上网,这里放上kube-flannel.yml文件的源码生产文件后,在文件所有目录执行kubectl apply -f kube-flannel.yml kub

2021-01-29 10:47:24 18335 10

原创 Redis集群实战篇

这里写目录标题1. 拉取redis镜像2. 配置文件2.1 生成目录2.2 建立配置文件3. 启动redis实例3.1 .启动一个实例(带参数说明)3.2 .利用批量命令,同时启动6个实例5. 编排集群操作6. 连接集群,进行读写操作6.1 .Python直接进行操作6.2 .Django进行操作这篇博客是续redis集群理论片后的redis集群实战篇,全篇没有任何理论,基本都是代码和一些备注1. 拉取redis镜像docker pull redis:6.0.92. 配置文件2.1 生成目录

2020-12-21 22:13:18 319

原创 Django中日期时间型字段进行年,月,日,时,分,秒分组统计

数据结构如下:modification字段为修改数据时间字段,格式为 年,月,日,时,分,秒。案例场景为,根据modification字段,统计每个统计粒子,产生数据的条数。如需要统计2020年10月29日 每个小时段产生数据的条数。

2020-10-30 08:57:32 2468 6

原创 Centos+Django+Uwsgi+Nginx+Mysql

本案例适合内部网络,也就是不能接入互联网的情况下或者网速非常慢的情况下,离线配置wed服务器。这次主要记录我在一次军网环境下,无yum源,无pip源,配置和开发wed服务器的过程。

2020-10-23 17:26:18 293

原创 Python 字典型列表值整体替换

在项目过程中经常出现这样的一种需求,一个字典型列表对象中,某个值需要整体替换为另外一个值。这种需求用循环可以实现,但是比较麻烦。一个典型的场景就是django进行查询后,在查询到不存在的多对多值时,会出现很多None,传给前端后就全部变成null。显示在前端特别难看。如果后端处理的话,会多出很多代码。利用xToolkit库可以很简单的搞定这个问题1.安装方法:pip install xToolkit -i http://pypi.douban.com/simple --trusted-host p

2020-10-04 09:34:28 1432 1

原创 Django中的Q查询和F查询

一个F()对象代表一个模型字段的值或注释列。使用它可以直接引用模型字段的值并执行数据库操作而不用把它们导入到python的内存中。相反,Django使用F()对象生成一个描述数据库级别所需操作的SQL表达式。

2020-09-22 21:24:02 953

原创 Python 金额数字人性化显示

我们在开发过程中,有时候需要把float,int型等数字作为金额类型数字显示会出现很多问题,比如float会显示成 965868.4599999,int型没有小数位等各种各样的问题。我们需要进行转换显示,才能保证阅读人性化。方法一:这里只贴上主要代码:# 金额人性化def humanized_amount(self, *args, **kwargs): """ 金额人性化,保留二位小数,再进行人性化显示 compel强制二位,默认True, """ if n

2020-09-20 20:54:10 307

原创 Python 读取excel并转换为字典

方法一:利用利用xlrd读取excel文件其实整个过程比较简单,利用xlrd读取excel文件,再把读取到的数据转换为dict即可。1.安装 xlrdpip install xlrd2.读取文件,并进行格式转换导入的excel表格的格式是这样的:解析后的格式为 [{'编号': 1, '时间': '1988-07-21 00:00:00', '年龄': 1, '分数': 63.2, '总分': 1}, {'编号': 2, '时间': '1988-07-21 00:00:00', '年

2020-09-17 22:03:35 10085 8

原创 Python系统模块增强库(xToolkit库)

库xToolkit的中文名字叫X工具集.是python内置库的一个扩展库.把python的datetime,string,list,dist,xthread等数据结构进行了系统库功能的扩展。

2020-09-11 16:38:23 4770 10

原创 django定时任务库 django_apscheduler

django_apscheduler 在做定时任务的时候这个库挺有用的,记得在这个库还不存在的时候,自己也写了一个和这个库功能差不多的django模块。也能用,不过不是很稳定,每次重启wsgi的时候,都要手动启动任务。无意中发现了django_apscheduler 这块第三方库,用了下挺好用的。安装pip install django-apscheduler 将: django_apscheduler 加到 项目setting.py INSTALLED_APPS 中INSTALLED_A

2020-07-19 16:26:46 1131

原创 对django rest_framework中method操作改良

我们知道django rest_framework里面的设计规范基本都遵循restful规范,method操作规范同样如此。通过method区分是什么操作-get 表示获取资源-post 表示新增-put/patch表示更新-delete表示删除按照这样规范的确比较好,但是如果...

2020-04-26 21:24:29 303

原创 Python中pip安装与使用

一.Pip的安装方法1.在Windows中的安装方法操作环境: Windows:Windows10 Python:Python3.7其实你在安装python的时候,pip就随同一起安装了。一般情况下,可以直接使用,如果不能使用,基本上就是没有添加环境变量而已。添加下环境变量就可以正常使用了。C:\Users\xxx1\AppData\Local\Programs\Python\Py...

2020-03-02 22:15:56 3744

原创 解决 Linux终端光标丢失问题

安装完Windows10子系统Ubuntu后,进行输入命令的时候,发现没有光标显示,最先以为子系统就是这样,没有光标,就勉强的用着,几个小时以后,实在受不了,网上一查,原来光标的显示和隐藏是可以控制的。隐藏光标echo -e "\033[?25l"显示光标echo -e "\033[?25h"...

2020-03-02 19:04:50 1514 1

原创 Windows10下Linux子系统文件访问方法(Windows与Linux相互访问文件)

一、在Windows10环境下访问Ubuntu文件系统Windows10环境下可以直接读取Ubuntu内的文件,但是不能往里面写入文件,在资源管理器中直接就可以访问。C:\Users\xxx1\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc\LocalState\rootfs\hom...

2020-03-01 20:38:36 2463 1

原创 安装 windows10 子系统ubuntu(不需要一行代码)

Window10 系统已经够好了,为什么还要在windos10系统里面安装Linux系统呢?简单说,就是linux的命令行强呗,至少我使用windows10子系统linux是因为这点。其实其他的原因还有很多,你可以慢慢使用慢慢发现。那就开始安装吧一.查看windows版本环境: windos10(我的windows10 OS内核版本18363.657)这里简单的说下,怎么查看windows...

2020-03-01 20:26:42 339

原创 Ubuntu 配置国内源(清华大学源)高速apt-get更新源

一.查询Ubuntu 版本查询版本命令 lsb_release -a,我的版本是 Ubuntu 18.04.4 LTSlsb_release -aNo LSB modules are available.Distributor ID: UbuntuDescription: Ubuntu 18.04.4 LTSRelease: 18.04Codename: ...

2020-02-29 12:00:07 3642

Centos+Django+Uwsgi+Nginx(所有软件包)

Centos+Django+Uwsgi+Nginx(所有软件包,包括rpm软件包和pip包)。uwsgi 2.0.19.1,Django3.1.2 ,Python3.6.5,mysql5.7,nginx1.18.0

2020-10-23

空空如也

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

TA关注的人

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