摘要:Golang开发 1.GO语言基础 [日常] 搭建golang开发环境 [日常] Go语言圣经前言 [日常] Go语言圣经-声明,变量,赋值,类型,包和文件习题 [日常] Go语言圣经--作用域,基础数据类型,整型 [日常] Go语言圣经--浮点数习题 [日常] Go语言圣经--复数,布尔值,字符串 阅读全文
posted @ 2020-12-17 11:29 陶士涵 阅读(96) 评论(0) 推荐(0) 编辑
摘要:一般我们在windows获取mac开发代码 , 编译的时候如果要编译成指定系统的二进制文件 , 这时就需要使用交叉编译 1. 在Windows下编译Mac, Linux编译成 MacSET CGO_ENABLED=0SET GOOS=darwinSET GOARCH=amd64go build xx 阅读全文
posted @ 2021-04-16 18:16 陶士涵 阅读(4) 评论(0) 推荐(0) 编辑
摘要:当本地分支和远程修改了同一个文件代码,pull远程分支的代码的时候会出现文件冲突 出现这个错误 Please commit your changes or stash them before you merge. 可以先将当前的内容存储起来,git stash就可以把当前内容存储在栈内 git st 阅读全文
posted @ 2021-04-15 22:00 陶士涵 阅读(3) 评论(0) 推荐(0) 编辑
摘要:当在nil上调用一个属性或者方法的时候 , 会报空指针 尤其是结构体指针 , 非常容易出现这个问题 , 下面是测试代码 package tools import "fmt" func MyTest() { type MConn struct { Name string } var conn *MCo 阅读全文
posted @ 2021-04-14 10:20 陶士涵 阅读(13) 评论(0) 推荐(0) 编辑
摘要:在代码中看到这也的正则[\w\-\.]+ 所以来总结下\w与\W \w匹配任何单词字符包含下划线 >等价于 [A-Z a-z 0-9_] \W匹配任何非单词字符 (与上面的相反) >等价于 [^A-Z a-z 0-9_] 所以代码中的[\w\-\.]+ 意思是 [A-Z a-z 0-9 _\-\.] 阅读全文
posted @ 2021-04-13 16:48 陶士涵 阅读(7) 评论(0) 推荐(0) 编辑
摘要:我们的开发环境大部分还是在windows下,所以也要能够在windows下安装最新版go1.16.3 在这个地址下载go zip包 , https://studygolang.com/dl 64位操作系统,下载 go1.16.3.windows-amd64.zip 32位操作系统,下载 go1.16 阅读全文
posted @ 2021-04-13 10:34 陶士涵 阅读(7) 评论(0) 推荐(0) 编辑
摘要:使用github.com/emersion/go-smtp , 通过smtp发送通知邮件内容 加上html代码的内容后 , 在一些邮箱里会被原样展示 , 并没有展示成html , 原因是没有加Content-Type , 加上之后就可以了 tools/smtp.go package tools im 阅读全文
posted @ 2021-04-12 17:09 陶士涵 阅读(6) 评论(0) 推荐(0) 编辑
摘要:GMP是三个缩写 G : groutine M : Machine 系统线程 P : Processor 处理器 GMP调度就是循环在与P(处理器)绑定的M(系统线程)上寻找可执行的G(协程) 在当前P(处理器)上创建G(groutine)后 , 会把G放入P的本地队列或者全局队列 , 本地队列限制 阅读全文
posted @ 2021-04-06 19:18 陶士涵 阅读(13) 评论(0) 推荐(0) 编辑
摘要:普通占位符 占位符 说明 举例 输出 %v 相应值的默认格式。 Printf("%v", people) {zhangsan} %+v 打印结构体时,会添加字段名 Printf("%+v", people) {Name:zhangsan} %#v 相应值的Go语法表示 Printf("#v", pe 阅读全文
posted @ 2021-04-06 14:44 陶士涵 阅读(6) 评论(0) 推荐(0) 编辑
摘要:当出现406错误时 , 说明是客户端错误 , 客户端无法解析服务端返回的内容 一般是客户端发送的accept头里 , 设置了允许接受的类型 , 但是服务端没有按该格式返回 Accept代表发送端(客户端)希望接受的数据类型。 如果accept指定的类型和response返回的content-type 阅读全文
posted @ 2021-04-06 14:27 陶士涵 阅读(6) 评论(0) 推荐(0) 编辑
摘要:文章转载自"编程帮",也欢迎大家关注我的开源在线客服项目https://github.com.cnpmjs.org/taoshihan1991/go-fly,演示地址:https://gofly.sopans.com 1. GitHub 镜像访问 这里提供两个最常用的镜像地址: https://gi 阅读全文
posted @ 2021-04-06 11:45 陶士涵 阅读(27) 评论(0) 推荐(0) 编辑
摘要:分清这几块区域 工作区 ==> 暂存区 ==> 本地仓库 ==> 远程仓库 # 工作区 -> 暂存区 $ git add <file/dir> # 暂存区 -> 本地仓库 $ git commit -m "some info" # 本地仓库 -> 远程仓库 $ git push origin mas 阅读全文
posted @ 2021-04-06 10:49 陶士涵 阅读(9) 评论(0) 推荐(0) 编辑
摘要:在线客服下载地址:http://gofly.sopans.com/ 在mysql命令行下或者phpmyadmin网页管理面板里 , 创建好空数据库 , 例如: gofly. 编辑config/mysql.json , 更换为自己的数据库host/用户名/密码/数据库名 { "Server":"127 阅读全文
posted @ 2021-04-03 17:41 陶士涵 阅读(27) 评论(0) 推荐(0) 编辑
摘要:下载GOFLY客服(go语言开发的在线客服系统)系统后 ,运行起来服务 ,默认是监听8081端口 这个时候,只能使用http://ip:8081这样的形式来访问 ,不符合实际需求 下载安装配置nginx后,就可以通过域名来访问服务了 ubuntu系统安装nginx apt-get install c 阅读全文
posted @ 2021-04-03 00:45 陶士涵 阅读(40) 评论(0) 推荐(0) 编辑
摘要:适配器模式的定义: 将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原来由于接口不兼容而不能一起工作的那此类可以一起工作 包括两种模式: 类适配器模式与对象适配器 类适配器:Adapter类与被适配类是继承关系 对象适配器:Adapter对象与被适配类对象是委托关系 , 委托关系就 阅读全文
posted @ 2021-03-30 11:56 陶士涵 阅读(20) 评论(0) 推荐(0) 编辑
摘要:策略模式(Strategy Pattern)定义了一组策略,分别在不同类中封装起来,每种策略都可以根据当前场景相互替换,从而使策略的变化可以独立于操作者。 大家都写过这样的代码 if (conditionA) { 逻辑1 } else if (conditionB) { 逻辑2 } else if 阅读全文
posted @ 2021-03-29 19:11 陶士涵 阅读(27) 评论(0) 推荐(0) 编辑
摘要:php-fpm是进程管理器 , 属于master-worker多进程的模式 当请求xxx.php文件时 , 每一个子worker进程都是在读取和回应FastCGI协议的内容 fastcgi的方式是,fpm启动运行后 , 会常驻内存监听端口(默认9000) , 当web服务器收到一个请求时,他不会重新 阅读全文
posted @ 2021-03-26 14:16 陶士涵 阅读(29) 评论(0) 推荐(0) 编辑
摘要:当需要安装使用一些命令的时候 , 需要看清使用哪个位数版本的软件 uname -a 可以查看位数 存在 x86_64的就是64位 存在i386 i686的就是32位 , i686是i386的子集 阅读全文
posted @ 2021-03-25 13:43 陶士涵 阅读(7) 评论(0) 推荐(0) 编辑
摘要:启动php-fpm 加载各个模块 , 初始化各模块 调用每个模块的PHP_MINIT_FUNCTION中初始化模块 访问请求到来 请求初始化 , 调用各模块的请求初始化 调用每个模块的PHP_RINIT_FUNCTION初始化请求 处理PHP代码 访问请求结束 调用每个模块的PHP_RSHUTDOW 阅读全文
posted @ 2021-03-24 19:07 陶士涵 阅读(10) 评论(0) 推荐(0) 编辑
摘要:部署代码的时候 ,出现了500错误 但是php-fpm下定义的www-error.log的错误日志以及nginx定义的error日志都没有任何显示 可以使用下面这种方式 strace $(pidof 'php-fpm'|sed 's/\([0-9]*\)/-p \1/g') -e write -e 阅读全文
posted @ 2021-03-24 17:55 陶士涵 阅读(8) 评论(0) 推荐(0) 编辑
摘要:正常使用形式如下 , 例如下面的代码,按照5秒频率进行执行 func cleanVisitorExpire() { go func() { log.Println("cleanVisitorExpire start...") for { //执行代码 t := time.NewTimer(time. 阅读全文
posted @ 2021-03-24 14:47 陶士涵 阅读(12) 评论(0) 推荐(0) 编辑
摘要:PHP的调用函数中现在已经不用在参数中增加引用&符号了 只要在定义函数的参数时候加&就可以 所以尽量把代码中改掉 比如function test(&$a) 调用时 test("aaaa") 不用加&符号 阅读全文
posted @ 2021-03-24 11:26 陶士涵 阅读(4) 评论(0) 推荐(0) 编辑
摘要:当使用以下系列函数: ldap_connect()ldap_bind()ldap_search()ldap_get_entries() 需要安装php-ldap扩展 centos下 yum install php-ldap 阅读全文
posted @ 2021-03-22 17:40 陶士涵 阅读(2) 评论(0) 推荐(0) 编辑
摘要:这里比较兼容的处理是: server { listen 80; server_name 域名; root 路径; if (!-e $request_filename) { rewrite ^/(.*)$ /index.php/$1 last; break; } access_log /var/log 阅读全文
posted @ 2021-03-22 17:21 陶士涵 阅读(2) 评论(0) 推荐(0) 编辑
摘要:当使用mcrypt_get_iv_size这个函数的时候 需要安装 php-mcrypt扩展 centos下 yum install php-mcrypt 阅读全文
posted @ 2021-03-22 17:02 陶士涵 阅读(3) 评论(0) 推荐(0) 编辑
摘要:vim 编辑 /etc/yum.repos.d/nginx.repo [nginx-stable] name=nginx stable repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=1 en 阅读全文
posted @ 2021-03-22 16:19 陶士涵 阅读(3) 评论(0) 推荐(0) 编辑
摘要:查看centos的发行版本 cat /etc/redhat-release 查看centos的位数 uname -a 阅读全文
posted @ 2021-03-22 16:14 陶士涵 阅读(1) 评论(0) 推荐(0) 编辑
摘要:创建用户和密码 phpfly phpfly: CREATE USER 'phpfly'@'%' IDENTIFIED BY 'phpfly'; 只准操作phpfly数据库 GRANT all ON phpfly.* TO 'phpfly'@'%' ; flush privileges; 阅读全文
posted @ 2021-03-22 16:05 陶士涵 阅读(3) 评论(0) 推荐(0) 编辑
摘要:注意memcache 和 memchached扩展不是一个 pecl install memcached 当PHP使用memcached扩展时 , 需要有以下依赖 , 主要是libmemcach yum install libevent-develyum install libmemcached-d 阅读全文
posted @ 2021-03-18 18:13 陶士涵 阅读(5) 评论(0) 推荐(0) 编辑
摘要:301,代表 永久重定向,也就是说第一次请求后,下次浏览器再去请求的话,不会向服务器请求了,而是直接从浏览器的缓存里拿 , 所以我们一般不采用 301。 302,代表 临时重定向,也就是说每次去请求都会请求服务器(除非响应中用 Cache-Control 或 Expired 暗示浏览器缓存), 所以 阅读全文
posted @ 2021-03-16 18:54 陶士涵 阅读(14) 评论(0) 推荐(0) 编辑
摘要:当使用chrome 无痕模式时, 默认阻止第三方cookie 如果使用了localStorge或者cookie , 就会在js里报错 报错SecurityError: Failed to read the 'localStorage' property from 'Window': Access i 阅读全文
posted @ 2021-03-15 11:10 陶士涵 阅读(35) 评论(0) 推荐(0) 编辑
摘要:极简强大Go语言开发在线客服GOFLY0.3.5发布 更新日志: ##### V0.3.5 新增分开系统自动断线与客服关闭连接修复没有设置欢迎时tip显示错误问题修复客服端发送消息错误提示不显示问题修复一些界面问题修复死锁问题 ##### V0.3.3 1.访客/客服端聊天界面样式修改 2.访客端展 阅读全文
posted @ 2021-03-12 17:45 陶士涵 阅读(20) 评论(0) 推荐(0) 编辑
摘要:如果有输入http://gofly.sopans.com/ 替换成http://gofly.sopans.com 把最后面的/去掉 , 可以这样搞 console.log("http://gofly.sopans.com/".replace(/([\w\W]+)\/$/,"$1")) 前面的正则部分 阅读全文
posted @ 2021-03-12 15:59 陶士涵 阅读(11) 评论(0) 推荐(0) 编辑
摘要:1.在下面并发业务场景 库存业务,stock(id, num),其中: id为库存id 是 1 num为库存值是 5 2.并发下查询 select num from stock where id=1 select num from stock where id=1 得到的值都是5 , 没有问题 3. 阅读全文
posted @ 2021-03-11 10:37 陶士涵 阅读(25) 评论(0) 推荐(0) 编辑
摘要:国内的主流浏览器都是双核浏览器:基于Webkit的内核用于常用网站的高速浏览,基于IE的内核 浏览器默认内核的指定只需在head标签中添加一行代码即可:若页面需默认用极速核,增加标签:<meta name="renderer" content="webkit">若页面需默认用ie兼容内核,增加标签: 阅读全文
posted @ 2021-03-10 14:12 陶士涵 阅读(17) 评论(0) 推荐(0) 编辑
摘要:sync包中包含了对安全的并发访问资源的方式 , 包含了以下 Mutex:互斥锁RWMutex:读写锁WaitGroup:等待组Once:单次执行Cond:信号量Pool:临时对象池Map:自带锁的map 1.互斥锁 互斥锁需要确保的是某段时间内,不能有多个协程同时访问一段代码(临界区),互斥锁被称 阅读全文
posted @ 2021-03-09 22:19 陶士涵 阅读(20) 评论(0) 推荐(0) 编辑
摘要:因为经常被乱码问题搞乱 , 中文的编码GB系列就有好几个 , 看看这三的区别 , 转自知乎 1 GB2312-80 GB 2312 或 GB 2312-80 是中国国家标准简体中文字符集,全称《信息交换用汉字编码字符集·基本集》,又称 GB 0,由中国国家标准总局发布,1981 年 5 月 1 日实 阅读全文
posted @ 2021-03-09 10:57 陶士涵 阅读(31) 评论(0) 推荐(0) 编辑
摘要:极简强大Go语言开发在线客服GOFLY0.3.3发布 更新日志: ##### V0.3.3 1.访客/客服端聊天界面样式修改 2.访客端展示客服头像信息 3.访客到来自动打开,以及参数控制 4.访客/客服端聊天信息默认折叠 5.客服端新消息提醒标识 6.客服端访客列表展示访客正在输入信息 ##### 阅读全文
posted @ 2021-03-08 14:20 陶士涵 阅读(29) 评论(0) 推荐(0) 编辑
摘要:数字比较大小很简单 英文字符比较 , 是根据逐个字符的ascii码比较大小的 中文字符比较 , 是根据逐个字符的uincode码比较的 比如 '陶' 是 \u9676 是十六进制 , 十进制是38518 ; '士' 是 \u58eb ,十进制是 22763 因此 陶 > 士 阅读全文
posted @ 2021-03-08 13:20 陶士涵 阅读(35) 评论(0) 推荐(0) 编辑
摘要:我的win10网速奇慢 , 经过一番搜索 , 找到这个方法 win + r 打开输入 gpedit.msc 打开组策略编辑 , 默认情况下系统会限制20%的网速 启用这个 , 然后输入0 保存 阅读全文
posted @ 2021-03-07 22:52 陶士涵 阅读(39) 评论(0) 推荐(0) 编辑
摘要:我的win10 win+r gpedit.msc 没有这个东西 把下面的文件放在gpedit.bat文件中 ,点击执行 , 就有了 @echo off pushd "%~dp0" dir /b C:\Windows\servicing\Packages\Microsoft-Windows-Group 阅读全文
posted @ 2021-03-07 22:46 陶士涵 阅读(32) 评论(0) 推荐(0) 编辑