自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 收藏
  • 关注

原创 golang使用socket-io

socket编程golang应用

2023-06-09 14:47:12 1845 1

原创 golang使用redis发布订阅

依赖:github.com/gomodule/redigo/redis。使用客户端连接redis,用publish命令测试效果。订阅(测试订阅:test_channel)首先需要实例化一个redis连接。封装一个订阅者循环消费的代码。

2023-06-08 17:58:42 488

原创 uber-jaeger使用(http、rpc、gorm)

【代码】uber-jaeger使用(http、rpc、gorm)

2023-04-26 17:42:43 377

原创 设计模式-golang

设计模式;golang;单例模式;工厂模式;

2023-03-30 14:53:47 109

原创 AES加解密(CBC、ECB、CFB)--Golang实现

golang实现AES三种加密方式:CBC、ECB、CFB

2023-03-15 17:33:57 607

原创 计算文件的MD5值(go)

golang计算文件的md5值

2022-07-01 16:51:23 598

原创 文件传输工具rzsz

mac安装rz sz?之前在item2上使用使用rz和sz时就直接夯住发现是需要配置下mac使用rz,sz进行文件传输(默认使用的终端为iterm2)一、安装lrzszbrew install lrzsz二、下载iterm2-zmodem执行git clone https://github.com/aikuyun/iterm2-zmodem.gitcd iterm2-zmodem克隆到本地,并赋值到对应文件中,并赋值权限 cp iterm2-* /usr/local/bin cd /usr/local/b

2022-06-17 18:29:40 406

原创 go生成随机字符串

golang生成随机字符串

2022-06-13 18:15:28 232

原创 AES_ECB算法(golang)

aes_cbs加密算法

2022-06-13 18:05:25 440

原创 golang无限极分类

golang实现无限极分类:1、查询数据2、分类数据组装

2022-06-08 16:04:41 231

原创 JWT实现登陆认证(web-tokens)

jwt实现web-token

2022-04-27 18:14:03 320

翻译 RBAC权限控制(GO-casbin)

rbac权限管理(go版本)

2022-04-25 17:43:58 1125

原创 雪花算法(Go版)

算法代码const ( workerBits uint8 = 10 numberBits uint8 = 12 workerMax int64 = -1 ^ (-1 << workerBits) numberMax int64 = -1 ^ (-1 << numberBits) timeShift uint8 = workerBits + numberBits workerShift uint8 = numberBits startTime i

2022-04-24 17:43:34 662

原创 Dockerfile搭建LNMP环境

dockerfile搭建LNMP1、准备工作创建一个空的文件夹,然后进行后续操作mkdir docker_lnmpcd docker_lnmpnginx配置文件:default.confserver { listen 80 default_server; listen [::]:80 default_server; root /var/www/html; index index.php index.html index.htm index

2021-03-10 20:05:53 485 1

翻译 PHP生成图片加水印(文字、图片)

<?phpsetWater('https://bdimg1.qunliao.info/tos-cn-i-j5hyufq5o6/fastdfs3/M00/D2/43/ChONol2Rfv-AbLlbAAGhnL0QGkY8623085~tplv-j5hyufq5o6-scale:400:0.jpeg', 'dqd-water.png', '', '', 9, '', 'img');//...

2019-10-10 15:20:34 309

原创 MAC初使用

shift => [z]左边的按键control => [fn]右边第一个alt/option => [command]左边的切换输入法:control + 空格锁屏:control + command + q截屏保存文件:shift + command + 3截屏到剪贴板:shift + control + command + 3选取截屏保...

2019-07-10 16:41:52 121

转载 数据结构 - 二叉树

二叉树遍历先序:A B D H I G C E F中序:H D I B G A E C F后序:H I D G B E F C A层次遍历:A B C D G E F H I树的高度:4叶子节点:H I G E F(结点的左右子树都为空)深度优先遍历:相当于前序遍历(后入先出,使用栈模拟)广度优先遍历:相当于层次遍历(先入先出,使用队列模拟)&lt...

2019-06-13 16:52:26 178

转载 集群、分布式、负载均衡

https://www.cnblogs.com/xzwblog/p/7255364.htmlhttps://www.cnblogs.com/itfly8/p/5043435.html集群计算机集群通过一组松散集成的计算机软件和/或硬件连接起来高度紧密地协作完成计算工作。集群系统中的单个计算机通常称为节点。集群计算机通常用来改进单个计算机的计算速度和可靠性。单个重负载的运算分担到多台...

2019-05-29 14:41:18 187

转载 php7和PHP5对比的新特性和性能优化

php7和PHP5对比的新特性和性能优化1.抽象语法树(AST)AST在PHP编译过程作为一个中间件的角色,替换原来直接从解释器吐出opcode的方式,让解释器(parser)和编译器(compliler)解耦,可以减少一些Hack代码,同时,让实现更容易理解和可维护2.Natice TLS:线程数据共享安全,开启一个全局线程用作数据共享内存空间3.指定参数 返回值类型...

2019-05-28 16:28:26 1629

转载 PHP底层设计与实现原理

PHP说简单,但是要精通也不是一件简单的事。我们除了会使用之外,还得知道它底层的工作原理。PHP是一种适用于web开发的动态语言。具体点说,就是一个用C语言实现包含大量组件的软件框架。更狭义点看,可以把它认为是一个强大的UI框架。了解PHP底层实现的目的是什么?动态语言要像用好首先得了解它,内存管理、框架模型值得我们借鉴,通过扩展开发实现更多更强大的功能,优化我们程序的性能。1. PH...

2019-05-28 11:29:32 375

转载 PHP数组的实现

哈希结构是一种非常重要的数据结构,他是一种通过key映射到value的结构,由于其特性,可以在大部分的情况下让查找和插入的效率达到O(1)PHP的数组是用链地址法的哈希结构去实现的,链表是双向链表,这样既可以动态分配数组空间,也可以通过key值去计算hash值去访问对应的元素,是一种非常高效的数据结构。转自:https://www.cnblogs.com/s-b-b/p/622219...

2019-05-21 17:13:43 335

转载 rabbitMQ

RabitMQ采用Erlang语言实现的AMQP(Advanced Message Queued Protocol)的消息中间件,最初起源于金融系统,用在分布式系统存储转发消息。RabbitMQ发展到今天,被越来越多的人认可,这和它在易用性、扩展性、可靠性和高可用性等方面的卓著表现是分不开的。RabbitMQ的具体特点可以概括为以下几点: 可靠性:RabbitMQ使用一些机制来保证可靠性...

2019-05-17 16:39:20 134

翻译 数据结构 - 数组、栈、队列、链表、图、树、哈希表、

https://baijiahao.baidu.com/s?id=1609200503642486098&wfr=spider&for=pc栈后进先出<?php class Stack{ private $stack=array(); //入栈 public function in($item){ ...

2019-05-12 23:05:28 961

翻译 MySQL优化(索引、SQL语句、主从复制、读写分离、分库、分表、分区)

1. 表结构存储引擎 MyIsam: 应用时以读和插入操作为主,只有少量的更新和删除,并且对事务的完整性,并发性要求不是很高的。(适合做只读表,如统计表等) InnoDB: 事务处理,以及并发条件下要求数据的一致性。(适合批量操作与经常修改)字段类型选用合适的字段类型,选用最小的长度减少存储空间,尽量使用int型; 尽可能的使用 varchar...

2019-05-12 18:15:20 1314

翻译 进程、线程、协程

https://www.cnblogs.com/work115/p/5620272.htmlhttps://www.cnblogs.com/guolei2570/p/8810536.html(推荐)进程进程是系统进行资源分配和调度的一个独立的单位;系统由一个个进程(程序)组成 一般情况下,包括文本区域(text region)、数据区域(data region)和堆栈(stack ...

2019-05-10 17:33:35 111

翻译 WebSocket协议

WebSocket是一种在单个TCP连接上进行全双工通信的协议。WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。1. 解决的问题 很多网站为了实现推送技术,所用的技术都是轮询。轮询是在特定的的时间间隔(如每1秒)...

2019-05-09 17:16:51 122

转载 TCP/IP协议

什么是 TCP/IP?TCP/IP协议知识科普TCP/IP 协议栈是一系列网络协议的总和,是构成网络通信的核心骨架,它定义了电子设备如何连入因特网,以及数据如何在它们之间进行传输。TCP/IP 协议采用4层结构,分别是应用层、传输层、网络层和链路层,每一层都呼叫它的下一层所提供的协议来完成自己的需求。 链路层:对电信号进行分组并形成具有特定意义的数据帧,确认主机的物理地址,然后以广播...

2019-04-28 18:58:49 134

转载 PHP设计模式(单例、工厂、注册、策略、观察者)

单例模式单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。单例模式是一种常见的设计模式,在计算机系统中,线程池、缓存、日志对象、对话框、打印机、数据库操作、显卡的驱动程序常被设计成单例。单例模式分3种:懒汉式单例、饿汉式单例、登记式单例。单例模式有以下3个特点:1.只能有一个实例。2.必须自行创建这个实例。3.必须给其他对象提供这一实例。...

2019-04-26 15:21:44 245

转载 消息队列

众所周知在对网站设计的时候,会遇到给用户“群发短信”,“订单系统有大量的日志”,“秒杀设计”等,服务器没法处理这种瞬间迸发的压力,这种情况要保证系统正常有效的使用,就需要“消息队列”的帮助。本篇主要通过消息队列的思路进行学习。一、认识消息队列1.1消息对列概念  从本质上说消息对列就是一个队列结构的中间件,也就是说消息放入这个中间件之后就可以直接返回,并不需要系统立即处理,而另外会有...

2019-04-25 17:14:33 151

转载 MySQL总结

数据的完整性数据完整性,指保证用户输入的数据保存到数据库中是正确的,即数据库中的数据能正确反应实际情况。为了确保数据的完整性,一般在创建表时给表中添加约束,也可修改表的约束。数据的完整性是指数据的可靠性和准确性,数据完整性类型一般分三种:1.实体完整性:通过唯一约束,主键约束或标识列属性来实现,如:PRIMARY KEY(主键约束)、UNIQUE 唯一值约束。2.域完整性:通过...

2019-04-25 15:16:50 99

翻译 PHP数学函数

abs() 返回一个数的绝对值 ceil() 向上舍入为最接近的整数。 floor() 向下舍入为最接近的整数。 max() 返回一个数组中的最大值,或者几个指定值中的最大值。 min() 回一个数组中的最小值,或者几个指定值中的最小值。 rand() 返回随机整数。 srand() 播种随机数生成器。 mt_rand() ...

2019-04-24 17:31:47 236

原创 常见算法 - PHP

杨辉三角/** * 第一种代码实现 * @param int $n 要求的层数 * 理解思路: $i代表行数; $j代表列数 */ public function funYH($n = 1){ //初始化数组 $arr = []; for($i = 0;$i < $n;$i++){ ...

2019-04-24 15:44:20 234

翻译 PHP常用字符串函数

trim() 去除字符串首尾的空格 ltrim() 去除左侧空格;rtrim()去除右侧空格查找strstr() 找到则返回从找到位置开始的字符串;未找到返回falsestrpos() 找到返回第一次出现的位置;未找到返回false替换substr() 字符串截取substr_replace() 从某个位置开始替换substr_count()计算一个字符串在...

2019-04-24 15:11:48 92

翻译 MySQL事物

MySQL 事务主要用于处理操作量大,复杂度高的数据。比如说,在人员管理系统中,你删除一个人员,你即需要删除人员的基本资料,也要删除和该人员相关的信息,如信箱,文章等等,这样,这些数据库操作语句就构成一个事务!在 MySQL 中只有使用了 Innodb 数据库引擎的数据库或表才支持事务。 事务处理可以用来维护数据库的完整性,保证成批的 SQL 语句要么全部执行,要么全部不执行。 事务用来管...

2019-04-11 09:11:00 108

转载 Mysql性能优化三:主从配置,读写分离

https://blog.csdn.net/why15732625998/article/details/80463041https://www.cnblogs.com/luckcs/articles/2543607.html大型网站为了软解大量的并发访问,除了在网站实现分布式负载均衡,远远不够。到了数据业务层、数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器扛,如此多的数据库...

2019-04-06 16:58:05 119

转载 Mysql性能优化二:索引优化

1 索引的类型UNIQUE唯一索引不可以出现相同的值,可以有NULL值。INDEX普通索引允许出现相同的索引内容。PRIMARY KEY主键索引不允许出现相同的值,且不能为NULL值,一个表只能有一个primary_key索引。fulltext index 全文索引上述三种索引都是针对列的值发挥作用,但全文索引,可以针对值中的某个单词,比如一篇文章中的某个词,然而并...

2019-04-06 16:43:19 117

转载 Mysql性能优化一:SQL语句性能优化

1, 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2,应尽量避免在 where 子句中对字段进行 null 值判断,创建表时NULL是默认值,但大多数时候应该使用NOT NULL,或者使用一个特殊的值,如0,-1作为默 认值。3,应尽量避免在 where 子句中使用!=或<>操作符, MySQL只有对以下操作符才使用索...

2019-04-05 18:27:23 124

翻译 http和https的优缺点,区别与工作原理

http://www.runoob.com/w3cnote/http-vs-https.htmlhttps://www.cnblogs.com/ranyonsue/p/5984001.html一、Http和Https的基本概念  HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它...

2019-04-05 17:54:24 286

转载 Redis(基础,优点,持久化,淘汰策略,并发)

一、Redis的优缺点及适用场景Redis 是一个基于内存的高性能key-value数据库。很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。它的优点如下:(1) 速度快,因为数据存在内存中,类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1)(2) 支持丰富数据类型,支持string,lis...

2019-04-03 14:57:23 211

翻译 Linux常用命令

https://www.cnblogs.com/gaojun/p/3359355.htmlhttps://www.cnblogs.com/yjd_hycf_space/p/7730690.htmlLinux 忘记密码解决方法进入单用户模式更改一下root密码即可。步骤如下:重启Linux系统,3秒内按回车键 输入e(进入编辑模式),在第二行 root=LABLE=/ 后面加 ...

2019-03-30 10:35:47 83

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除