TOPIC

磷光与烟火逆流

一个敲代码的程序猿

摘要: CASE WHEN 在 SELECT 中的使用 # Case搜索函数 select a,case when len(b)>5 then '' else b end b from table # 简单Case函数 select case a when 'name' then '姓名' when 'hi 阅读全文
posted @ 2021-05-20 16:09 Jacobyang 阅读(146) 评论(0) 推荐(0) 编辑
摘要: Redis借鉴了Linux操作系统对于版本号的命名规则: 版本号第二位如果是奇数,则为非稳定版本(例如2.7、2.9、3.1),如果是偶数,则为稳定版本(例如2.6、2.8、3.0、3.2), 当前奇数版本就是下一个稳定版本的开发版本,例如2.9版本是3.0版本的开发版本,所以我们在生产环境通常选取 阅读全文
posted @ 2021-05-20 14:10 Jacobyang 阅读(508) 评论(0) 推荐(0) 编辑
摘要: Pandas Series # 创建Series实例 import pandas as pd a = [1,2,3] myvar = pd.Series(a) print(myvar) 0 1 1 2 2 3 dtype: int64 # 指定index b = ["Google", "Runoob 阅读全文
posted @ 2021-05-14 18:05 Jacobyang 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 数据库事务 数据库事务( transaction)是访问并可能操作各种数据项的一个数据库操作序列,这些操作要么全部执行,要么全部不执行,是一个不可分割的工作单位。例如,在新增数据A后更新数据B,当更新数据B失败后,要回滚数据库,使得数据A不能新增到数据库中,这就是数据的原子性。 原子性(Atomic 阅读全文
posted @ 2021-05-14 16:30 Jacobyang 阅读(2479) 评论(0) 推荐(0) 编辑
摘要: join 连表查询时如何转化成dict # 思路:获取结果对应的列名 使用列表生成式生成对应格式的数据类型 results = session.query(user).join(user_role,user_role.user_id==user.id).all() result_dict = [di 阅读全文
posted @ 2021-05-12 15:28 Jacobyang 阅读(1493) 评论(0) 推荐(0) 编辑
摘要: 1.缓存击穿 什么是缓存击穿 缓存击穿和缓存穿透从名词上可能很难区分开来,它们的区别是:穿透表示底层数据库没有数据且缓存内也没有数据,击穿表示底层数据库有数据而缓存内没有数据。 当热点数据key从缓存内失效时,大量访问同时请求这个数据,就会将查询下沉到数据库层,此时数据库层的负载压力会骤增,我们称这 阅读全文
posted @ 2021-05-06 15:01 Jacobyang 阅读(2052) 评论(0) 推荐(0) 编辑
摘要: import urllib import json import time import threading import requests class Presstest(object): """ 并发压力测试 """ def __init__(self, press_url): self.pre 阅读全文
posted @ 2021-04-27 18:38 Jacobyang 阅读(77) 评论(0) 推荐(0) 编辑
摘要: 微服务 微服务:将某个模块拆成单独的服务 缺点:代码量增多 (每个服务间进行交互)开发时间增加 毕竟要考虑怎么拆分 特点: 1.单一职责 2.轻量级通信 :http rpc 非轻量级:java RMI 3.隔离性:每个服务相互隔离,互不干扰 4.有自己的数据:每个项目可以有自己独立的数据库 互相不影 阅读全文
posted @ 2021-04-24 16:04 Jacobyang 阅读(335) 评论(0) 推荐(0) 编辑
摘要: pandas read 系列 之 如何读取较大的数据 使用chunksize 参数 函数返回iterator可迭代对象 data = pd.read_sql( """ select * from youtable """, db.session.bind, chunksize=20) lis = [ 阅读全文
posted @ 2021-04-20 16:12 Jacobyang 阅读(679) 评论(0) 推荐(0) 编辑
摘要: git 分支管理 创建新的分支 git branch name # 直接创建新的分支 git checkout name # 切换到新的分支 git branch -D name # 删除分支 将代码提交到新的分支 git add . git commit -m '备注' git push -u o 阅读全文
posted @ 2020-08-25 11:16 Jacobyang 阅读(3) 评论(0) 推荐(0) 编辑
摘要: Redis: 一个key或是value大小最大是512M redis单个实例最多能存多少个key键,每个值能存储多少个元素? 解决方法: What is the maximum number of keys a single Redis instance can hold? and what is 阅读全文
posted @ 2020-08-17 20:13 Jacobyang 阅读(1045) 评论(0) 推荐(0) 编辑
摘要: 环境搭建 1 创建虚拟环境 cd ~/Desktopmkvirtualenv project 如果自己的开发机子中存在多个版本的python,则可以指定解析器的版本 mkvirtualenv project -p python3 2 相关命令复习 创建虚拟环境: mkvirtualenv 虚拟环境名 阅读全文
posted @ 2020-06-11 09:25 Jacobyang 阅读(171) 评论(0) 推荐(0) 编辑
摘要: nginx 安装命令: sudo apt-get install nginx 安装好的文件位置: /usr/sbin/nginx # 主程序目录​/etc/nginx # 存放配置文件目录​/usr/share/nginx # 存放静态文件目录​/etc/nginx/sites-available 阅读全文
posted @ 2020-06-11 09:21 Jacobyang 阅读(499) 评论(0) 推荐(0) 编辑
摘要: nvm 由于node.js的版本一直处于不断更新中,所以我们需要一个版本管理器来更好的使用node.js。 nvm是一个开源的node版本管理器,通过它,你可以下载任意版本的node.js,还可以在不同版本之间切换使用。 注意:安装nvm之前,要确保当前机子中不存在任何版本的node,如果有,则卸载 阅读全文
posted @ 2020-06-11 09:20 Jacobyang 阅读(3155) 评论(0) 推荐(0) 编辑
摘要: virtualenvs 默认情况下ubuntu18.04版本中已经内置了Python3.6.7了。但是没有内置pip。所以先安装pip。 sudo apt install python3-pip 安装虚拟环境 pip3 install virtualenvpip3 install virtualen 阅读全文
posted @ 2020-06-11 09:11 Jacobyang 阅读(179) 评论(0) 推荐(0) 编辑