- 博客(19)
- 收藏
- 关注
转载 golang 实现简易聊天室
理论声明:此案例只用于学习,掌握相关知识,请勿用于实际开发。TCP连接过程tcp建立连接会有三次握手客户端发送的TCP报文中标志位SYN置1,初始序号seq=x(随机选择)。Client进入SYN_SENT状态,等待Server确认。服务器收到数据包后,根据标志位SYN=1知道Client请求建立连接,Server将标志位SYN和ACK都置为1,ack=x+1,随机产生一个初始序号seq=y,并将该数据包发送给Client以确认连接请求,Server进入SYN_RCVD状态。Client收到确
2021-11-17 10:19:27
216
原创 golang 读取文件、图片字节流
读取图片的字节流package mainimport ( "io/ioutil" "log" "net/http" "os")func main() { // 这里以图片为例子,excel,world也是可以的 url := "https://file.hytwfy.top/jxb.jpg" resByte, err := getRemote(url) if err != nil { log.Println(err) } // resByte 就是要上传到服务器的字节流
2021-11-15 13:49:16
6788
原创 使用canal1.1.5让MySQL5.7同步到ES7.x
哎!也算是记录自己的踩坑日记吧注意: MySQL和ES7请自己自行安装好,请大家一定确定自己MySQL的版本。使用的系统:Centos,Ubuntu。windows请移步# 这里的版本不能低于5.7, 如果小于5.7的请移步,使用8的也请移步SELECT VERSION();好,步入正文MySQL配置1.设置MySQL# 使用已有的账号和密码登录myql -u root -p# CREATE USER 用户名 IDENTIFIED BY '密码'; CREATE USER can
2021-03-13 02:48:51
883
原创 docker搭建etcd集群 bitnami/etcd
docker部署etcd集群优秀的博客应该一来就先上代码(不接受杠精反驳)注意这是sh代码,liunx批处理脚本#!/bin/bash#设置网络名network_name=etcd_network#创建网络docker network create --driver bridge --subnet=10.3.36.0/16 --gateway=10.3.1.1 ${network_name}#设置结点名node1=etcd_node1node1_ip=10.3.36.1no
2021-01-15 22:48:05
3117
2
转载 使用go module导入本地包的方法教程详解
使用go module导入本地包的方法教程详解前提假设我们现在有 moduledemo 和 mypackage 两个包,其中 moduledemo 包中会导入 mypackage 包并使用它的 New 方法。mypackage/mypackage.go 内容如下package mypackageimport "fmt"func New(){ fmt.Println("mypackage.New")}我们现在分两种情况讨论:在同一个项目下注意:在一个项目(project)下我们是可以定
2021-01-14 18:22:51
1234
原创 MySQL查询记录
MySQL查询记录查寻某一字段的数字大于XSELECT DISTINCT `name` FROM grade WHERE `name` NOT IN (SELECT `name` FROM grade WHERE `fenshu` <= 80)SELECT `name` FROM grade GROUP BY `name` HAVING MIN(fenshu) > 80查寻某一字段重复次数SELECT `name` FROM grade GROUP BY `name` HAVING
2020-11-03 22:39:59
98
原创 堆排序。利用堆排序选出10W条数据中前100大
golang堆排序。利用堆排序选出10W条数据中前100大话不多说,请直接看代码注意:这里rand引入的包请使用crypto/rand,不要使用math/randpackage mainimport ( "crypto/rand" "fmt" "math/big")func createRand() int { result, _ := rand.Int(rand.Reader, big.NewInt(100)) return int(result.Int64())}//建立
2020-10-27 11:38:50
803
原创 golang使用反射将一个结构体的数据直接复制到另一个结构体中(通过相同字段)
package mainimport ( "fmt" "reflect")type A struct { Name string Gender string Age int}type B struct { Name string Gender string}//binding type interface 要修改的结构体//value type interace 有数据的结构体func structAssign(binding interface{},
2020-10-12 22:43:42
4730
原创 PHP SPL标准库简介
栈1、栈(stack)又名堆栈,一个数据集合,可以理解为只能只能在一端进行插入和删除运算。这一端稳固栈顶,相对地,把另一端称为栈底。2、栈就是一个桶,后放进行的先拿出来,它下面本来有的东西要等它上面的东西出来之后才能出来(先进后出)。3、栈(stack)是操作系统在建立某个进程时或者线程(在支持多线程的操作系统中是线程)为这个线程建立的存储区域,该区域具有FIFO的特性,在编译的时候可以指定...
2020-04-27 15:17:49
159
原创 php操作ElasticSearch7.x bulk,批量插入数据
ES7.x批量插入数据这是以书来举列子我们先看restful的写法写完之后千万记得换行,记得换行,记得换行,重要事情说3遍POST XXX/_bulk{"create":{"_index":"dangdang","_type":"_doc","_id":"123"}}{"book_name":"php","book_img":"963.jpg","subtitle":"没有副标题","...
2020-04-24 15:58:57
1596
原创 elasticsearch7.x基本搜索(搜索)
match分词搜索全文搜索match_all 搜索全部GET xxx/_search{ "query":{ "match_all":{} }}匹配单字段搜索field 字段名GET xxx/_search{ "query":{ "match":{ "field":"内容" } }}匹配单字段多词组搜索filed 字段名,词...
2020-04-20 14:46:53
2044
原创 ElasticSearch目录作用及基本概念
bin:二进行脚本包含启动节点的ElasticSearchconfig:配置文件包含ElasticSearch.ymldata:在节点上申请的每个index、shard的数据文件位置。可容纳多个位置(可以把这个文件单独配置在服务器的data文件中)logs:日志文件(可以把这个文件单独配置在服务器的data文件中)modules:plugins:插入文件位置,每个插件将包含在一个子目录当...
2020-01-09 15:48:29
339
原创 TP5.1安装swoole扩展
说明:本实例要在您已经安装好tp5.1的情况下进行;我们这里使用的是tp5.1所以可以安装的最高的版本是swoole2.0;如果使用官方的“composer require topthink/think-swoole”进行安装是会出现报错的,因此我们使用如下的代码进行安装composer require topthink/think-swoole:2.0.x-dev --ignore-plat...
2019-10-10 11:50:07
1979
3
原创 apche反向代理配置
首先看一下自己的httpd.conf文件中有没有引入如下几个模块(如果没有请自行安装一下,或者导入一下)LoadModule proxy_module modules/mod_proxy.soLoadModule proxy_balancer_module modules/mod_proxy_balancer.soLoadModule proxy_http_module modules/mo...
2019-08-12 09:36:44
268
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人