nomadli Blog

Thinking will not overcome fear but action will.

spring

spring 介绍

Spring Boot Spring Framework Spring Cloud Spring XD Spring Data Spring Batch Spring Security Spring Integration Spring Social Spring AMQP Spring HATEOAS Spring Mobile Spr...

Protobuf

protobuf 使用

source tips gen proto3 source protobuf protogen tips 没有数据长度,需要自己包一层 gen protoc –go_out=. *.proto //cpp_out csharp_out java_out js_out objc_out ruby_out proto3 syntax...

GO 内核

GO 源码剖析

分析常用命令 golang 内核 M 线程 P 调度器 G 协程 分析常用命令 go build -gcflags “-N -l” xx.go 禁止优化及内联 go tool objdump xxx 转汇编 gdb 单步调试汇编 golang 内核 asm_amd64.s 可执行程序入口地址 runtime.schedinit 初始调度...

perl 语法

IDE

基本语法 $定义变量 my 局部变量 local 局部变量,并对其调用的子域可见 our 当前package 全局变量,可以忽略默认为全局变量 {xxx => xxx,}; hash map 定义 sub 定义函数 @_ 函数参数按顺序存储在这个数组 $_[0] 函数第一个参数 @{$multi_array->[0]}多维数组的第一行 ...

VS Code 插件

IDE

定制性 VS Code不允许访问UI域,速度快,进程隔离 Atom 定制性强,速度慢,进程隔离 插件 插件在独立Node进程中运行(extension host process),能够访问VS Code扩展API 懒加载,在注册activation events事件触发下激活 onLanguage:${language} 打开特定语言的文档 onCommand...

网络相关

网络相关

减少用户态与内核态的内存拷贝 read换mmap,读文件共享内核内存 pip unix_sock socketpair 风险:当mmap多进程/线程使用时,后续操作可能因其他进程/线程修改mmap导致crash 处理:1.捕捉SIGBUS信号并直接返回,后续操作也被终止 2.fcntl(fd, F_SETSIG, RT_SIGNAL_LEASE) fcntl...

服务发现与配置中心

服务发现与配置中心

Consul Etcd 选择Consul 全部服务自建,无需第三方服务 服务发现及配置中心为一体 跨机房、跨云 自带web界面 Consul 基本信息 端口占用 8300 其他consul的传入请求。仅限TCP 8301 LAN中的raft协议。TCP和UDP。 83...

数据库

数据库持续交付

flyway 只适合比较小型的项目,可以使用java代码管理数据库 Liquibase

centos 服务安装

centos 服务安装

yum centos7 sed -e 's|^mirrorlist=|#mirrorlist=|g' -e 's|^#baseurl=http://mirror.centos.org|baseurl=https://mirrors.tuna.tsinghua.edu.cn|g' -i.bak /etc/yum.repos.d/CentOS-*.repo centos8 sed -e 's|...

salt

salt

master salt-key -L 查看所有通过的minion key salt ‘key’ test.ping 测试被控主机联通性 salt ‘key’ cmd.run ‘ls -ls’ 执行linux命令 salt ‘key’ cmd.exec_code python ‘print sys.version’ minion /etc/salt/minion