07 2022 档案

摘要:很多人不理解 cmd 和 entrypoint 通过一个很简单的实验帮你理解 有条件的和我一起 实验室一 dockerfile 和docker run 优先级???? 新建一个docker-compose version: '3' services: alpine: container_name: 阅读全文
posted @ 2022-07-28 11:16 vx_guanchaoguo0 阅读(337) 评论(0) 推荐(0) 编辑
摘要:虚拟容器技术 2013年 AWS 和 IBM 的 OpenStack 和 VMware 的 Cloud Foundry 公有云的基础 OpenStack 技术: 虚拟机 vm 镜像: os镜像 体积: 大 语言: 基础平台 环境自己处理 Cloud Foundry 技术: namespace cgr 阅读全文
posted @ 2022-07-28 10:58 vx_guanchaoguo0 阅读(254) 评论(0) 推荐(0) 编辑
摘要:控制台查看 logs.SetLogger("console") logs.SetLogger(logs.AdapterConsole, `{"level":1,"color":true}`) 输出到文件 logs.SetLogger(logs.AdapterFile,`{"filename":"pr 阅读全文
posted @ 2022-07-27 11:50 vx_guanchaoguo0 阅读(36) 评论(0) 推荐(0) 编辑
摘要:符合OpenAPI规范 接口变更时,我们只需要更改对应的OpenAPI描述文件 让我们能专注于业务代码的开发 基础的OpenAPI描述文件 openapi version info description paths restfull paths endpoint(interface) Path I 阅读全文
posted @ 2022-07-22 10:31 vx_guanchaoguo0 阅读(101) 评论(0) 推荐(0) 编辑
摘要:SQL to struct 插件 :Convert SQL to GO Struct 使用: 右键 Convert SQL to GO Struc json to struct 插件 :Convert SQL to GO Struct 使用: 右键 Convert json to GO Struc 阅读全文
posted @ 2022-07-20 16:45 vx_guanchaoguo0 阅读(102) 评论(0) 推荐(0) 编辑
摘要:服务处理流程 ####关键点 服务器如何管理连接,获取输入数据 服务器如何处理请求 I/O多路复用 I/O多路复用是指使用一个线程来检查多个文件描述符(Socket)的就绪状态 select和poll函数,传入多个文件描述符,如果有一个文件描述符就绪,则返回,否则阻塞直到超时 得到就绪状态后进行真正 阅读全文
posted @ 2022-07-20 15:30 vx_guanchaoguo0 阅读(161) 评论(0) 推荐(0) 编辑
摘要:操作系统允许绕过 pagecache 直接存取文件 文件复制 磁盘 IO 应用是不可以操作文件的,需要驱动我们的操作系统内核来读取和写入文件 不使用零拷贝: 硬盘 -> 内核层的内存 -> 用户层的应用缓存 -> 内核层的内存 -> 硬盘 使用 零拷贝: 硬盘 -> 内核层的内存 -> 硬盘 网络I 阅读全文
posted @ 2022-07-20 14:47 vx_guanchaoguo0 阅读(21) 评论(0) 推荐(0) 编辑
摘要:原理 定义: 操作系统在读写文件的时候并不会直接写入磁盘,而是在内存申请一块缓存,先写入缓存 然后定时刷盘 刷盘时优化写入排序 来源:read、mmap 优势 I/O Scheduler 会将连续的小块写组装成大块的物理写从而提高性能 I/O Scheduler 会尝试将一些写操作重新按顺序排好,从 阅读全文
posted @ 2022-07-20 14:34 vx_guanchaoguo0 阅读(68) 评论(0) 推荐(0) 编辑
摘要:kafaka的写入很快 也很快 有啥秘诀 写入 Kafka磁盘顺序写保证写数据性能 Kafka的producer生产数据,要写入到log文件中,写的过程是一直追加到文件末端,为顺序写 Kafka 是不会删除数据的,它会把所有的数据都保留下来,每个消费者(Consumer)对每个 Topic 都有一个 阅读全文
posted @ 2022-07-20 12:01 vx_guanchaoguo0 阅读(50) 评论(0) 推荐(0) 编辑
摘要:kakfa 高可用的关键副本机制 副本的概念 kafka的replica包含leader与follower 读写都是leader 执行 副本的提交 同步复制 :全部的follower同步后才 提交 。可用性不好 异步复制: 只要leader拿到数据后立即提交 follower慢慢复制。一致性不好。 阅读全文
posted @ 2022-07-20 11:40 vx_guanchaoguo0 阅读(36) 评论(0) 推荐(0) 编辑
摘要:kafka 2.8 之前需要借助 zoopker 协调集群 >=2.8 kraft zoopker 选主 zookeeper四种节点类型: 持久: PERSIST PERSIST_SEQUENTIAL 瞬时 EPHEMERAL EPHEMERAL_SEQUENTIAL Watch 订阅后会先通知后得 阅读全文
posted @ 2022-07-20 11:20 vx_guanchaoguo0 阅读(160) 评论(0) 推荐(0) 编辑
摘要:官方推荐 [2.0] 来源 JVM Heap Sizes | Elastic Cloud Enterprise Reference [2.0] Elasticsearch clusters and JVM Heap Size The ideal heap size is somewhere belo 阅读全文
posted @ 2022-07-20 11:03 vx_guanchaoguo0 阅读(97) 评论(0) 推荐(0) 编辑
摘要:docker 网络 四种模式 容器核心问题 容器的IP地址分配 容器之间的相互通信 方式 最简单的方式 直接使用host网络 复用宿主网络协议 但是端口会冲突 容器自己的IP地址, 但是这样宿主导致路由,交换器感知不到容器IP,无法跨主机通讯 跨主机通讯 直接修改外部 网关路由配置 SDN结合 复用 阅读全文
posted @ 2022-07-20 10:13 vx_guanchaoguo0 阅读(28) 评论(0) 推荐(0) 编辑
摘要:写入字符串 cat > test.txt << EOF ewetrte fsdfgf dfghghj dsffgd hgfdwe EOF vim 查找 :%s/df/&/gn 使用grep grep -o "df" test.txt | wc -l awk #### 方法1 awk -F "df" 阅读全文
posted @ 2022-07-19 10:34 vx_guanchaoguo0 阅读(30) 评论(0) 推荐(0) 编辑
摘要:很多时候需要卡一个区间 就要判断包含边界情况 先说答案 包含 版本 mysql> SELECT VERSION(); + + | VERSION() | + + | 5.7.26 | + + 1 row in set (1.06 sec) 对象 :业务主键 mysql> select id from 阅读全文
posted @ 2022-07-15 11:22 vx_guanchaoguo0 阅读(64) 评论(0) 推荐(0) 编辑
摘要:我们有些orm 或者一些函数 between没提供 使用and 代替 select *from DemoTable where 15 <=Number and Number <= 80; 阅读全文
posted @ 2022-07-15 10:26 vx_guanchaoguo0 阅读(89) 评论(0) 推荐(0) 编辑
摘要:我们一般增量合伙全量同步的时候需要判断表是否为空 使用count(*) + limit 结论 limit 不生效 使用 limit SELECT 1 FROM table LIMIT 1; 使用 exsit SELECT EXISTS (SELECT 1 FROM table); 阅读全文
posted @ 2022-07-14 15:19 vx_guanchaoguo0 阅读(1010) 评论(0) 推荐(0) 编辑
摘要:先说结论 可以生成 12种数据表 和 3种语言代码 数据库 mysql *oracale sqlsever *postgreSQL db2 *DM *gaussDB kingbase *maxcomuter *sqllite hive 语言 java C# *golang 导入已经存在的 pdman 阅读全文
posted @ 2022-07-14 15:07 vx_guanchaoguo0 阅读(60) 评论(0) 推荐(0) 编辑
摘要:我们在使用grpc经常需要调试检测 htpp 有postman grpc 也有工具 bloomPRC 下载地址 https://github.com/bloomrpc/bloomrpc 使用 导入 : 绿色的 + 图标 导入 xxx.proto 文件 筛选 出点击你的方法 漏斗图标 输入方法名 入参 阅读全文
posted @ 2022-07-14 15:02 vx_guanchaoguo0 阅读(190) 评论(0) 推荐(0) 编辑
摘要:有趣的问题 java php golang 设置时区 Asia/ChongQing Asia/Shanghai 先说答案 中国只是支持5个时区【1918 to 1949】 |Time offset | UTC+05:30 | UTC+06:00 |UTC+07:00 |UTC+08:00 |UTC+ 阅读全文
posted @ 2022-07-14 14:53 vx_guanchaoguo0 阅读(286) 评论(0) 推荐(0) 编辑
摘要:我们经常需要获取前一一天 一个月等需求 ###自定义时间 currentYear, currentMonth, currentDay := now.Date() 自定义时区 loc, _ := time.LoadLocation("Asia/Chongqing") 格式化时间 layout := " 阅读全文
posted @ 2022-07-14 11:13 vx_guanchaoguo0 阅读(151) 评论(0) 推荐(0) 编辑
摘要:我们一般需要定时任务 请求数据层grpc服务并且在上下文中携带信息 上下文 context.Context 携带信息就需要用 google.golang.org/grpc/metadata 初始化MD 结构 // 方法一 metadata.New(map[string]string{"centeri 阅读全文
posted @ 2022-07-14 10:24 vx_guanchaoguo0 阅读(29) 评论(0) 推荐(0) 编辑
摘要:我们经常遇到 大小写转换,驼峰,蛇形命名批量操作 如果你用全家桶 idea goland webstrm phpstrom pycharm 安装插件PasseRR 使用shit+ ctl + U 切换 阅读全文
posted @ 2022-07-13 15:10 vx_guanchaoguo0 阅读(401) 评论(0) 推荐(0) 编辑
摘要:ide 提示 删除即可 go build: -i flag is deprecated golang 1.6 弃用改参数 install 安装作为目标的依赖关系的包(用于增量编译提速) 其他参数说明 参数 含义 -o output 指定编译输出的名称,代替包名 -i install 安装作为目标的依 阅读全文
posted @ 2022-07-12 16:26 vx_guanchaoguo0 阅读(156) 评论(0) 推荐(0) 编辑
摘要:github https://github.com/golangci/golangci-lint/releases ide setting->tools->go linter .golangci.yml # 运行配置 run: # 要使用的CPU核心数 concurrency: 4 # 分析超时,例 阅读全文
posted @ 2022-07-12 15:19 vx_guanchaoguo0 阅读(723) 评论(0) 推荐(0) 编辑
摘要:降低GC 频率 main 申请一大块内存 造成 heap 很大的假象 由于虚拟内存的技术的存在只有使用时候才会CPU汇编指令才会交换为物理内存 由于程序存在期间不释放内存,也不使用 gc 判断的时候会被误导,因此不会触发GC 可以使用 debug.SetGCPercent(xxx)/GOGC 调整百 阅读全文
posted @ 2022-07-11 15:06 vx_guanchaoguo0 阅读(360) 评论(0) 推荐(0) 编辑
摘要:每次用微信截图的时候 选中的截图会变小 开始以为和win10的快捷键冲突 两个屏幕截图这样看起来很麻烦 百度一圈结果不是 ###后来发现 win10 屏幕缩放是150% 微信截图是100% 截图后就变成100% 因此形成视觉差 处理办法 桌面->右键->显示设置->显示->高级缩放设置->100% 阅读全文
posted @ 2022-07-11 14:31 vx_guanchaoguo0 阅读(1998) 评论(0) 推荐(0) 编辑
摘要:官方代码 一脸蒙圈 location:= time.FixedZone("UTC-6", -6*40*40) location:= time.FixedZone("UTC-7", -7*50*50) 其实官方给的只是示例 并不能直接用 如果你直接用恭喜你,可以跑路了 经常看到 UTC时间、GMT时间 阅读全文
posted @ 2022-07-11 10:48 vx_guanchaoguo0 阅读(92) 评论(0) 推荐(0) 编辑
摘要:roit搜索 https://github.com/go-ego/riot 停止维护了 根据 https://github.com/huichen/wukong ####悟空搜索 https://github.com/huichen/wukong 也不再维护了 gse 词典做分词 阅读全文
posted @ 2022-07-08 14:43 vx_guanchaoguo0 阅读(198) 评论(0) 推荐(0) 编辑
摘要:一般 使用的struct 的时候喜欢 new 一下 map chan make一下 基础类型 声明直接使用已经默认分配了默认值 只需要一块内存保存 引用类型 声明后只是有了引用地址 但是还要额为分配内存 给引用的变量分配空间 需要两块内存相互关联 引用类型必须分配值也就是初始化, 而不是自动分配默认 阅读全文
posted @ 2022-07-08 11:23 vx_guanchaoguo0 阅读(22) 评论(0) 推荐(0) 编辑
摘要:node 使用grpc npm init 创建项目 demo.proto syntax = "proto3"; package hello; service Greeter { rpc SayHello (HelloRequest) returns (HelloReply) {} } message 阅读全文
posted @ 2022-07-07 17:59 vx_guanchaoguo0 阅读(80) 评论(0) 推荐(0) 编辑
摘要:实现控制机器到多个被控机器的免密 ssh scopy xsync 首先生成公钥和私钥 ssh-keygen 将控制机器公钥拷贝到被控主机的上 ssh-copy-id -i ~/.ssh/id_rsa.pub remote-host `` 阅读全文
posted @ 2022-07-07 14:16 vx_guanchaoguo0 阅读(16) 评论(0) 推荐(0) 编辑
摘要:一个窗口运行 多个服务 运行时候选择 cnfiguration -> run kind -> Directoty 一个窗口显示多个项目视图 open-> [this window / new window / attach] -> attch 阅读全文
posted @ 2022-07-07 11:09 vx_guanchaoguo0 阅读(741) 评论(0) 推荐(0) 编辑
摘要:有个需求需要将用户分数更新为0分 然鹅grom 是0值不更新 找了一大圈说是用map 代替struct update 但是依然失败 方式1 type Temp struct{ Int32 sql.NullInt32 Bool bool } sql.NullInt32{Int32: 0, Valid: 阅读全文
posted @ 2022-07-06 20:02 vx_guanchaoguo0 阅读(417) 评论(0) 推荐(0) 编辑
摘要:gromV1 debug()方法只能输出到控制台 想记录日志文件 gromv2 import "gorm.io/gorm/logger" db, err := gorm.Open(mysql.Open(connectionDSN), &gorm.Config{ Logger: logger.Defa 阅读全文
posted @ 2022-07-05 19:46 vx_guanchaoguo0 阅读(472) 评论(0) 推荐(0) 编辑
摘要:暴力破解版 func voKmp(txt, pat string) int { n := len(txt) m := len(pat) for i := 0; i < n-m; i++ { j := 0 for j = 0; j < m; j++ { if pat[j] != txt[i+j] { 阅读全文
posted @ 2022-07-05 16:08 vx_guanchaoguo0 阅读(44) 评论(0) 推荐(0) 编辑
摘要:lvs 架构分为三层 Load Balancer server Array(服务群组 rs cluster) shared storage Load Balancer 位于最前端 ,一个多个Director server(均衡调度器)lvs模块就安装这里,类似一个路由器分发请求 server Arr 阅读全文
posted @ 2022-07-05 11:49 vx_guanchaoguo0 阅读(31) 评论(0) 推荐(0) 编辑
摘要:Netfilter 的一些钩子函数 实现accept drop froward 五个链 进路由(PREROUTING)[转换很少用] 进系统(INPUT) 转发(FORWARD) 出系统(OUTPUT) 出路由(POSTROUTING)[转换很少用] 四个表 raw 数据包是否被跟踪 需要关闭nat 阅读全文
posted @ 2022-07-05 11:42 vx_guanchaoguo0 阅读(19) 评论(0) 推荐(0) 编辑
摘要:系统定义的常量 fmt.Println(runtime.GOARCH) //CPU型号 fmt.Println(strconv.IntSize) //int位数 阅读全文
posted @ 2022-07-05 11:21 vx_guanchaoguo0 阅读(32) 评论(0) 推荐(0) 编辑
摘要:为什么需要lvs持久链接 后端真是服务一般有多个(一个就不需要负载均衡了),一个用户请求持续分配有个服务,而不是轮询多个服务 持久链接的实现 session 绑定 (session sticky) 优点:同一个用户请求始终调度到有个固定的后端服务(第一次调度算法实现) 缺点: 容错能力差,如果宕机, 阅读全文
posted @ 2022-07-05 10:14 vx_guanchaoguo0 阅读(167) 评论(0) 推荐(0) 编辑
摘要:var _ io.Writer = (*myWriter)(nil) var _ io.Writer = myWriter{} 阅读全文
posted @ 2022-07-04 17:40 vx_guanchaoguo0 阅读(44) 评论(0) 推荐(0) 编辑
摘要:字符串类型转为数字 不能系统函数 func StrToInt(str string) int { number := 0 for i := 0; i < len(str); i++ { number = 10*number + int(str[i]-'0') } return number } 将十 阅读全文
posted @ 2022-07-04 11:52 vx_guanchaoguo0 阅读(32) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示