专注PHP Golang Java开发
LNP配置调优 LNP配置调优
Linux 相关内核参数net.ipv4.tcp_max_syn_backlognet.core.somaxconnnet.core.netdev_max_backlog fs.nr_openfs.file-max 修改最大文件数: vi
2021-10-04
linux命令-ps linux命令-ps
简介 Process Status的缩写。ps命令用来列出系统中当前运行的那些进程。ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程 linux进程状态运行(正在运行或在运行队列中等待)中断(休眠中, 受阻, 在等
2021-10-03
一文带你了解linux命令-curl 一文带你了解linux命令-curl
简介curl 是常用的命令行工具,用来请求 Web 服务器。它的名字就是客户端(client)的 URL 工具的意思。 它的功能非常强大,命令行参数多达几十种。如果熟练的话,完全可以取代 Postman 这一类的图形界面工具。 本文介绍它的
2021-10-02
linux命令-lsof linux命令-lsof
简介 lsof(list open files)是一个查看当前系统文件的工具。在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。如传输控制协议 (TCP) 和用户数据报协议 (UDP)
2021-10-02
linux命令-gdb linux命令-gdb
启动C/C++ 需要在编译前加上-g选项 g++ -g hello.cpp -o hello 调试文件并输出 gdb <program> <core dump file> 调试程序 gdb <program&g
2021-10-01
跨域详解 跨域详解
什么是跨域? 跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对javascript施加的安全限制 所谓同源是指,域名,协议,端口都相同。浏览器执行javascript脚本时,会检查这个脚本属于哪个页面,
2021-09-16
Git原理 Git原理
Git是如何设计的?本次演示命令所在git版本为:2.21.0 远程仓库分布式的主仓库,也就是我们clone的远程仓库 本地仓库分布式的本地仓库,也就是我们clone下来的本地仓库 工作区顾名思义,就是我们新增、修改、删除文件所在的地方,平
2021-09-14
Linux 服务管理 Linux 服务管理
init脚本在/etc/init.d目录下 缺点: 启动时间长 init进程是串行启动,只有前一个进程启动完,才会启动下一个进程 启动脚本复杂 init进程只是执行启动脚本,不管其他事情。脚本需要自己处理各种情况,这往往使得脚本变
2021-09-13
Linux ssh公钥登录 Linux ssh公钥登录
公钥生成ssh-keygen命令专门是用来生成密钥的。 常用的选项: -t 用来指定密钥类型(dsa | ecdsa | ed25519 | rsa | rsa1); -P 用来指定密码 -f 用来指定生成的密钥文件名 -C 用来添加注释
2021-09-12
socket概念 socket概念
简介先介绍一下套接字的使用过程: 面向流的套接字,对于TCP/IP套接字来说,代表TCP协议 面数据包的套接字,对于TCP/IP套接字来说,代表UDP协议 Unix domain socketUnix domain socket 主
2021-09-09
linux 进程通信方式 linux 进程通信方式
简介通信目的 数据传输 一个进程需要将它的数据发送给另一个进程,发送的数据量在一个字节到几M字节之间 共享数据 多个进程想要操作共享数据,一个进程对共享数据 通知事件 一个进程需要向另一个或一组进程发送消息,通知它(它们)发生了某种
2021-09-01
Golang 并发编程 Golang 并发编程
ContextGo 语言中用来设置截止日期、同步信号,传递请求相关值的结构体 Deadline 被取消的时间,也就是完成工作的截止日期Done 返回一个 Channel,这个 Channel 会在当前工作完成或者上下文被取消后关闭,多次调用
2021-07-30
Golang 常用关键字 Golang 常用关键字
for range使用 for-range 的控制结构最终也会被 Go 语言编译器转换成普通的 for 循环 现象 循环永动机 如果我们在遍历数组的同时修改数组的元素,能否得到一个永远都不会停止的循环呢? func main() { a
2021-07-28
Golang 语言基础 Golang 语言基础
函数调用C语言 C 语言同时使用寄存器和栈传递参数,使用 eax 寄存器传递返回值,由于只使用一个寄存器存储返回值,所以 C 语言的函数不能同时返回多个值 优点:极大地减少函数调用的额外开销,CPU 访问栈的开销比访问寄存器高几十倍缺点:
2021-06-18
Golang 数据结构 Golang 数据结构
数组 数组是由相同类型元素的集合组成的数据结构,计算机会为数组分配一块连续的内存来保存其中的元素,我们可以利用数组中元素的索引快速访问特定元素 存储元素类型相同、但是大小不同的数组类型在 Go 语言看来也是完全不同的,只有两个条件都相同才
2021-05-20
Golang 内存管理 Golang 内存管理
内存分配器 程序中的数据和变量都会被分配到程序所在的虚拟内存中,内存空间包含两个重要区域:栈区(Stack)和堆区(Heap) Go语言会由工程师和编译器共同管理,堆中的对象由内存分配器分配并由垃圾收集器回收 设计原理3个组件:用户程序(
2021-05-10
Golang 编译原理 Golang 编译原理
预备知识抽象语法树 抽象语法树(Abstract Syntax Tree、AST),是源代码语法的结构的一种抽象表示,它用树状的方式表示编程语言的语法结构 抽象语法树中的每一个节点都表示源代码中的一个元素,每一棵子树都表示一个语法元素,以
2021-04-12
Golang 优雅重启长连接服务 Golang 优雅重启长连接服务
优雅重启长连接服务目前一些设备长连接服务,每次发布新版本都需要踢掉连接,然后再发布,本文研究go实现长连接服务器的优雅重启 我们要解决的事情: 如何做到不中断接收连接 如何做到已有连接不中断 第一个问题,如何做到不中断接受连接 看lin
2021-04-10
5 / 11