自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 elasticsearch倒排索引、Analyzer分词

倒排索引正排索引(通过id查找到相应内容)文档ID文档内容1Elasticsearch Client2Elasticsearch Server3Learn Elasticsearch倒排索引(通过内容分词,反向查找到文档Id)TermCountDocumentId:PositionElasticsearch31:0,2:0,3:1Client11:1Server12:1Learn13:0

2021-12-27 20:33:15 1028

原创 docker下安装redis bloom容器,以及在php、php框架中使用redis布隆过滤器

docker安装redis bloom容器#docker-composer.yamlversion: "3.6" # 确定docker-composer文件的版本services: # 代表就是一组服务 - 简单来说一组容器 # server redis: # 这个表示服务的名称,课自定义; 注意不是容器名称 image: redislabs/rebloom # 指定容器的镜像文件 container_name: php8_redis6_1 # 这是容器的名称

2021-12-27 16:57:05 1260

原创 fiddler抓包工具安装,配置https、移动端抓包、弱网设置

下载最新完全版需要收费,下载精简,官方精简吧下载地址开启https抓包菜单–Tools–Options–https–全部勾选–重启软件移动端抓包手机和pc处于同一网络菜单–Tools–Options–Connetions–全部勾选在手机Wi-Fi中配置代理配置完成,断开WiFi重新连接在手机端访问pcd端网址:http://192.168.31.22:8888,下载证书并安装点击上面箭头,点击下载证书:FiddlerRoot.cer手机连接代理,下载证书并安装配

2021-12-26 16:33:27 2288

原创 elasticsearch索引、文档、REST API、节点、分片、文档CURD

索引Index — 索引是文档的容器,是一类文档的结合每个索引都有自己的Mapping定义,用于定义文档的字段名和字段类型,Setting定义不同的数据分布Shard :索引中的数据分散在shard分片上GET movies # 获取movies索引信息{ "movies" : { "aliases" : { }, "mappings" : {...}, # mappings定义文档字段类型 "settings" : { # settings定义不

2021-12-24 20:11:51 1244

原创 docker中安装elasticsearch、els插件、cerebro、kibana、logstash

安装elasticsearch、cerebro、kibana使用docker-compose,编排安装2台elasticsearch容器组成集群,一台kibana,一台cerebrosudo sysctl -w vm.max_map_count=262144docker-compose up # 创建并启动容器docker-compose down #停止容器docker-compose down -v #停止容器并且移除数据#docker-compose.yamlversion: '3

2021-12-24 02:42:44 1682

原创 KeepAlived+ha-proxy+rabbitmq(mirror镜像模式)集群高可用

KeepAlived+ha-proxy+rabbitmqmirror 镜像队列,是保证 rabbitMQ 数据的高可靠性解决方案,主要就是实现数据的同步,一般来讲是 2 - 3 个节点实现数据同步。对于 100% 数据可靠性解决方案,一般是采用 3 个节点。 用 KeepAlived 做 HA-Proxy 的高可用,然后有 3 个节点的 MQ 服务,消息发送到主节点上,主节点通过 mirror 队列把数据同步到其他的 MQ 节点,来实现其高可靠。构建rabbitmqdocker pull ra

2021-12-10 21:54:10 3997

原创 nginx+consul+swoft 集群高可用与服务注册、发现

整体架构图构建consul集群服务端1主2从,客户端2台,共5台组成集群docker hub 搜索合适的consul版本,拉起镜像到本地docker pull consul:1.10.4 # 拉取镜像编写consul.yaml文件# consul.yamlversion: "3.7" # 确定docker-composer文件的版本services: # 代表就是一组服务 - 简单来说一组容器 # server consul_master_server_173_10:

2021-12-10 15:55:27 2822

原创 Mouse without Borders 两台win11电脑共享鼠标键盘

mouse微软商店下载地址两台电脑,一台选yes,一台选no选yes如下图:选no的如下图,将no图的code填写到yes的电脑上,点击link连接成功,点下一步,就进入配置界面,已可以成功共享键鼠

2021-12-02 16:13:15 2209 3

原创 win11解决WSL2中Vmmem内存占用过大问题

按下Windows + R 键,输入 %UserProfile% 运行进入用户文件夹新建文件 .wslconfig ,使用VScode或记事本编辑#.wslconfig[wsl2]memory=4GBswap=5GBlocalhostForwarding=true保存后,重启电脑即可

2021-11-29 20:54:36 7722

原创 thinkphp6异常处理与日志

异常处理目标:返回json格式的异常信息 # url_route_must:true强制路由模式下目标:访问未定义的路由时返回json格式的信息 # url_route_must:false 非强制路由模式下日志DEBUG模式下默认记录error级别和sql执行语句日志非DEBUG模式默认仅记录error级别日志

2021-11-26 10:27:36 2308

原创 thinkphp6多应用模式

安装thinkphp6cd D:\wwwcomposer create-project topthink/think tp6-admin-api # 项目名称多应用模式安装多应用模式扩展think-multi-appcd D:\www\tp6-admin-api # 进入项目目录composer require topthink/think-multi-app创建admin应用php think build admin为应用添加路由复制根目录下route文件夹到admin应用

2021-11-24 16:32:17 638

原创 Windows Terminal工作环境配置

安装Windows Terminal在微软商店搜索并安装Terminal安装powershell修改PowerShell为默认启动程序,并在json配置中隐藏Windows PowerShell修改ubuntu终端默认路径设置wsl ubuntu 终端用户进入默认路径字体字体网站:https://www.nerdfonts.com/下载,解压,将字体放入C:\windows\FontsOh My Posh官网网文档:https://ohmyposh.dev/win1

2021-11-22 01:57:04 1154

原创 vscode编辑wsl2:ubuntu中的文件提示没有权限

sudo chown -R $USER /path/to/folder #把文件夹路径赋予当前用户权限

2021-11-21 16:14:13 3263

原创 Windows11 安装 WSL2,wsl2+ubuntu子系统+docker 感受丝般顺滑

主板BIOS中开启虚拟化启动电脑,按DEL键,进入BIOS页面进入Advanced,CPU Configuration ,修改Intel(VMX) Virtualization Technology为Enabled,保存重启安装WSLMicrosoft WSL官方安装文档网址:https://docs.microsoft.com/en-us/windows/wsl/install-manual

2021-11-20 23:57:08 9483 1

原创 更改 Powershell 启动后的默认目录

在下面指定目录下新建profile.ps1文件C:\Users\58040\Documents\WindowsPowerShell\profile.ps1加入配置: set-location D:\www\vue3

2021-11-13 13:33:38 3448 2

原创 yarn : 无法加载文件 D:\Program Files\nodejs\yarn.ps1,因为在此系统上禁止运行脚本。

安装yarnnpm install -g yarn查看yarn 版本yarn --version报错:yarn : 无法加载文件 D:\Program Files\nodejs\yarn.ps1,因为在此系统上禁止运行脚本。解决方法:执行命令: set-ExecutionPolicy RemoteSigned在弹出窗口选择 :是(Y)允许执行脚本,后再执行yarn命令即可....

2021-11-13 13:00:17 5526

原创 docker下搭建Nginx+Consul+UpSync动态负载均衡

docker run -p 8080:8080 -d --name nginx2 -v /docker/nginx2/default.conf:/etc/nginx/conf.d/default.conf -v /docker/www:/docker/www --privileged=true nginxnginx -V#安装wget zipapt updateapt -y install wget zip unzipapt -y install gcc autoconf automake mak

2021-09-13 12:33:24 374

原创 JMete压力性能测试工具安装

http://jmeter.apache.org/官网下载最新版本下载完成直接解压,进入bin目录,右键以管理员身份运行jmeter.bat安装遇到问题:报错:Not able to find Java executable or version. Please check your Java installa需要安装jdk8.0以上版本,下载地址:https://www.oracle.com/java/technologies/javase-downloads.html使用遇到问题:

2021-09-02 15:07:44 3162

原创 phpstorm 启动报错:Key com.tang.intellij.lua.luacheck.LuaCheckSettings duplicated

今天phpstorm突然挂了,启动弹出下图错误,记得昨天安装了lua插件,尝试删除插件后正常启动进入C:\Users\58040\AppData\Roaming\JetBrains\PhpStorm2021.1\plugins # 修改你电脑的user目录删除EmmyLua目录.重新启动PHPstorm即可...

2021-08-25 17:36:45 1000

原创 python归并排序、快速排序

递归排序和快速排序都是是分治思想归并排序(Merge Sort)归并排序把数组从中间分成前后两部分,重复拆分直至最小粒度,然后对前后两部分分别排序,再把排序好的两部分合并在一起.快速排序(Quick Sort)快排在数组中选择任意一个下标点作为pivot(分区点),遍历start到end之间的数据, 将小于pivot的放左边,将大于pivot的放右边,再重复处理小于区和大于区,直至满足终止条件

2021-08-18 10:13:26 269 1

原创 玩转laravel中Container容器类常用方法

新建containerlaravel框架public目录下新建container.php,先建立user和log两个类供后续,实例化容器/** * @author biny * @date 2021-08-11 8:45 */require __DIR__.'/../vendor/autoload.php';use Illuminate\Container\Container;class User{ public $param; public $log; pub

2021-08-11 19:03:13 903 4

原创 git常用命令大全

git常用命令:获取git仓库 查看status、log、diff 添加add、提交commit、删除rm推送push 拉取pull远程仓库源 remote临时存储 stash切换、撤销修改 checkout版本回退 reset分支branch变基rebase

2021-08-06 19:12:37 184

原创 laravel路由Routes

路由最基本的 Laravel 路由接受一个 URI 和一个闭包:use Illuminate\Support\Facades\Route;Route::get('/hellow', function () { return 'Hello World';});所有 Laravel 路由都在路由文件中定义,这些文件位于routes目录中。这些文件由应用程序的App\Providers\RouteServiceProvider. 该routes/web.php文件定义了用于您的 Web 界面

2021-07-27 13:08:49 543

原创 laravel Facades—通过别名\外观的方式访问解析服务容器中对应的服务

个人理解总结:Facades是通过别名或外观的方式访问解析服务容器中对应的服务。官方描述:在整个laravel 文档中,您会常看到通过“外观(Facades)”与 Laravel 功能交互的代码示例。Facades 为应用程序的服务容器中可用的类提供“静态”接口。Laravel 附带了许多门面,可以访问几乎所有 Laravel 的功能。Laravel 外观充当服务容器中底层类的“静态代理”,提供简洁、富有表现力的语法的好处,同时比传统的静态方法保持更多的可测试性和灵活性。

2021-07-26 22:33:58 332

原创 laravel中间件 — 面向AOP编程

AOP向切面编程,是laravel框架中的一个重要内容,laravel中,中间件的实现更像一个管道,request通过层层管道,最后再response返回给客户,官方也是通过Pipeline(管道)类来实现中间件,先看看下图,再感受下下方原生面向过程,面向对象,以及array_reduce管道式三种方式实现中间件,laravel实现中间件

2021-07-26 13:29:52 1533

原创 Laravel的容器(Container)、控制反转(IOC)、依赖注入(DI)

容器(Service Container)Laravel 的核心就是一个 IOC 容器,也称为服务容器,服务容器是管理类依赖和执行依赖注入的强大工具依赖注入(Dependency Injection)当依赖不由内部创建生产,而是由外部以参数或其他形式注入的,即是依赖注入(DI),依赖注入作为控制反转最常见的一种实现方式依赖注入的实现方式一般有:构造函数或者初始化方法注入,依赖对象通过参数注入,这是最常用的方式属性注入,通过设置对象的成员或属性来注入方法注入,通过调用对象方法来注入clas

2021-07-20 20:44:36 1824 6

原创 laravel8.49生命周期

laravel官方生命周期文档深度挖掘 Laravel 生命周期官方的文档结合深度挖掘 Laravel 生命周期,已经很细致了。自己画了图下图一加强记忆理解图一:图二:图二是网络上找到的,在请求处理方面更详细...

2021-07-20 11:06:13 148

原创 laravel8.49安装与使用dingo/api、jwt-auth、phpredis、predis、selasticsearch、laravel-queue-rabbitmq

laravel8.49安装与使用dingo/api、jwt-auth、phpredis、predis、selasticsearch、laravel-queue-rabbitmq

2021-07-16 18:49:51 560

原创 使用supervisor来管理进程守护监控laravel-s

安装supervisoryum install -y epel-releaseyum yum install -y supervisorvim /etc/supervisord.d/laravel-s.ini # 增加需要守护监控的进程配置[program:laravel-s]#进入docker容器内启动服务command=docker exec -i php bash -c '/docker/www/shopby/laravels start -i'numprocs=1autos.

2021-07-11 12:26:01 269 2

原创 docker+laravel8.49+swoole

docker下laravel容器、laravel+swoole容器搭建,nginx反向代理,ab性能测试

2021-07-11 10:36:52 280

原创 给docker下的php7.4容器增加swoole、xdebug、amqp、pdo_mysql、redis扩展

docker的php容器中安装swoole扩展docker的php容器中安装XdeBug扩展 docker的php容器中安装amqp扩展 docker的php容器中安装pdo_mysql扩展Swoole 是一个使用 C++ 语言编写的基于异步事件驱动和协程的并行网络通信引擎,为 PHP 提供协程、高性能网络编程支持。提供了多种通信协议的网络服务器和客户端模块,可以方便快速的实现 TCP/UDP服务、高性能Web、WebSocket服务、物联网、实时通讯、游戏、微服务等

2021-07-10 15:51:23 1517 5

原创 centos7安装docker+nginx+php+mysql+redis+openresty+rabbitmq容器

docker安装yum install -y docker docker常用命令docker搭建nginx容器docker搭建php容器docker搭建mysql容器docker搭建redis容器docker搭建openresty容器docker搭建rabbitmq容器php容器中安装amqp扩展

2021-07-10 13:16:02 1102

原创 python冒泡排序、插入排序、选择排序

冒泡排序(Bubble Sort)冒泡排序会对相邻的每两个元素进行比较,当左侧元素大于右侧元素时,交换它们的位置。重复 n-1轮,直至完成排序。插入排序(Insert Sort)插入排序将数组中的数据分为两个区间,已排序区间和未排序区间。选择排序(Select Sort)选择排序每轮会从数组中找出最小元素,直接交换到左侧,并在左侧维护一个有序区,重复n-1轮,排序完成。这种排序最大优势就是省去了多余元素的重复交换。劣势是它不是一个稳定的排序算法

2021-06-30 16:24:08 135

原创 python函数、闭包函数与匿名函数

函数是为了实现某一功能的可重复使用的代码段,函数变量作用域,函数参数传递下的可变对象(mutable)与不可变对象(immutable),闭包函数:函数存在嵌套,并且子函数引用了父函数中的变量,可以访问这些变量的作用域就形成闭包。匿名函数lambda:lambda 只是一个表达式(expression),lambda的主体是一个表达式,而不是一个语句或代码块。仅仅能在lambda表达式中封装有限的逻辑

2021-06-24 20:29:51 144

原创 python基于单链表的链式队列和基于数组的循环队列

队列(queue)也是一种操作受限“”的线性数据结构,只支持入栈和出栈操作。栈中的元素只能先进后出(First In First Out)。队列的出口端叫作队头head,队列的入口端叫作队尾tail队列的应用非常广泛,特别是一些具有额外特性的队列,如:循环队列、阻塞队列、并发队列LinkedQueuedef enqueuedef dequeue

2021-06-23 09:00:09 328

原创 python基于单链表实现栈

python单链表实现栈 链式栈栈(stack)是一种"操作受限"的线性数据结构,只支持入栈和出栈操作。栈中的元素只能先进后出(First In First Out)。最早放入的元素位置叫作栈底bottom,最后放入的元素位置叫作栈顶top。经典的应用场景:浏览器前进后退、函数调用栈SingleLinkStack stack.push() stack.pop()

2021-06-22 20:25:07 247

原创 python字符串

字符串的常用写法字符串的切片和遍历字符串的不可变性和格式化

2021-06-21 10:38:46 66

原创 python字典与集合

字典是一系列由键(key)和值(value)配对组成的元素的集合在python3.7+字典被确定为有序,其长度大小可变,元素可以任意的增删改。相比于列表和元组,字典性能更优秀,增删改查操作都可在常数时间复杂度内完成。集合和字典基本相同,区别是没有键和值的配对,是一系列无序的、唯一的元素组合。集合不支持索引进行访问、操作,其本质上是一个哈希表,和列表不一样。字典和集合的工作原理,字典和集合的内部结构都是一张哈希表字典表存储了哈希值(hash)、键和值这三个元素,集合没有键和值的配对,只有单一的元素

2021-06-20 09:04:44 278

原创 python列表与元组

列表是动态的,长度可变,可以随意增删改元素,列表的存储空间略大于元组,性能略逊于元组元组是静态的,长度大小固定,不可对元组进行增删改操作,仅可从新赋值,相对列表更加轻量级,性能略高。

2021-06-19 15:54:51 224

原创 python单链表写的LRU淘汰策略

单链表写出的lru淘汰策略,貌似惨不忍睹,记录下待重构class Node(object): def __init__(self, value=None, next=None): self.value = value self.next = next

2021-06-19 08:47:38 125

空空如也

空空如也

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

TA关注的人

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