0%

postman上传
//Content-Length:375
Content-Type:multipart/form-data
form-data key 和原请求的对应

不用shell新开终端窗口时执行的.bashXxx是不一样的,一直以为mac也是 .bashrc
但要看shell

1
2
echo $SHELL
env

/bin/zsh
所以要写在 ~/.zshrc 里,终于弄清楚了!

govendor 项目,goland的 Go -> Go Modules -> Enable Go modules integration 不能勾选

content-length导致的问题

1
2
-H 'Content-Length: 107' \

在go里直接用exec执行curl,用replace替换参数来快速造数据,结果一直遇到

1
2
{"code":400,"desc":"\u003cMalformed.JSON\u003e error at parsing json: unexpected end of JSON input","errcode":"Malformed.JSON","type":"Malformed"}

一直以为是json参数有问题,但最后才明白,是Content-Length还是之前的,没重新计算导致的

重定向,如果 >> 不生效,可能是因为程序使用了标准错误输出,就使用 >> nohup.out 2>&1

1
while true; do /usr/local/ones-ai-bi-sync/bin/etl/ones-bi-sync-etl -s status >> nohup.out 2>&1; LD_LIBRARY_PATH='' clickhouse-client -m --port 8122 --user default --password default --query "SELECT value / (1024 * 1024) AS value_MB FROM system.metrics WHERE metric = 'MemoryTracking';" >> nohup.out; sleep 5; done

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
cd ~
mkdir -p mydata/mysql-master/log
mkdir -p mydata/mysql-master/data
mkdir -p mydata/mysql-master/conf
mkdir -p mydata/mysql-slave/log
mkdir -p mydata/mysql-slave/data
mkdir -p mydata/mysql-slave/conf
cd mydata/mysql-master/conf
vi my.cnf

docker pull --platform linux/x86_64 mysql:5.7.30
docker run -p 3307:3306 --name mysql-master \
-v ~/mydata/mysql-master/log:/var/log/mysql \
-v ~/mydata/mysql-master/data:/var/lib/mysql \
-v ~/mydata/mysql-master/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:5.7.30

docker run -p 3308:3306 --name mysql-slave \
-v ~/mydata/mysql-slave/log:/var/log/mysql \
-v ~/mydata/mysql-slave/data:/var/lib/mysql \
-v ~/mydata/mysql-slave/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:5.7.30


docker exec -it mysql-master mysql -uroot -p123456 -e "CREATE USER 'slave'@'%' IDENTIFIED BY '123456';"
docker exec -it mysql-master mysql -uroot -p123456 -e "GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%';"

docker exec -it mysql-slave mysql -uroot -p123456 -e "change master to master_host='host.docker.internal', master_user='slave', master_password='123456', master_port=3307, master_log_file='mall-mysql-bin.000003', master_log_pos=617, master_connect_retry=30;"
docker exec -it mysql-slave mysql -uroot -p123456 -e "START SLAVE;"
docker exec -it mysql-slave mysql -uroot -p123456 -e "show slave status \G;"

docker exec -it mysql-slave mysql -uroot -p123456 -e "STOP SLAVE IO_THREAD FOR CHANNEL '';"

docker exec -it mysql-master mysql -uroot -p123456 -e "CREATE DATABASE testdb;"
docker exec -it mysql-master mysql -uroot -p123456 -e "USE testdb; CREATE TABLE testtable (id INT NOT NULL PRIMARY KEY); INSERT INTO testtable (id) VALUES (1);"
docker exec -it mysql-slave mysql -uroot -p123456 -e "SELECT * FROM testdb.testtable;"
docker exec -it mysql-master mysql -uroot -p123456 -e "USE testdb; INSERT INTO testtable (id) VALUES (2);"


获取gorountine id

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
func GetGoid() int64 {
var (
buf [64]byte
n = runtime.Stack(buf[:], false)
stk = strings.TrimPrefix(string(buf[:n]), "goroutine")
)

idField := strings.Fields(stk)[0]
id, err := strconv.Atoi(idField)
if err != nil {
panic(fmt.Errorf("can not get goroutine id: %v", err))
}

return int64(id)
}

yum 安装clickhouse一直报证书校验错误的问题,有缓存

1
find /var/lib/yum/repos/ /var/cache/yum/ -name 'clickhouse-*' -type d -exec rm -rf {} + 

centos 安装 trojan记录

  1. 从shadowsock上复制配置
    点击齿轮图标 icon-config.png 打开单节点的配置窗口,点击 复制配置 即可复制节点配置
    ssl 的 verfiy 改为 false,我觉得应该不用改,可以验证一下

  2. 启动后我以为就是设置http_proxy为127.0.0.1:1080
    其实不是,1080是socks5的,要再下载一个privoxy

    1
    2
    yum install -y privoxy

  3. 改privoxy配置

    1
    2
    3
    4
    vim /etc/privoxy/config
    # 末尾增加下面内容,/后面是代理服务器的地址:端口,注意最后还有个.

    forward-socks5t / 127.0.0.1:1080 .
  4. 启动privoxy

    1
    systemctl start privoxy
  5. 设置http_proxy

    1
    2
    3
    export https_proxy=http://127.0.0.1:8118
    export http_proxy=http://127.0.0.1:8118
    export all_proxy=http://127.0.0.1:8118
  6. 这时再去访问openai网站

    1
    2
    3
    4
    5
    6
    7
    8
    curl https://api.openai.com/v1/chat/completions \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer YOUR_API_KEY' \
    -d '{
    "model": "gpt-3.5-turbo",
    "messages": [{"role": "user", "content": "Hello!"}]
    }'

  7. 参考
    Centos7 客户端使用Trojan代理配置

GPT-3是由OpenAI开发的自然语言处理模型,于2020年发布。以下是相关论文列表:

Brown, T. B., Mann, B., Ryder, N., Subbiah, M., Kaplan, J., Dhariwal, P., … & Amodei, D. (2020). Language models are few-shot learners. arXiv preprint arXiv:2005.14165.
Radford, A., Wu, J., Child, R., Luan, D., Amodei, D., & Sutskever, I. (2019). Language models are unsupervised multitask learners. OpenAI blog, 1(8), 9.
Radford, A., Narasimhan, K., Salimans, T., & Sutskever, I. (2018). Improving language understanding by generative pre-training. URL https://s3-us-west-2. amazonaws. com/openai-assets/researchcovers/languageunsupervised/language_understanding_paper. pdf.
Brown, T. B., Mann, B., Ryder, N., Subbiah, M., Kaplan, J., Dhariwal, P., … & Amodei, D. (2020). A large-scale study of representation learning with the transformer model. arXiv preprint arXiv:2012.15723.

其中,Brown等人在第一篇论文中介绍了GPT-3的设计和实现,提出了“few-shot learning”的思路,并通过大量实验验证了该模型的优异表现;而Radford等人在第二、三篇论文中提出了基于无监督学习的预训练方法,并演示了其在多任务学习和生成领域的应用;最后一篇论文则是对GPT-3模型进行了更深入的实验研究,探究了其表示学习能力和泛化性能等方面的特点。