Stack Overflow 离线版本的使用方法

近日,Stack Overflow 与 Kiwix 合作,推出一项名为「Overflow Offline」的新项目,以确保其数据集的最新版本可供需要的人轻松使用 下载离线版本 访问 https://library.kiwix.org/?lang=&q=Stack 就是太大了,80G,让人望而却步 下载Kiwix https://www.kiwix.org/en/download/ 全平台支持 使用 参考 https://stackoverflow.blog/2022/10/20/introducing-the-overflow-offline-project/ https://w...

微服务链路追踪之Jaeger

在一个微服务分布式架构的系统中,可能存在复杂的、深层的层层服务调用关系,大致如下图 如果某个环节出问题,在海量的日志中定位问题是很痛苦的,于是就有了调用链追踪系统,比较有名的是:Jaeger和Zipkin。本篇文章主要介绍Jaeger Jaeger的组成部分 Instrumentation SDKs: 集成到应用程序和框架中以捕获跟踪数据的库。 从历史上看,Jaeger 项目支持使用各种编程语言编写的自己的客户端库。 它们现在被弃用,取而代之的是 OpenTelemetry Jaeger Agent: Jaeger 代理是一个网络守护程序,用于侦听通过 UDP 从 Jaeger 客户端接收...

gRPC调试工具推荐

在介绍工具之前先说一个情况,就是你用某个工具调试时,会发现,有的项目无需手动导入.proto文件,工具就能列出所有method,有些则不行。这是因为项目注册了反射,先看下怎么注册反射 就是这样,下面开始介绍工具 Postman 这个我觉得是最好的 gRPC UI gRPC的交互式Web用户界面,类似postman 安装 go install github.com/fullstorydev/grpcui/cmd/grpcui@latest 使用 # no TLS cuiwei@weideMacBook-Pro ~ % grpcui -plaintext localhost:9087 gRPC...

简述TCP三次握手和四次挥手

三次握手 是指建立一个TCP连接时,需要客户端和服务端总共发送3个包以确认连接的建立。 可以想象两人用对讲机交谈。 A:我准备好了你准备好了吗,收到请回答。 B:收到收到,我也准备好了,收到请回答。 A:收到收到 四步挥手 客户端:“兄弟,我这边没数据要传了,咱关闭连接吧。” 服务端:“收到,我看看我这边有木有数据了。” 服务端:“兄弟,我这边也没数据要传你了,咱可以关闭连接了。” 客户端:“好嘞。” 为什么建立连接是三次握手,而关闭连接却是四次挥手呢? 这是因为服务端在LISTEN状态下,收到建立连接请求的SYN报文后,把ACK和SYN放在一个报文里发送给客户端。 而关闭连接时,当收到客户...

使用docker-compose快速部署etcd

docker-compose.yml version: '3' networks: web-network: services: docker-etcd: hostname: etcd image: bitnami/etcd:3.5.5 volumes: - "./etcd/data:/bitnami/etcd/data" environment: - ALLOW_NONE_AUTHENTICATION=yes - ETCD_ADVERTISE_CLIENT_URLS=http://0.0.0.0:2379 ...

使用docker-compose快速部署InfluxDB 2.4

docker-compose.yml version: '3' networks: web-network: services: docker-influxdb: image: influxdb:2.4 container_name: influxdb restart: always ports: - "8086:8086" #HTTP UI and API port environment: DOCKER_INFLUXDB_INIT_MODE: "setup" DOCKER_INFLUXDB_INIT_U...

nginx 安装rtmp模块实现推流服务器

安装模块 请移步 https://www.cuiwei.net/p/1011052604 配置文档 https://github.com/arut/nginx-rtmp-module/wiki/Directives vi /etc/nginx/nginx.conf load_module modules/ngx_rtmp_module.so; events { worker_connections 1024; } rtmp { server { listen 1935; chunk_size 4096; applicatio...

nginx 安装第三方模块

下面以rtmp模块为例 https://github.com/arut/nginx-rtmp-module 普通方式 静态模块 ./configure --add-module=/path/to/nginx-rtmp-module make //make编译,编译好的程序在objs文件夹下面,这时候不要执行make install 避免新编译的程序有问题,又覆盖了原有的程序 //备份原来的nginx可执行文件 mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old //把编译好的Nginx程序替换到原来的目录里 cp...

静态HTML和CSS网站生成器 - Hugo

Hugo是用Go编写的静态HTML和CSS网站生成器。它针对速度、易用性和可配置性进行了优化。Hugo拿一个包含内容和模板的目录,并将其渲染成一个完整的HTML网站。 Hugo依赖带有前置内容的Markdown文件作为元数据,您可以从任何目录运行Hugo。这适用于共享主机和其他没有特权帐户的系统。 Hugo在几分之一秒内呈现了一个中等大小的典型网站。一个好的经验法则是,每段内容在大约1毫秒内呈现。 Hugo旨在适用于任何类型的网站,包括博客、tumbles和文档。 步骤 //安装 brew install hugo //查看版本 hugo version //新建站点 hugo new sit...

laravel 调试工具

Laravel-debugbar 可以打印出每个请求执行的sql 安装 composer require barryvdh/laravel-debugbar 执行完即可,打开任一html页面(返回json的不行) 更详细的说明请参考:https://github.com/barryvdh/laravel-debugbar Artisan tail 实时显示系统日志 安装 composer require spatie/laravel-tail 执行完即可,常用命令 php artisan help tail php artisan tail 更详细的说明请参考:https://github...