Finology 大数据金融

通过大数据以量化金融

nc 用于和服务器建立连接。

在Ubuntu上面做实验

启动一个终端

1
$ nc www.baidu.com 80

再开启另一个终端

1
$ netstat -antp
1
2
3
4
5
6
7
8
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN -
tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN -
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN -
tcp 0 0 127.0.0.1:39351 0.0.0.0:* LISTEN -
tcp 0 0 172.16.64.227:33574 111.3.88.228:80 TIME_WAIT -
tcp 0 0 172.16.64.227:48534 36.152.44.95:80 ESTABLISHED 3366/nc

可以看到最后一行,已经建立了一个TCP连接。

在刚才连接好百度服务器的终端上面,按http协议,请求百度首页。GET / HTTP/1.0并连续输入两个回车。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
$ nc www.baidu.com 80
GET / HTTP/1.0

HTTP/1.0 200 OK
Accept-Ranges: bytes
Cache-Control: no-cache
Content-Length: 9508
Content-Type: text/html
Date: Sun, 20 Mar 2022 05:48:08 GMT
P3p: CP=" OTI DSP COR IVA OUR IND COM "
P3p: CP=" OTI DSP COR IVA OUR IND COM "
Pragma: no-cache
Server: BWS/1.1
Set-Cookie: BAIDUID=D9BC4FD3680ED7E670988E2B1D948396:FG=1; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com
Set-Cookie: BIDUPSID=D9BC4FD3680ED7E670988E2B1D948396; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com
Set-Cookie: PSTM=1647755288; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com
Set-Cookie: BAIDUID=D9BC4FD3680ED7E6F640384383D296BE:FG=1; max-age=31536000; expires=Mon, 20-Mar-23 05:48:08 GMT; domain=.baidu.com; path=/; version=1; comment=bd
Traceid: 1647755288023296769011190918765782309790
Vary: Accept-Encoding
X-Frame-Options: sameorigin
X-Ua-Compatible: IE=Edge,chrome=1

<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"><meta content="always" name="referrer"><meta name="description" content="全球领先的中文搜索引擎、致力于让网民更便捷地获取信息,找到所求。百度超过千亿的中文网页数据库,可以瞬间找到相关的搜索结果。">
...

写一个SocketDemo Server端程序,开启一个监听。

-ff 追踪线程和子线程
-o output

1
$ strace -ff -o ./out java SocketDemo 

通过jps或netstat可以看到一个pid

1
$ cd /proc/[pid]

fd目录下面,可以看到开启了多少个IO。

io流
/dev/pts/0 标准输入
/dev/pts/1 标准输出
/dev/pts/2 标准报错

1
ulimit -a

open files 1024

task目录,显示所有的线程

追踪一下redis的多路复用

1
$ strace -ff -o ./redis-out bin/redis-server config/server.properties

通过netstat查看进程监听状态
通过/proc/[pid]查看 fd 和 task,可以看到redis是多线程的。

Windows 10 安装 vnpy 2.7.0,报错:

1
2
3
4
5
6
7
8
9
10
Traceback (most recent call last):
File "run.py", line 5, in <module>
from vnpy.trader.ui import MainWindow, create_qapp
File "C:\ProgramData\Miniconda3\lib\site-packages\vnpy\trader\ui\__init__.py", line 11, in <module>
from .mainwindow import MainWindow
File "C:\ProgramData\Miniconda3\lib\site-packages\vnpy\trader\ui\mainwindow.py", line 28, in <module>
from .editor import CodeEditor
File "C:\ProgramData\Miniconda3\lib\site-packages\vnpy\trader\ui\editor.py", line 4, in <module>
from PyQt5 import QtWidgets, Qsci, QtGui
ImportError: cannot import name 'Qsci' from 'PyQt5' (C:\ProgramData\Miniconda3\lib\site-packages\PyQt5\__init__.py)

解决方案:

1
pip install QScintilla

电脑和pad我都是使用的iOS的,不过手机我却一直在用Android。并不是说苹果手机不好,我想以更加开放的心态,接受更多优秀的事物。

我目前使用的手机是小米Mi 9,存储一共128G。用了几年,发现有个问题,手机存储不够了。

微信和QQ占用的存储非常大,大几十个G。有时候通过百度网盘看一些视频,所以缓存也非常大。

之前我都是手工删除一些大文件,但微信占用空间的越来越大,已经影响到我使用手机的效率了,所以必须要彻底清理一下。

备份微信数据

微信数据分为聊天数据和非聊天数据(图片、视频和其他文档)

备份非聊天数据

通过USB把手机连到mac上,使用Commander One软件,把如下几个文件夹的文件拷出来备份。

Android/data/com.tencent.mm/MicroMsg/Download

Pictures/WeiXin

下面两个是老版本的微信放文件的地址

tencent/MicroMsg/Download

tencent/MicroMsg/WeiXin

备份聊天数据

装一个微信电脑版本,上面有备份聊天记录的功能。

微信还有一个自带的清除缓存的功能,可以降低很多空间,而且聊天记录还保存着,只是历史的图片打不开了。

0%