thrift安装与使用 1. thrift 安装下载地址:https://dlcdn.apache.org/thrift/0.16.0/下载之后加入到环境变量中,检测是否可用thrift --version2. thrift基础语法2.1 支持的基础类型byte: 有符号字节i16: 16位有符号整数i32: 32位有符号整数i64: 64位有符号整数double: 64位浮点数string: 字符串2.2 支持的容器类型list: 一系列由T类型的数据组成的有序列表,元素可以重复;set:
《操作系统实战45讲》学习笔记 文章目录1. 计算机中资源分类1.1 硬件资源1.2 软件资源2. 宏内核和微内核2.1 宏内核2.2 微内核3. 常见系统内核架构3.1 Linux3.2 Darwin3.3 Windows NT3.4 对比4. CPU工作模式4.1 实模式4.2 保护模式4.3 长模式1. 计算机中资源分类计算机中资源大致可以分为两类资源,一种是硬件资源,一种是软件资源1.1 硬件资源总线,负责连接各种其它设备,是其它设备工作的基础。CPU,即中央处理器,负责执行程序和处理数据运算。内存,负责储存运行
Go降龙十八式 1. 项目私有包当项目多时一些项目定义的常量和函数如果不想被别的项目引用到,那么你可以在项目目录下建一个 internal 的文件夹,然后将不想被别人引用的都放到该文件夹下,在Go语言中 internal 下面的东西只能本项目使用,无法被其他项目引用2. 私有接口如果你定义了一个接口,不想被其他包误实现的话,你可以给该接口定义一个私有函数。type Coder interface { i() // 定义一个私有函数,防止其他包误实现 Code()}3. 多系统如果某个功能,在window
七天用Go写个docker(网络篇) 0.docker网络实现docker网络分为两部分,一部分是docker与宿主机之间的通信,另一部分是docker与外部网络之间的通信。docker与宿主机之间的通信是通过veth和bridge虚拟网络接口实现的,而与外部网络通信是通过 iptables 流量转发实现的。1. veth和bridgeveth是一个虚拟的网络设备,它都是成对出现的,你可以把它理解成马里奥里面的水管,马里奥从一个水管进去,会从另一个水管里面出来,在这里,马里奥就是流量,这两个水管就是一对veth,我们看下实际操作先创
配置Vim的Go环境 1. 新建 ~/.vimrc 文件输入下面内容set fileencodings=utf-8,gb2312,gbk,gb18030set termencoding=utf-8set encoding=utf-8"==============================================================================" vim 内置配置"=====================================================
爬虫分析小技巧汇总 1. 不能开F12,有断点的有两种解决方案,1是禁止debug, 2.是 Never pause here禁止debug2.是 Never pause here在debug 此行处左边 鼠标右键,选择Never pause here2. url中参数加密全局搜索 url 路由分析该JS3. 请求头中加密全局搜索加密的key值分析可以看到 sessionid 是通过 访问 返回,那这个流程就很清楚了,先访问 http://match.yuanrenxue.c
autojs之淘宝养猫活动 //淘宝养猫活动// 手机高var height = device.height; // 手机宽度var width = device.width;setScreenMetrics(width, height);// 浏览速度速度var speed = 1;dialogs.alert("请确认无障碍和悬浮窗权限已开启作者:派大星版本号:v0.1");console.show();auto.waitFor();//打开活动页面log("正在打开淘宝");launch("
Elasticsearch基础命令使用 注:7.0之后,type默认都是_doc创建文档elasticsearch创建文档有两种方式,1是POST,2是PUT,post是让elasticsearch自动生成id,而通过put,我们可以自己指定id自动生成idPOST my_index/_doc{ "username": "pibigsrar" "age": 12}自定义id指定id为1(如果id已经存在,则直接报错)PUT my_index/_doc/1?op_type=create{ "username": .
goland debug高级技巧 1. 自定义表达式我们在debug期间想动态修改某个值,或查看某个函数返回的信息可以采用该方式点击这个,或按快捷键 option + fn + F8 则会弹出下面弹窗,在该处可自定义一些表达式进行执行。2. 断点条件当满足某个条件时,才会触发断点双指点击该处的断点即可弹出这个设置条件的框,此处我们设置 k == 2 时才断下来3. 智能步入如果你一行中有多个函数,如果你想进入某个函数,可以在该断行处按下快捷键 shift + fn + F7此处光标会在第一个函数上,通过左
Go打包静态资源文件 采用go-bindata来打包资源文件为go源码文件GitHub地址:https://github.com/go-bindata/go-bindata1. 安装go get -u github.com/go-bindata/go-bindata/......是指编译安装go-bindata目录下的所有的main函数2. 简单实用# 打包config目录下所有文件go-bindata config/# 打包config.yaml 文件go-bindata config.yaml命.
go中json使用小技巧总结 有的时候上游传过来的字段是string类型的,但是我们却想用变成数字来使用。 本来用一个json:",string" 就可以支持了,如果不知道golang的这些小技巧,就要大费周章了。参考文章:http://attilaolah.eu/2014/09/10/json-and-struct-composition-in-go/1. 临时忽略struct空字段type User struct { Email string `json:"email"` Password string
Go mod兼容性问题 模块在 Go 中确定了一个重要的原则,即 导入兼容性规则如果旧包和新包的导入路径相同,新包必须向后兼容旧的包所以一旦你依赖了某个包的两个版本,那么较低版本的将会被忽略。举个例子:项目 A 和 B 都 依赖 项目 C但项目A依赖的是项目的V2版本,项目B依赖的是项目C的V1版本一旦项目A去引用项目B,那么项目B的V1版本将会被忽略所以针对这个情况,我们依赖的项目如果做升级,一定要做兼容性升级,也就是你不能把项目C的V1版本里面的东西删掉如果说真的想删或者大改动怎么办?,你可以修改 go
Linux性能分析 文章目录1. 性能分析1.1 常用命令uptimempstatpidstat1.2 系统压测stress1. 性能分析1.1 常用命令uptime查询当前系统登录用户,以及系统平均负载(平均负载是指单位时间内,系统处于可运行状态和不可中断状态的平均进程数,也就是平均活跃进程数)uptime19:11:03 up 147 days, 2:02, 2 users, load average: 0.27, 0.07, 0.02分别为: 当前时间,系统目前登录用户数,系统 1分钟前,5分
七天用Go写个docker(完结篇) 今天是最后一天了,我们最后将容器的停止,删除功能实现一下容器停止在上一节中,我们通过config.json 记录了容器的基本信息,其中就有一个status字段用来记录容器的状态,和一个PID字段记录容器的init进程在宿主机上的Pid,我们停止容器,也就是将该pid进程杀死,并更新status状态即可// 停止容器,修改容器状态func StopContainer(containerName string) { info, err := getContainerInfo(container.
七天用Go写个docker(第六天) 今天主要来实现一下 go-docker ps 的功能,也就是查看当前有哪些容器,简单说下思路,当我们启动一个容器时就为该容器创建一个文件夹用来保存该容器的一些信息,如果我们给容器指定了名字,那么该文件夹名字就是我们指定的名字,如果未指定,就用我们自动生成的容器ID作为文件夹名,同时在该文件夹中创建config.json用来保存容器信息文件夹结构go-docker└── 容器名/容器ID ├── config.json └── container.logconfig.json.
ELK使用手册 文章目录1. 安装ElasticSearch1.1 安装插件1.2 多节点启动2. 安装kibnan2.1 安装插件3. 安装logstash4. docker 安装ELK4.1 简易安装4.2 生产使用5. ElasticSearch使用注意: elasticsearch、kibana、logstash 这三个的版本要一致,这里我统一使用的 7.8.0 版本,系统为MAC1. 安装ElasticSearch官网下载地址: https://www.elastic.co/cn/downloads/ela
K8s操作手册(安装与使用) 文章目录1. 简单概述1.1 k8s是什么?1.2 组件说明1.3 k8s中的三种IP2. 环境配置2.1 关闭防火墙2.2 查看内核版本2.3 内核升级(3.10 -> 4.4)2.4 重启2.5 移除无效内核2.6 安装kernel-tools查看安装结果3. 安装k8s单机集群3.1 安装etcd跟k8s3.2 修改配置3.3 修复镜像无法下载问题3.4 启动3.5 基本操作4. 通过...