自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(67)
  • 资源 (7)
  • 收藏
  • 关注

原创 优雅的使用goroutine 开启http.Server

【代码】优雅的使用goroutine 开启http.Server。

2024-04-25 10:46:42 75 1

原创 golang-jwt

【代码】golang-jwt。

2023-09-01 14:45:45 81

原创 go-kafka

本文使用的是这个包 其他包参考:我们在细分市场中非常依赖GO和Kafka。不幸的是,在撰写本文时,Kafka的GO客户库的状态并不理想。,这是迄今为止最受欢迎的,但很难与之合作。它的记录不足,API暴露了Kafka协议的低级概念,并且不支持诸如上下文之类的GO。它还将所有值传递给引起大量动态内存分配,更频繁的垃圾收集和更高的内存使用情况的指针。是围绕librdkafka的基于CGO的包装器,这意味着它将使用该软件包的所有GO代码引入了C库的依赖关系。

2023-08-23 15:14:47 1780 1

原创 Golang bitset 基本使用、布隆过滤器

bitset,布隆过滤器-假阳性率计算公式。

2023-08-09 13:50:22 1040

原创 Dockerfile部署golang,docker-compose

redis和mysql用外部的。

2023-08-07 11:28:52 1099

原创 Dockerfile构建mysql

33062是主机的端口,3306是容器的mysql端口,容器名称–name mysql2,-v文件映射 主机/dockerval/mysql2对应/var/lib/mysql,最后mysql2是镜像名称。如果一开始没有设置my.cnf,那么Dockerfile里的ENV MYSQL_ROOT_PASSWORD=123456 失效,要在构建容器时加上 -e MYSQL_ROOT_PASSWORD=root。docker ps 可以看到运行中的容器。两个文件在同一个目录下。打包成功后可以看到镜像。

2023-08-04 14:58:50 1040

原创 使用 Elasticsearch

了解如何创建索引,添加,删除,更新文档参考文档本文用到Elasticsearch和Kibana 可以看之前的两篇先安装好Elasticsearch 里的接口都是通过 REST 接口来实现的。GET /还可以复制为Curl同样可以 复制curl至页面就会变成 GET /创建一个索引 test,并且含有 id 及 message 字段。用于使新文档在搜索时可见。反过来,用于在硬盘上持久化内存段。

2023-06-30 17:50:34 957

原创 Elastic 栈中的 Kibana安装

Kibana 是一个开源分析和可视化平台,旨在与 Elasticsearch 协同工作。你使用 Kibana 搜索,查看和与存储在 Elasticsearch 索引中的数据进行交互。你可以轻松执行高级数据分析,并在各种图表,表格和地图中可视化你的数据。

2023-06-29 16:01:46 289

原创 Elasticsearch 初步使用

本文是阅读笔记记录,详细内容请访问官方链接,本文只做重点记录。

2023-06-29 14:20:41 853

原创 Elasticsearch 安装

Elasticsearch 安装

2023-06-28 17:30:14 1587

转载 go pprof 性能监测

访问链接 :http://127.0.0.1:6060/debug/pprof/:程序启动之后内存分配的情况:导致阻塞操作的一些堆栈跟踪信息:当前程序启动的命令行:所有当前 goroutine 的堆栈跟踪信息:程序在当前堆上内存分配的情况:锁资源的竞争的堆栈信息:CPU profile文件。可以在 debug/pprof?seconds=x秒 GET 参数中指定持续时间。获取pprof文件后,使用 go tool pprof x.prof命令分析pprof文件。:系统线程的使用情况。

2023-06-28 14:55:27 58

原创 Go bytes.Buffer

【代码】Go bytes.Buffer。

2023-06-28 11:11:33 83

原创 vm tool 共享文件夹

vmware-hgfsclientvmhgfs-fuse .host:/share /mnt/hgfs

2023-06-14 15:08:37 54

原创 RabbitMQ六种工作模式

从某种意义上说,消费者的限流策略有助于那么处理消息效率高的消费者多消费一些消息,效率低一些的消费者少推送一些消息,从而可以达到能者多劳的目的,尽可能发挥消费者处理消息的能力。在项目中,为了缓解生产者和消费者两边效率不平衡的影响,通常会对消费者进行限流处理,保证消费者端正常消费消息,尽可能避免服务器崩溃以及宕机现象。

2022-10-12 16:26:15 1651

原创 go 并发编程 8

go 并发编程 8并发介绍goroutine启动多个goroutineruntime包runtime包运用2. GOMAXPROCS说明Channelchannel类型创建channel通道操作channel缓冲通道通过一个(或多个)通道交换数据进行协程同步通道的方向协程的同步:关闭通道-测试阻塞的通道select与channel1. time与chan=》ticker 协程超时并发介绍什么是高并发高并发(High Concurrency)是互联网分布式系统架构设计中必须考虑的因素之一,它通常是指,通

2021-06-27 16:22:31 269 1

原创 go 文件处理 07

go 文件处理 07fmtPrintPrintfSprint获取输入数据格式jsonxml使用gob传输数据使用buffer读取文件缓冲读缓冲写文件的写入,追加,读取,复制操作文件的写入追加读取复制操作fmtfmt包实现了类似C语言printf和scanf的格式化I/O。主要分为向外输出内容和获取输入内容两大部分。PrintPrint系列函数会将内容输出到系统的标准输出,区别在于Print函数直接输出内容,Printf函数支持格式化输出字符串,Println函数会在输出内容的结尾添加一个换行符在g

2021-06-14 17:03:43 193

原创 go反射 6

go反射 6反射(reflection)反射(reflection)在计算机科学领域,反射是指一类应用,它们能够自描述和自控制。也就是说,这类应用通过采用某种机制来实现对自己行为的描述(self-representation)和监测(examination),并能根据自身行为的状态和结果,调整或修改应用所描述行为的状态和相关的语义。interface 和 反射在讲反射之前。先来看看golang关于类型设计的一些原则变量包括(type,value)两部分type 包括 static type和c

2021-06-14 15:02:52 160 1

原创 go-包 5-2

go-包 5-2包的概念import 和 package 的使用package的定义import的定义自定义包packge包名go mod包的概念包是结构化代码的一种方式:每个程序都由包(通常简称为 pkg)的概念组成,可以使用自身的包或者从其它包中导入内容如同其它一些编程语言中的类库或命名空间的概念,每个 Go 文件都属于且仅属于一个包。一个包可以由许多以 .go 为扩展名的源文件组成,因此文件名和包名一般来说都是不相同的你必须在源文件中非注释的第一行指明这个文件属于哪个包,如:package m

2021-06-06 17:29:55 161

原创 go设计模式 5-1

go的设计模式 5-1go代码封装工厂模式自动注册简单工厂模式设计模式介绍设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。项目中合理的运用设计模式可以完美的解决很多问题,每种模式在现在中都有相应的原理来与之对应,每一个模式描述了一个在我们周围不

2021-05-29 17:41:26 244 1

原创 go-函数与方法 4

go-函数与方法 4一、函数特点二、函数声明三、参数四、匿名与闭包匿名函数闭包五、延迟调用(defer)defer 与 结构体六、异常处理一、函数特点无需声明原型。支持不定 变参。支持多返回值。支持命名返回参数。支持匿名函数和闭包。函数也是一种类型,一个函数可以赋值给变量。不支持 嵌套 (nested) 一个包不能有两个名字一样的函数。不支持 重载 (overload)不支持 默认参数 (default parameter)。二、函数声明函数声明包含一个函数名,参数列表, 返回值

2021-05-15 16:36:52 190 1

原创 go-结构体与面向对象 3

一、go结构体结构体的定义指针与结构体初始化结构体类型别名和自定义类型二、go面向对象-结构体与接口构造函数方法方法与指针嵌套结构体下《继承》方法规则接口

2021-05-14 18:13:12 233 1

原创 go流程控制和集合 2

一、内置函数二、流程控制ifswitchfor三、指针指针地址和指针类型空指针四、数组五、切片Slice切片Slice定义切片slice初始化cap与lenappend 元素的添加与删除copy 切片拷贝range 遍历其他操作六、map定义map基本使用判断某个键是否存在遍历delete()函数删除键值对与切片擦出火花

2021-05-13 17:56:50 273 9

原创 swoole加速laravel框架

一、swoole 介绍安装 、docker安装php扩展二、php运行的运行模式1. cgi模式2. fastcgi模式三、swoole加速laravel的原理四、laravel使用swoole的组件五、nginx反向代理swoole使用六、Supervisor进程管理安装

2021-05-08 20:25:12 767 12

原创 python anaconda selenium Firefox 安装

python 使用webdriver.Firefox firefox浏览器插件官方下载链接https://github.com/mozilla/geckodriver/releases/tag/v0.29.1下载火狐浏览器跟anaconda,anaconda安装python,安装滚动至底部,选择对应下载 我这里下载 geckodriver-v0.29.1-win64.zip解压 geckodriver.exe复制至火狐浏览器安装位置 我这里是C:\Program Files\Mozilla Fir

2021-05-07 14:18:09 431 4

原创 nginx介绍配置安装 1

nginx介绍配置安装 1nginx 介绍nginx 安装1 选的源码安装目录2 安装pcre库3 安装zlib库4安装ssl5 nginx安装6 启动php-fpm 安装安装php-fpm3 nginx指令与server脚本启动nginx停止nginxservice服务脚本nginx开机自启nginx配置与优势1 配置文件基础nginx详细配置信息网络服务模型1 基本概念了解2 网络服务模型nginx 介绍Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,Nginx是一款

2021-05-03 22:00:55 914 10

原创 docker 安装 lnmp环境

docker 安装 lnmp环境环境软件介绍docker搭建nginxdocker安装phpdocker 搭建mysqllinux安装docker 参考环境软件介绍dockernginxmysqlphp7.4laravel7docker搭建的lnmp目录结构:docker│ └── nginx│ │ └── default.conf #nginx配置文件│ └── www│ └── lmrs-2008 #lmrs的laravel项目代码d

2021-05-02 18:44:53 1292 6

原创 go快速入门 1

go开发目录、数据类型、函数

2021-04-25 23:43:25 360 2

原创 go入门 安装 命令介绍

go介绍 优势 缺点go的安装go的命令

2021-04-25 16:12:57 269 2

原创 PHPExcel 使用

PHPExcel 导出数据、导出图片$letters = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O','P','Q'];$objPHPExcel = new \PHPExcel();//创建一个excel//setActiveSheetIndex(0) 工作表0第一个默认名字Worksheet//getStyle('A1') 获取A1列 指定单元格//getAlignment() 获取对齐的

2021-04-21 11:48:47 101

原创 mycat主从复制读写分离

mycat主从复制读写分离一、安装jdk环境二、mycat一、安装jdk环境创建目录mkdir /usr/local/javacd /usr/local/java#解压tar -zxvf jdk-8u144-linux-x64.tar.gz修改环境变量vi /etc/profile#添加export JAVA_HOME=/usr/local/jdk1.8.0_144export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_

2021-04-11 19:14:15 91

原创 mysql主从复制

mysql主从 分库分表 mycatlinux安装mariadb主从复制卸载mariadb(安装mysql前准备工作)安装mysqllinux安装mariadb虚拟机安装linux请看https://blog.csdn.net/weixin_44102152/article/details/109177863安装# 安装yum install -y mariadb-server#启动systemctl start mariadb.service#设置账号密码/usr/bin/mysqlad

2021-04-11 15:54:34 72 1

原创 docker-compose

docker-compose介绍安装compose使用docker-compose 模板文件及指令介绍buildcommandcontainer_namedepend _onenv_fileenvironmenthealthcheckimagenetworksportssysctlsulimitsvolumesdocker-compose 常用命令命令对象与格式命令选项.命令使用说明docker可视化工具介绍Compose是 Docker 的服务编排工具,主要用来构建基于Docker的复杂应用Compo

2021-04-04 16:36:49 253

原创 Linux环境下docker安装

Linux环境下docker安装docker linux下安装docker 基础命令docker linux下安装– 1. 卸载老版本yum -y remove docker docker-common docker-selinux docker-engine– 2. 安装需要的软件包yum install -y yum-utils device-mapper-persistent-data lvm2– 3. 设置国内yum源yum-config-manager --add-repo ht

2021-04-01 19:23:41 137

原创 Redis分布式锁

Redis分布式锁分布式锁内存淘汰策略多级缓存分布式锁代码实现:加锁与解锁:<?phpnamespace App\Services;use Illuminate\Support\Facades\Redis;class RedisLockService{ const LOCK_SUCCESS = 'OK'; const IF_NOT_EXISTS = 'NX'; //代表只在键不存在时,才对键进行设置操作。键存在不能设置值 const MILLISECO

2021-03-28 14:33:55 92

原创 Redis 缓存穿透,雪崩

Redis 缓存穿透,雪崩缓存穿透的原因及解决办法缓存空对象使用布隆过滤器缓存雪崩雪崩预防方案缓存穿透的原因及解决办法缓存穿透是指查询一个不存在的数据,缓存层与存储层都不会命中,通常出于容错的考虑,如果从存储层查不到数据则不写入缓存层,比如下面的图中:上图步骤为:缓存层不命中存储层不命中,不将空结果写回缓存返回空结果缓存穿透将导致不存在的数据每次请求都需要到存储层去查询,失去了缓存保护后端存储的意义。缓存穿透问题会可能使后端存储负载加大,由于很多存储不具备高并发性,甚至可能造成后端存

2021-03-26 10:27:34 107 2

原创 Redis 缓存击穿

Redis 缓存击穿,失效以及维度划分缓存击穿缓存击穿问题解决1 互斥锁2 key设置永不过期图左侧为客户端直接调用存储层的架构,右侧为比较典型的缓存层+存储层架构。收益:①加速读写:因为缓存通常都是全内存的,而存储层通常读写性能不够强悍(例如MySQL),通过缓存的使用可以有效地加速读写,优化用户体验。②降低后端负载:帮助后端减少访问量和复杂计算(例如很复杂的SQL语句),在很大程度降低了后端的负载。成本:①数据不一致性:缓存层和存储层的数据存在着一定时间窗口的不一致性,时间窗口跟

2021-03-25 17:23:35 150 2

原创 Redis事务

Redis事务任何数据库都有一套自己的事务控制机制,redis事务是一次可以执行多个命令,它的本质是一组命令的集合。一个事务中所有的命令都会被序列化,在事务执行的过程中会按照顺序执行队列中的命令。其它客户端提交的命令请求会等到事务执行完毕再执行。mysql事务特点Redis事务常用的关于事务的命令有:MULTI:使用该命令,标记一个事务块的开始,通常在执行之后会回复OK,(但不一定真的OK),这个时候用户可以输入多个操作来代替逐条操作,redis会将这些操作放入队列中。EXE

2021-03-22 14:19:18 58

原创 laravel 源码 - 服务容器

laravel 源码 - 服务容器IoC 容器理解1 问题的产生2 依赖3 容器的出现Laravel 中的容器1 bind 绑定1.1 加装闭包1.2 注册1.3 回调2 make 解析2.1 获取注册的实现2.2 build 解析Laravel 服务容器 是一个用于管理类依赖和执行依赖注入的强大工具,该容器提供了整个框架中需要的一系列服务 。容器:字面上理解就是装东西的东西。常见的变量、对象属性等都可以算是容器。一个容器能够装什么,全部取决于你对该容器的定义。IoC 容器理解有这样一种容器,

2021-03-20 16:48:05 232

原创 Laravel 基础 - 路由 02

Laravel 基础 - 路由 02路由基础1、什么是路由2、定义路由2.1 基本路由2.2 路由方法2.3重定向路由路由基础1、什么是路由路由(route)是 指根据url, 分配到对应的处理程序的映射。简单来说,就是一个路径的解析,根据客户端提交的路径,将请求解析到相应的模块/控制器/方法上。这里我们先来看一个 Laravel 中已经存在的一个路由:Route::get('/', function () { return view('welcome');});设置一个域名来访问该框架

2021-03-14 15:24:38 343

原创 laravel 入门 01

laravel 入门 01laravel 简介laravel 安装目录介绍编写规范1、控制器文件名2、 控制器类方法命名3、视图文件名4、Blade 标签的使用5、常规模型文件命名laravel 简介Lavavel一直 秉承着优雅的原则,很好的支持了composer,实现了更丰富的扩展,社区文档活跃,相较于TP,Lavavel更庞大,安全性也更高 ,更适合开发大中型项目,被称为“巨匠型开发框架”。优点:1.laravel的设计思想是很先进的,非常适合应用各种开发模式TDD, DDD 和BDD2.

2021-03-14 15:08:54 251

layui母婴商城模板.rar

layui母婴商城模板,简单的layui母婴商城开发模板。layui文档参考https://www.layui.com/doc/

2019-05-15

layui网站后台管理系统框架模板.rar

layui网站后台管理系统框架模板,简单的layui后台开发模板。

2019-05-15

initadmin-master-tp5api后台模板.rar

initadmin-master-tp5api后台模板,专为api打造的tp5后台开发模板。

2019-05-15

ThinkPHP5.0快速入门.rar

ThinkPHP5.0快速入门手册,下载打开即用。入门 TP5 必读系列。

2019-05-15

Sublime_Text_v3安装包

SublimeText3 64位32位系统免安装,解压选择自己的系统打开exe文件直接用,中文版。

2019-05-15

typescript-master.rar

sublime text 3的插件 Typescript插件包,免安装,解压后直接复制到data文件下的packages里

2019-05-15

空空如也

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

TA关注的人

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