Skip to content

Instantly share code, notes, and snippets.

View banjin's full-sized avatar
🏠
Working from home

songhm banjin

🏠
Working from home
View GitHub Profile
@banjin
banjin / setup-python3.8-via-ppa.sh
Created November 12, 2021 08:07 — forked from ptantiku/setup-python3.8-via-ppa.sh
Setup Python3.8 in Ubuntu Xenial (16.04 LTS). The python version was fixed at Python 3.5.1
#!/bin/sh
# install PPA
sudo add-apt-repository ppa:deadsnakes/ppa
# update and install
sudo apt update
sudo apt install python3.8 python3.8-dev python3.8-venv
# setup alternatives
upstream back_server{
ip_hash;
server 127.0.0.1:8000;
}
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
1. 卸载Cloudera-Manager
sudo /usr/share/cmf/uninstall-cloudera-manager.sh 一直选择Yes 就好
卸载完成后,它会问你是否要将database里的数据清理,选择Yes
2. 如果没有uninstall-cloudera-manager.sh
所有的操作都是在root权限下进行
硬件环境
一台master
内存: 14G
操作系统 ubuntu 16.04 xenial
硬盘: 500G
@banjin
banjin / .gitconfig
Created October 22, 2019 10:07
默认gitconfig配置
1 [user]
2 email = ''
3 name = ''
4 emal = ''
5 [core]
6 excludesfile = ~/.gitignore_global
7 [difftool "sourcetree"]
8 cmd = opendiff \"$LOCAL\" \"$REMOTE\"
9 path =
忽略抛出的异常:
常用的写法:
try:
os.remove('somefile.tmp')
except OSError:
pass
# Ubuntu
sudo apt-get -y install git gcc make libpcap-dev
git clone https://github.com/robertdavidgraham/masscan
cd masscan/
make
sudo make install
@banjin
banjin / nginx ip_hash策略
Last active September 16, 2023 09:39
在工作中经常使用Nginx的IP_hash策略做负载均衡,所以记录一下使用中的疑惑。
当对后端的多台动态应用服务器做负载均衡时,ip_hash指令能够将某个客户端IP的请求通过哈希算法定位到同一台后端服务器上。这样,当来自某个IP的用户在后端Web服务器A上登录后,再访问该站点的其他URL,能够保证其访问的还是后端Web服务器A。
如果不采用ip_hash指令,假设来自某个IP的用户在后端Web服务器A上登录后,再访问该站点的其他URL,有可能被定向到后端Web服务器B,C...上,由于用户登录后SESSION信息是记录在服务器A上的,B,C...上没有,这时就会提示用户来登录
在ip_hash策略中,它选择最初的server的方法是根据请求客户真个IP计算出一个哈希值,再根据哈希值选择后台的服务器。
1)由IP计算哈希值的算法如下, 其中公式中hash初始值为89,iphp->addr[i]表示客户真个IP, 通过三次哈希计算得出一个IP的哈希值:
  for (i = 0; i < 3; i++) {
  hash = (hash * 113 + iphp->addr[i]) % 6271;
@banjin
banjin / zeromq的几种模式
Created January 18, 2019 05:58
记录几种zmq的实现模式
Request-Reply模式:
server端:
#!/usr/bin/env python
# -*- coding=utf-8 -*-
import zmq
import random
@banjin
banjin / Linux 常用命令
Last active January 18, 2019 01:49
记录一些linux的常用命令
系统
# uname -a # 查看内核/操作系统/CPU信息
# head -n 1 /etc/issue # 查看操作系统版本
# cat /proc/cpuinfo # 查看CPU信息
# hostname # 查看计算机名
# lspci -tv # 列出所有PCI设备
# lsusb -tv # 列出所有USB设备
# lsmod # 列出加载的内核模块
# env # 查看环境变量