
linux技术
文章平均质量分 83
老A技术联盟
所谓成长,就是你先立有一个目标,然后朝这个方向长
展开
-
从零开始撸,基于gin+gorm+grpc实现项目改造
/我们定义一个博文的数据结构, syntax = "proto3";blog";//生成的go文件存放目录在哪;包名叫什么// ID// 业务id// 标题// 标题样式// 缩略图// 关键词// 描述// 内容// 创建时间// 更新时间// 作者// 来源// 摘要 } // 定义blog服务 service BlogInfo {//定义方法} //定义id的消息类型。原创 2023-03-14 13:03:46 · 1883 阅读 · 1 评论 -
大佬们都说tcp有黏包的问题,tcp却说:我冤枉!
通过上面,我们了解到了原来粘包的问题,并不属于tcp的锅。tcp是基于数据流的传输,保证数据流的顺序,但是正式由于这种数据流的传输模式,对于tcp来说,自己就像一个传送带,传递的是一个个的快递包裹,源源不断。具体包裹到是什么,到哪里去,就需要接收端和发送端通过定制的协议来编码和解码解决。原创 2023-03-02 14:50:16 · 371 阅读 · 0 评论 -
同步与异步、阻塞与非阻塞傻傻分不清楚?你得从linux中的5种IO模型看起
后来医院改进了,哪个病人需要帮助,请按电铃,电铃响了,护士办公室根据电铃的编号可以迅速定位到病人在几号病床,这就是epoll的改进。此时,如果护士听到铃声马上去处理了,这种方式就是同步阻塞的,交做ET。如果护士在忙其他的事情,没有马上处理,那么过了一会铃声自动再响,提醒护士做这件事情,这种模式叫做lt。......原创 2022-07-11 16:21:08 · 512 阅读 · 1 评论 -
curl 发送请求的几种示例
发送post请求发送图片 前面指具体路径文件名 后面指传输的文件名curl-F "pic=@/mnt/shared/Image/jpg/Screensho1t.jpg; filename='Screensho1t.jpg'"http://127.0.0.1:8080/picture多图上传curl-F "pic=@/mnt/shared/Image/jpg/1.jpg; filename='1.jpg'"-F "pic=@/mnt/shared/Image/jpg/2.jpg; fi.原创 2022-03-02 19:57:59 · 1239 阅读 · 0 评论 -
PHP孤儿进程、僵尸进程的代码演示和方法处理
基本概念我们知道,在Unix和linux中,子进程是由父进程创建的,因为父进程不知道子进程什么时候结束,所以子进程的状态对于父进程来说是异步的。那么父进程如何知道子进程的状态呢?就需要调用wait() 或者waitpid()系统调用获取子进程的状态pcntl_f原创 2022-02-23 19:11:47 · 817 阅读 · 0 评论 -
ps命令详解
ps命令支持三种使用的语法格式UNIX 风格,选项可以组合在一起,并且选项前必须有“-”连字符ps -eps -elyps -ef -f就是加了UID PPID C STIMEBSD 风格,选项可以组合在一起,但是选项前不能有“-”连字符ps axps aux u是Display user-oriented format. 就是加了USER PID %CPU %MEM VSZ RSS STAT START这些,还是很有用的。GNU 风格的长选项,选项前原创 2022-02-23 19:11:13 · 2232 阅读 · 0 评论 -
聊一聊进程、线程和协程以及线程的那些“锁“事
什么是锁锁是计算机对资源进行并发访问控制的一种机制,多线程情况下来实现对临界资源的同步互斥访问。为什么需要锁我们先来演示一段代码,这段代码中,我开启了1000个协程,每次都对c+1操作,那么一般来讲,我们最后得到的结构是1000package mainimport ( "fmt" "time")func main() { c:=0 for i:=0;i<1000;i++{ go func(){ c=c+1 fmt.Printf("i am %d ,and t原创 2022-02-07 18:07:02 · 980 阅读 · 0 评论 -
HTTP、CDN、DNS的这些知识,我也不知道你知道不知道,反正我被问到过
HTTP,全称Hyper Text Transfer Protocol,即超文本传输协议,是一个简单的请求-响应协议,它通常运行在TCP之上。HTTP目前一共经历了HTTP 0.9,HTTP 1.0,HTTP 1.1,HTTP 2.0,那么我们分别来看看每个版本的HTTP的功能和发生的变化HTTP 0.9HTTP 0.9是第一个版本的HTTP协议,已过时。它只允许客户端发送GET这一种请求,而想我们常用的POST PUT DELETE 是不.原创 2022-01-10 19:23:53 · 1900 阅读 · 0 评论 -
elasticsearch 的分词器的介绍和使用
什么是分词器我们上一篇文章讲过倒排索引,比如我们搜 明月 ,可能会根据倒排索引 查到静夜思 这篇古诗,对吧,这里面的明月 低头 月光 ,就是分词器给我们分的词,我的理解就是,我们通过分词器给某篇文章打上了分词的tag ,然后根据tag 可以找到对应的标题,比如 新手机 华为,如果没有分词的话,我们查找 新手机华为 可能 华为新手机 就不会被搜索到,因为顺序的问题。分词器的组成character filter(字符过滤器)在对一段文本分词之前,要先清洗一遍原始数据吧,比如html标签,什么加黑加粗原创 2021-11-19 20:38:24 · 583 阅读 · 0 评论 -
elastic的聚合搜索 集群认识
我们先来举个栗子,一堆糖果,我们想按颜色分类我们也看来求一些最大值 最小值,平均值(注意:聚合内部是可以嵌套的)冷热集群架构elastic的节点是支持指定类型的,比如指定哪些节点是热节点和哪些是冷节点,配置方式有以下两种通过elasticsearch.yml配置node.attr.hotwarm_type: hot #热node.attr.hotwarm_type: warm #冷创建索引时指定PUT /logs_2019-10-01{ "settings": { .原创 2021-11-19 20:34:09 · 1464 阅读 · 0 评论 -
解决在本地不能访问es服务器的问题
背景我们有一台服务器,40.163服务器,大家的代码都是在这一台机器上面执行,使用idea自带的ftp功能,在163服务器,我们可以访问mysql redis es等服务,但是我想在本地运行我的代码,这就出现一个问题,我访问不到mysql es redis 等服务。解决方法:我们可能访问不了 163的3306 或者9200(我们的是通过跳板机登录,然后163机器访问42机器,42机器就是es服务器),这个时候,我使用了nginx端口代理解决了这个问题,因为163的80端口对我们是开放的,所以当我访..原创 2021-11-17 20:31:18 · 3027 阅读 · 0 评论 -
Elastic检索技巧总结
常用的检索类型在mysql中,我们常用的查询 可能就是 精准查询 模糊查询 范围查询 等等,那么在es中,有哪些是我们经常用到的呢?term query(精准匹配)我们先了解一下keyword和text类型的区别keyword类型不会被分词的,适用于 标题 邮件 手机号 等,text会被分词,适用于描述 关键字 内容等总结term 和match,match_phrase查询 keyword 必须要完全匹配term查询text text分词中必须包含term这里附带说一句,精准原创 2021-11-11 14:54:56 · 756 阅读 · 1 评论 -
elasticsearch原来是这样工作的(附安装和集群部署笔记)
下载下载地址简单启动非root用户登录服务器#下载tar包并解压目录`[elastic@localhost ~]$ tar zxvf elasticsearch-7.2.0-linux-x86_64.tar.gz `#进入目录启动[elastic@localhost bin]$ pwd/home/elastic/elasticsearch-7.2.0/bin#启动[elastic@localhost bin]$ ./elasticsearch这期间可能有以下报错max n原创 2021-09-29 14:59:33 · 233 阅读 · 0 评论 -
nginx的相关配置(日志格式 并发数量)
本文是以lnmp环境为例进行演示先来看nginx.conf文件配置日志要注意以下几点1.配置日志格式2.开启access_log3.在server里面配置日志路径详细文章参考ser www www;worker_processes auto;worker_cpu_affinity auto;error_log /home/wwwlogs/nginx_error.log ;pid /usr/local/nginx/logs/nginx.pid;#指定进程可.原创 2021-09-28 11:50:14 · 525 阅读 · 0 评论 -
ssh 状态下如何后台运行程序?谁来保证远程会话的持续性?这篇文章告诉你
对于刚接触linux的同学,可能有这样的体验:使用ssh登录到服务器后,执行了一个耗时较长的脚本,有时因为网络不稳定或者手滑导致ssh远程连接断开,导致程序执行失败。需要长时间稳定跑的脚本。我们希望能够在linux后台跑,关闭远程连接也没事,且可以随时查看输出信息或者操作tips: 以下操作基于centos7举栗子看一下在服务器设置ssh 登录时长为2分钟 可以参考这篇文章# vi /etc/ssh/sshd_configClientAliveInterval 2m原创 2021-09-23 21:47:29 · 2007 阅读 · 0 评论