学习心得,笔记,资源汇总等.
Author: huzhi
-
pool - Python 进程池,线程池,连接池等的实现方法
-
Python并行编程(如何选择并行编程的模型??)
- 基于线程的并行 -
threading
- 基于进程的并行 -
multiprocessing
- 异步编程 -
async
concurrent
gevent
- 分布式Python -
celery
RPC
- GPU 编程 -
Numba
PyCUDA
PyOpenCL
- 基于线程的并行 -
-
Python 源码阅读
-
深入理解 Python ( 参考 流畅的Python )
- Python 数据模型
- Python 数据结构
- Python 函数
- Python 面向对象
- Python 风格的对象
- Python 抽象基类
- Python 多继承
- Python流程控制
- 可迭代对象、迭代器和生成器
- 上下文管理器和else块
- 协程
- 元类编程
- 动态属性和特性
- 属性描述符
-
python-patterns - 常见设计模式UML类图说明-Python实现
-
learn-wsgiref -
wsgi
规范UML说明和相关实现 -
first-diy-framework - 自定义 Python 框架和
asyncio
实现 -
lsbaws - 使用
socket
构建简单的web
服务器 -
learn_bottle -
bottle
框架中常见类的UML图 -
pyguide - python代码规范
-
thread_signal - 线程响应
ctrl+c
信号退出 -
data_analysis -
Numpy
、Pandas
、Scipy
、Matplotlib
的使用方法(参考文档) -
records - 使用 UML 类图说明
records
设计架构 -
SQLAlchemy example -
SQLAlchemy
示例说明 SQLAlchemy 的使用方法 -
Python 虚拟环境
- 解决依赖包问题: virtualenv
- 解决 python 版本问题: pyenv
-
性能测试
-
web请求参数验证
-
解析大的 XML 文件
- 分段读取文件内容
- 在文件内容中做数据冗余
-
shell 编程
-
pure-bash-bible - shell 字符串,变量,循环,文件处理等的高效处理方法
-
shell - shell代码规范
-
-
Linux 网口相互绑定 bond
-
Linux常见命令使用示例
-
Linux-Explore - 了解Linux服务器
-
OpenSSL、gpg(gpg私钥免密码如何实现??)
-
firewall、iptables
-
Linux 网络设备
-
whiptail - 创建交互式shell脚本对话框
-
nginx 增量部署添加新的模块(nginx -V)
-
事务特性
-
事务并发时的问题
-
脏读
-
不可重复读
-
幻读
-
-
事务隔离级别(事务隔离级别测试准备工作) (为什么要有四种事务隔离级别?)
-
异步处理
-
错误日志、通用查询日志、慢查询日志、二进制日志、中继日志、DDL 日志
-
索引条件下推(Index Condition Pushdown)
-
数据库分库分表方案
-
MySQL的压测工具 - mysqlslap
- Docker 基础命令
- docker compose
- Docker 在单一主机上的网络原理
- docker 网络追踪
- Docker 跨主机访问原理
- docker swarm
- Swarm mode 与 Docker Swarm 的差异及改进之处
- storage driver,写时复制
- Docker 数据管理
- Docker/Kubernetes线路图
- Linux 容器技术基础
- kubernetes
- Kubernetes API
- Docker 的 Image 文件是分层的,本文简单介绍怎么查看每一层的内容,它们又是怎么组合成一个可以运行的 Image 文件
- 通过控制分层来缩小 Image 文件尺寸
- docker 的优点和缺点,反对声音
- https://github.com/lanzhiwang/awesome-huzhi/blob/master/docker/Docker_Pros_and_Cons.md
- http://apachebooster.com/kb/what-are-the-advantages-and-disadvantages-of-docker/
- http://www.smashcompany.com/technology/why-would-anyone-choose-docker-over-fat-binaries
- http://dockone.io/article/5520
- http://www.smashcompany.com/technology/docker-is-a-dangerous-gamble-which-we-will-regret
- https://thehftguy.com/2016/11/01/docker-in-production-an-history-of-failure/
- dockerfile 最佳实践
- IMAP/POP3/STMP 协议
- 邮件头信息解析规则和常见头字段
- 如何区分并不同的MUA和MTA添加的头信息??
- Python实现的简单邮件客户端实现获取邮件
- IMAP/POP3/STMP pacp 包
- smtp 响应状态码
- 实现高性能、安全邮件服务器??
- 反爬虫??
- 邮件服务器添加 SPF、DKIM、DMARC、PTR 提高送达率
- 通过头信息识别垃圾邮件的方法
-
Etcd
-
Redis
- Redis 目标分类
- Redis 客户端与服务端通信协议
- Redis 事件模型
- redis-cli 常用命令
- Redis 数据类型
- bit 操作、过期时间、sort、管道操作、事务、发布订阅、在redis中使用lua脚本
- Redis 复制
- Redis 持久化 RDB 和 AOF
- Redis 哨兵和集群
- Redis 数据分片解决方案对比
- Redis在实践过程中需要考虑的问题以及解决方案
- redis 的缺点(主要是内存浪费、集群问题、Redis单线程对 CPU 的利用率不高)
- Redis 实现分布式锁
- Redis 中的乐观锁和悲观锁
- Redis 内存模型
- Redis 中的写时复制机制
- Redis 内存碎片化的原因
- 使用 docker 搭建 redis 集群和哨兵
- Sentinel 进程是如何坚持到从服务器和其他哨兵实例的(毕竟我们只在配置文件中指定了主实例的信息)?
-
- 优化 MongoDB 索引
- MongoDB 复制集的主从选举机制和主从同步机制??
- MongoDB 的分片机制??
- primary shard 是怎样选举的??
- MongoDB 的 balancer 机制??
- 分片的 chunks 功能是怎样实现的??
- mongos 元数据是怎样生成的??
- 优化 MongoDB 索引
-
Elasticsearch
-
Ansible
-
- kafka 消息发布订阅基本过程
- Kafka 深度解析
- kafka 高性能的基本原因
- 顺序读写磁盘,顺序读写磁盘效率比随机写内存还要高,这是Kafka高吞吐率的一个很重要的保证
- partition 水平扩展
- 仅仅元数据序列化和反序列号
- 用户态和内核态交互少
- Kafka提供两种策略去删除旧数据。一是基于时间,二是基于partition文件大小,减少磁盘IO
- Kafka broker是无状态的,它不需要标记哪些消息被哪些consumer过,不需要通过broker去保证同一个consumer group只有一个consumer能消费某一条消息,因此也就不需要锁机制,这也为Kafka的高吞吐率提供了有力保障
- 复制机制采用 "in sync" 机制,复制机制即不是同步复制,也不是单纯的异步复制
- Kafka分区机制介绍与示例
- kafak 相关问题
-
jenkins
-
Hadoop生态
- Hadoop
- HDFS-文件系统
- MapReduce-计算框架
- Yarn-调度器
- Zookeeper-类似于etcd
- Hive-通过SQL简化MapReduce操作
- Pig-通过pig语言简化MapReduce操作
- Hue-通过web页面操作HDFS,MapReduce,hive等
- Oozie-类似于Yarn
- Sqoop-将关系型数据库数据导入Hadoop
- Flume-将日志导入Hadoop
- Kafka-队列
- Hbase-数据库
- Spark-流式计算框架
-
Storm
-
分布式理论
-
分布式系统存在的问题
-
分布式协议(一致性协议,用于保证一致性)
- 二阶提交协议(Two Phase Commitment Protocol)
- 三阶提交协议(Three Phase Commitment Protocol)
- Paxos
- Raft
- raft-zh_cn
-
分布式实现
- 分布式文件系统
- 一致性hash
- 分布式 id 生成器
- 分布式锁
- 分布式配置管理
- 分布式爬虫
-
php_di - 简单的 PHP 依赖注入示例
-
database_connection_pool - 在 PHP 中使用 pdo 驱动和 gearman 实现的数据库连接池
-
FastRoute - PHP 框架中的路由实现
-
curl_handle - PHP 扩展
curl
封装 -
guzzle - PHP 中
HTTP
请求的客户端封装 -
firstFramework - 自定义 PHP 框架
- go-example - go example
- go-design-patterns - 常见设计模式UML类图说明-go实现
- web 自定义框架
- go 模块介绍
- Go 语言的优缺点
- Go 语言的语法和各种细节的开源电子书,深入彻底地了解 Go
- 百万 Go TCP 连接的思考
- 内置库
- go get 自动代理
-
AndroidViewClient - 获取安卓界面上的控件坐标用于沙箱运行
-
apk-Dynamic-Analysis - 常见APK逆向分析工具使用方法
-
android-emulator - docker 运行安卓模拟器
-
安卓常见逆向工具列表
-
Android Studio
-
android-sdk
-
Apktool
-
Dex2jar/JD-GUI
-
Burp suite
-
Drozer
-
QARK
-
Droid Explorer
-
Cydia substrate/Introspy
-
Frida
-
Inspeckage
-
cuckoo
-
wifiphisher
-
- 人工智能、机器学习、深度学习的关系
- 机器学习常见算法
线性回归模型
、逻辑回归模型
、卷积神经网络(CNN)
等模型的数学公式 :循环神经网络(RNN)
的数学公式常见算法 :- 代码学习
- fastText 使用示例
- 《Python神经网络编程》
- 《TensorFlow学习指南:深度学习系统构建详解》
- tensorflow_cookbook
- 《深度学习入门 基于Python的理论与实现》
- 机器学习50个最佳免费数据集
- cuda
y = (wx + b) + noise
h$_{t}$ = \tanh(W$_{x}$x$_{t}$ + W$_{h}$h$_{t-1}$ + b)
# http://www.codecogs.com/latex/eqneditor.php
- tcp/ip - tcp 连接和断开过程以及过程中进程的状态
- 长连接和短连接
- nginx 支持长连接
- system-design-primer - 设计可扩展系统
- 代码整洁之道
- HTTPS图解
- HTTP Status Codes
- 什么时候使用单例模式,为什么要使用单例模式
- DNS 记录
- linux 内存分配
-
jstips - 常见 JavaScript 陷阱
-
w3c school
-
前端浏览器(各种浏览器的性能测量以及性能损耗问题?)
-
数据可视化
- JavaScript数据可视化编程
-
Hack - 编程专用字体
-
ffmpeg - ffmpeg 是一个非常快速的视频和音频转换器,也可以从现场音频/视频源获取。 它还可以在任意采样率之间进行转换,并使用高质量的多相滤波器动态调整视频大小。
-
thumbor - Thumbor是一种智能成像服务。 它支持按需裁剪,调整大小和翻转图像。
-
you-get - 视频、音频、图片下载工具
-
asciify - Convert Images into ASCII Art with the power of Python
-
face_recognition - 人脸识别
-
Markdown
-
Python
-
图灵程序设计丛书:Python基础教程(第3版)
-
Python 高级编程(第2版)
-
流畅的Python (图灵程序设计丛书)
-
Effective Python:编写高质量Python代码的59个有效方法
-
Python 并行编程手册
-
Python 参考手册
-
Python核心编程(第3版)
-
Python编程之美(最佳实践指南)
-
Python网络编程攻略 (图灵程序设计丛书)
-
Python极客项目编程
-
Flask Web开发 基于Python的Web应用开发实战 (图灵程序设计丛书)
-
Python Web开发 测试驱动方法 (图灵程序设计丛书)
-
Python数据分析基础教程:NumPy学习指南(第2版)
-
Python数据可视化编程实战 第2版
-
Selenium自动化测试 基于 Python 语言
-
Python高手之路
-
-
Linux
-
鸟哥的Linux私房菜:基础学习篇(第3版)
-
鸟哥的Linux私房菜:服务器架设篇
-
Linux Shell脚本攻略 第3版
-
Shell 从入门到精通
-
UNIXLinux系统管理技术手册 第4版
-
Linux Performance and Tuning Guidelines
-
奔跑吧 Ansible
-
-
Docker
- 第一本Docker书
- Docker经典实例 (图灵程序设计丛书)
- 每天5分钟玩转Docker容器技术
- 每天5分钟玩转Kubernetes
- 容器即服务:从零构建企业级容器集群
- Kubernetes权威指南:企业级容器云实战
-
go
-
The Go Programming Language (英语)
-
Go并发编程实战(第2版)
-
Go语言入门经典
-
Go语言实战
-
Go Web编程
-
微服务设计
-
-
MySQL
-
高性能MySQL(第3版)
-
MySQL数据库入门
-
MySQL技术内幕(第5版)
-
深入浅出MySQL:数据库开发、优化与管理维护(第2版)
-
-
Android
-
Android安全攻防实践
-
Android恶意代码分析与渗透测试
-
-
other
-
Kafka权威指南
-
Redis 4.x Cookbook中文版
-
Redis 深度历险 核心原理和应用实践
-
写给大忙人的Hadoop 2
-
大型网站技术架构:核心原理与案例分析
-
Wireshark网络分析的艺术
-
HTTP权威指南
-
数学之美(第二版)
-
啊哈!算法
-
图解密码技术(第3版)
-
深入理解计算机系统(原书第3版)
-
从Paxos到Zookeeper:分布式一致性原理与实践
-