自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

菠菜的专栏

菠菜的专栏

  • 博客(50)
  • 资源 (13)
  • 收藏
  • 关注

原创 laravel 给日志目录添加写入权限

【代码】laravel 给日志目录添加写入权限。

2024-10-31 15:49:45 495

原创 mongodb 按条件进行备份和恢复

--db ad_db 指定备份的数据库--collection websocket_client 指定备份发集合--query $whereday 这里指定筛选数据的条件是 按天--out $dir 指定备份文件输出的目录

2024-10-31 14:58:56 635

原创 进程守护SuperVisord内部的进程定时监测并重启

设置一个每分钟任务监测9503的端口链接数,输出链接数,并在链接数为0的情况下重启wensocket进程。

2024-10-31 14:35:14 508

原创 进程守护SuperVisord 默认打开文件数问题

我们使用snap安装mqtt2.0 如果你没有安装过 要先yum安装snap 。yum install epel-releaseyum install snapdsystemctl enable --now snapd.socketln -s /var/lib/snapd/snap /snap完成后要重启服务器后重新登陆安装命令 snap install mosquitto正常会返回mosquitto 1.6.10 from Roger Light (ralight) in...

2024-10-31 14:26:56 172

原创 mongodb指定引擎并设置内存使用大小

WiredTiger 存储引擎:默认的存储引擎为 WiredTiger 存储引擎,非常适合大多数工作负载,建议用于新部署。WiredTiger 提供文档级并发模型、检查点和数据压缩等功能。In-Memory 存储引擎:In-Memory 存储引擎在 MongoDB Enterprise 中可用。它不是将文档存储在磁盘上,而是将它们保留在内存中以获得更可预测的数据延迟。虽然默认引擎就是wiredTiger 但是非常有必要知道应该怎么设置引擎。

2024-10-31 14:22:03 507

原创 监测mongodb服务并启动

对与这种情况大家要清楚mongdo的链接类似于mysql的长连接。也就是只要有一次连接,这个连接就会保持很长一段时间,除非是你的mongodb是很长时间没有客户端使用,才会触发这种极端情况。这个每分钟检查的脚本只能属于临时应急措施。也许有同学会担心,服务没有出问题,就是没有客户端来连接,这种情况。只能通过面板的定时任务每分钟去检查端口27017的链接数并输出,宝塔面板安装的mongodb数据库,但是缺少一个进程守护工具。如果链接数为了0,就重启mongodb服务。

2024-10-31 14:15:24 572

原创 离职必备技能 finalshell 导出快捷命令

但是你想在访达中找到这个路径不可能的,在ITerem2中你也无法访问这个路径,su到root账号也不行。finalshell 能存储平时的快捷操作,但是又遇到离职,这些个人工作经验肯定不能舍弃,必须要想办法保存。我的系统MacOs系统 文件的路径 /Users/用户/Library/FinalShell。然后直接访问 /Users/用户/Library/FinalShell 是不是就看到。config.json文件里面就是一个很大的json文件。说这个答案肯定不会错,但你也找不到文件。

2024-10-31 10:53:47 657

原创 Ngx+Lua+Redis 快速存储POST数据

系统几万台设备有windows有安卓还有linux系统,每个设备三分钟就会向服务器post设备的硬件信息,数据格式json,后台管理界面只需要最新的数据,不需要历史数据,业务逻辑非常简单,PHP代码就几行,已经优化到极致了,但是架不住频率太高了。服务器负载就被这个的简单逻辑给耗尽。做法也很简单就是不用php-fpm,nginx接收到数据,直接把post数据存储到redis里面,供管理后台直接使用。我的设备唯id是,通过header头的”Authorization“ 传递的,你需要结合你你的实际代码。

2024-10-08 17:47:42 562

原创 Ngx+Lua+Redis 实时IP黑名单系统

要想速度快还的在nginx层实现阻塞。php管理后台把黑名单ip写入到redis,nginx层使用lua脚本去redis查询ip是否在黑名单里,实现实时控制。

2024-10-08 17:22:56 789

原创 MongoDB的UTCDateTime如何使用

MongoDB的UTCDateTime存储的时间是0时区的UTC时间,MongoDB这个数据库是没有时区设置的。建议存储的时候就把时区加上,例如东八区(存储的时间都统一加上8*3600秒),这样Navicat之类的客户端查看数据的时候时间就正常了,PHP程序使用的时候也是直接使用不考虑时区转换。使用MongoDB的UTCDateTime类来存储当前的UTC日期和时间。如果你想把UTCDateTime对象格式化为可读的字符串需要先把UTCDateTime对象转换成PHP的DateTime类。

2024-04-22 18:26:53 444

原创 宝塔面板定时任务重启各种服务

当服务器重启后有可能部分服务没有成功启动这个时候可以用定时任务去检查服务状态,然后对不正常的自动启动就可以。

2023-07-28 10:07:22 2102

原创 nginx网址重写后post数据如何获取

post的时候,参数是存放在message body中传递的,对于内部的url调转,因为是相同的一次请求,所以message body(request body)没变,所以post数据不会丢失。而对于外部跳转,实际上是一次302,即用户在请求了一次,所以第二次就不会post第一次的数据了

2023-02-14 20:53:20 1045

原创 mysql 按日期分表用到的sql语句

2 创建表,根据一个母表创建一个 按月的表,并且要带上索引与外键。如果字段不一致 或 表不在一个库里面。3 按前缀查询所有的表。

2023-02-07 12:07:06 505

原创 PHP-Beast 代码加密

PHP-Beas,带php扩展,代码解析速度几乎没有影响。而且解密难度特别高。

2023-01-13 14:17:26 607

原创 Redis Stream +php7 实现消息队列

Redis Stream 是从5.0才有的新数据结构,基础知识参考网址Redis Stream | 菜鸟教程Redis Stream Redis Stream 是 Redis 5.0 版本新增加的数据结构。 Redis Stream 主要用于消息队列(MQ,Message Queue),Redis 本身是有一个 Redis 发布订阅 (pub/sub) 来实现消息队列的功能,但它有个缺点就是消息无法持久化,如果出现网络断开、Redis 宕机等,消息就会被丢弃。 简单来说发布订阅 (pub/sub) 可.

2022-03-25 20:56:38 2022

转载 RabbitMQ+PHP7+amqplib插件实现消息队列

如果你有服务器权限 最好使用php扩展,这样效率高。参考另一篇文章 《RabbitMQ+PHP7扩展模式实现消息队列》https://blog.youkuaiyun.com/hangbobo/article/details/123571200https://blog.youkuaiyun.com/hangbobo/article/details/123571200如果没有服务器权限只能退而求其次使用插件了原文地址 使用php-amqplib连接rabbitMQ 学习笔记及总结 - snailZED - 博客园在.

2022-03-18 14:27:14 337

原创 RabbitMQ+PHP7扩展模式实现消息队列

windows下 PHP7 安装 扩展amqp先搞清楚自己电脑上php的线程安全phpinfo 下 看Thread Safe 值接下来下载dll文件 地址http://pecl.php.net/package/amqpphp7.2以上的建议使用1.10.2版本PECL :: Package :: amqp 1.10.2 for Windowshttps://pecl.php.net/package/amqp/1.10.2/windows注意php版本 ,X86 和X64 根据自己情况 , ...

2022-03-18 14:19:26 343

原创 win10 右键增加《在此处打开命令窗口》命令

在Windows下如果要在一个目录下执行cmd命令,正常操作需要先打开cmd,如果非系统盘还需要跳转盘符,然后cd 到相应目录,那是一个麻烦呀。其实可以再右键增加一个《在此处打开命令窗口》的命令。Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\Directory\shell\OpenCmdHere]@="在此处打开命令提示符""Icon"="cmd.exe"[HKEY_CLASSES_ROOT\Directory\shell\O

2022-01-25 09:56:20 508

原创 php7 mongodb 使用(五)$lookup 多表关联

管道操作$lookup 可以把两个表进行关联查询,其效果等于mysql的INNER JOIN 左右两个表必须同时存在的数据。$lookup有两种方式第一种,只能使用一个固定的字段关联表,建议这个字段最好是from表的主键,否则效率会很差。$pipeline[]=['$lookup'=>['from'=>'user_status','localField'=>'user_id','foreignField'=>'_id','as'=>'info']];第二种...

2022-01-17 12:04:56 1269

原创 mysql 存储过程同步数据

接到需求 正式环境数据库db01和测试环境的数据库db02中所有表字段完全一样但是数据行不一致,要求把db01中的数据覆盖到db02,如果数据表的主键一致就db01覆盖db02,不一致的全部保留。实现方法把db01中所有表中数据的主键取出,然后在db02的表中先删除主键对应的数据,然后插入db01的数据。简单的方法实现,但是到了代码层缺不好实现。1表很多,2主键不都是id。3表中的数据行很多。用php获取所有表和对应的主键SELECT a.TABLE_NAME,b.column_name .

2022-01-05 17:59:22 1675

原创 Hyperf安装完成后的基本设置

Centos 安装 Swoole框架Hyperf过程_菠菜的专栏-优快云博客前文说了安装过程,现在说说一些基本配置。1,启动界面输出了太多无用信息,需要精简config/config.phpreturn [ 'app_name' => env('APP_NAME', 'skeleton'), 'app_env' => env('APP_ENV', 'dev'), 'scan_cacheable' => env('SCAN_CACHEABLE', f.

2021-11-12 09:48:36 3071

原创 php7 mongodb 使用(四)集合的创建删除改名操作

使用的mongodb操作类 请参考以前的文章php7 mongodb 使用(二)原生驱动 增删改查和统计首先 查询集合$m_model= new MongoClass();$cmd=['listCollections' => 1,'nameOnly'=>true];$res=$m_model->query('',$cmd,[],'command');返回当前库下的所有集合。如果是只想获得test前缀的集合$cmd=['listCollections' => 1,'.

2021-10-23 19:25:05 317

原创 阿里云SLS日志服务php的SDK写入缓存问题

最近的项目使用了 阿里云的日志服务,感觉挺好用,SDK接入照着官方sdk里面的DEMO,简单顺利接入。核心代码就个函数。private function getObj($topic='TestTopic'){ //通过使用相同参数调用工厂方法来创建相同的记录器实例 return \Aliyun_Log_LoggerFactory::getLogger(self::$client, $this->project, $this->logstore,env(..

2021-08-17 21:52:33 998

原创 php strtotime函数年月操作异常

strtotime可以很方便的计算 1天前 1周前 1月前 1年前的时间戳。但是月和年的周期是不固定的,使用这个方法会出现异常。例如 计算3月31日的一个月前的时间结果会怎么样echo date("Y-m-d", strtotime("-1 month", strtotime("2017-03-31")));//输出2017-03-03echo date("Y-m-d", strtotime("+1 month", strtotime("2017-08-31")));//输出2017-1.

2021-08-11 22:03:46 359

原创 php7 mongodb 使用(三)原生驱动下聚合操作与管道操作

mongodb 3.2版本才有聚合操作,如果你是用的版本低于3.2,请先升级版本。代码基于php7原生驱动,php5或者mongodb library 类库的,请出门从外面带上门,不送。使用的php操作类 请先查看本文的上一章节 《php7 mongodb 使用(二)原生驱动 增删改查和统计》在上一章节中 我们介绍Command 命令时候使用了一个例子统计一个集合下的数据量 类似mysql 的 count$cmd=["count" => $table,"query" =>$fi...

2021-04-19 22:30:17 495

原创 php7 mongodb 使用(二)原生驱动 增删改查和统计

php7安装mongodb的扩展。宝塔面板环境下php7.3默认安装了pecl扩展包, 安装的php7.4版本是默认不带pecl扩展包的。需要手动安装php版本 < 7的时候yum install php-pear 就可以但是7.4 版本的不行,$ wget http://pear.php.net/go-pear.phar$ php go-pear.phar安排完成后pecl install mongodb 安装扩展最后在php.ini 中添加 extension=mon...

2021-04-17 19:48:02 609

原创 php7 mongodb 使用(一) 识别三种类型

最近的工作和mongodb相关,恶补了各种姿势,踩了了很多坑。一,分清楚三种mongodb1,php5时代的mongodb,标志特征MongoClient()对象。示例$m = new MongoClient(); // 连接默认主机和端口为:mongodb://localhost:27017$db = $m->test; // 获取名称为 "test" 的集合$db->selectdb('test'); //查询集合更多操作 参考网址https://www....

2021-04-17 17:52:12 344

原创 宝塔面板 mongodb 重置密码

使用宝塔面板的mongodb 结果忘记了数据库的密码只能走一遍重置密码的流程1 首先修改authorization: disabled 关闭密码验证, 同时记得把端口也设置为27017, 并重启服务2 ssh操作cd /www/server/mongodb/binmongo> show dbs列出所有db> use mydb> show users 列出所有账户> db.changeUserPassword('myuser','123456') 设...

2021-04-17 14:23:44 687

原创 DataTable的实践3 搜索参数

上一章节我们演示了服务端分页 AJAX参数传递参数,搜索是参数的的一部分,今天我们来详细展示搜索参数先上html代码<div id="sousuo" class="card-header"> <div class="form-group row"> <div class="col-sm-2"> <div class="input-group"> <div class="i.

2021-04-02 20:45:09 759

原创 DataTable的实践2 服务端实现分页与搜索

DataTable 服务器做数据分页,并按搜索条件筛选数据,前端通过ajax和服务端交互数据,每次分页或搜索,都是ajax向服务器请求数据后展示。这种方式适合表数据量持续增长情况.先上前端代码和前端分页相比这里只需要填写表头。下面JS代码function get_lang(){ return { "sProcessing": "处理中...", "sLengthMenu": "每页 _MENU_ 项", "sZeroRecords".

2021-04-02 20:11:54 637 1

原创 DataTable的实践1 前端分页并实现搜索

最近的项目一直在使用DataTable,走了很多弯路,也踩了很多坑,总结经验,方便后来人。官方网址https://datatables.net/中文资源http://datatables.club/DataTable 根据分页方式有两种,第一种方式,从服务器一次性获取全部数据,然后前端DataTable来组织分页和搜索。访问分页和搜索都不再和服务器交互数据,直至当前页面被刷新或重新打开。第二种方式,服务器做数据分页,并按搜索条件筛选数据,前端通过ajax和服务端交互数据,每次分页或搜...

2021-04-02 18:24:13 864

原创 页面输出JSON的格式化数据

系统有一个日志记录用户的访问传参和返回结果像返回结果 是一个json字符,如果不做格式化处理看起来真的很费力github上的项目https://github.com/summerstyle/jsonTreeViewer下载文件后打开html功能很多,很多都是用不到的,先精简一下,去掉多余的功能,代码放到后台很尴尬,js有冲突。无奈只能iframe嵌套页面。嵌套的页面代码很简单<!DOCTYPE html><html><head> .

2021-04-02 17:29:23 658 1

原创 PHPExcel 升级到 PhpSpreadsheet

项目原本php7.2 集成PHPExcel 插件 使用没任何问题但是现在php7.2升级到php7.4。 composer update 的时候总是提示PHPExcel不兼容php7.4最初解决方案是 把vendor/phpoffice 下类似 $array{0} 改成$array[0],改了多处代码后,execl导入导出功能在7.4下勉强能用。但是每次部署新服务器总是这个操作感觉太low,最近时间充裕花了半天时间升级到PhpSpreadsheet,彻底解决埋了这个坑。1,c...

2021-03-20 12:06:05 986

原创 Centos 更换yum源

1下载源网易yum源:wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo或者阿里云yum源:wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repowget -O /etc/yum.repos.d/CentOS-Base.repo htt.

2021-03-13 19:48:14 122

原创 制作mysql版的ip数据库 代码基于PHP

1,ip数据数来源 纯真点击右下的解压,获得ip数据的txt版本。我们就是要把这个txt文本里的数据逐行导入到数据库2,创建数据表CREATE TABLE `ip_data` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `ipstart` int(10) unsigned NOT NULL COMMENT 'ip开始', `ipend` int(10) unsigned NOT NULL COMMENT 'ip结束', `r

2021-02-05 11:40:55 184

原创 宝塔面板 mongodb设置账号,密码,数据库,并配置远程连接

宝塔面板安装mongo4.0后需要设置账号密码可数据库才能使用安装后authorization: disabled 默认配置时才可以使用这个功能,如果没有admin 需要先手动创建一个admin库,然后在创建一个yourdatabaseSSH终端1、进入mongodb安装目录,下面是宝塔面板的默认目录cd /www/server/mongodb/bin2、进入mongodb环境 并切换到admin数据库mongouse admin3、看看当前有哪些用户...

2021-01-08 20:30:33 8955

原创 GoLand 2020.3 安装过程 设置中文 设置国内软件源 笔记

官网下载地址https://www.jetbrains.com/go/下载最新版 全部默认安装第一进去选择30天免费试用就可以1设置中文截图都是后补的,英文界面请自己对照位置插件中搜索 chinese 安装第二个 中文语言包 就可以了...

2020-12-11 07:17:12 3512 4

原创 Visual Studio Code 设置中文,国内软件源,go插件

官方下载地址https://code.visualstudio.com/下载最新版,默认安装就可以1设置中文ctrl+shift+x 进入安装扩展的界面 搜索 Chinese选择 Chinese (Simplified) Language Pack for Visual Studio Code 这个后 右侧窗口 点击install 就可以了2安装国内源首先开启 Go 的MODULE支持 在DOS中输入 SETX GO111MODULE on Mac 为expo...

2020-12-11 07:08:37 3313

原创 一个简单的唯一令牌实现,彻底防止恶意并发多领奖励的行为。

事情的起因mysql的四种事务的隔离级别,开发时候mysql默认可重复读(repeatable-read)所以使用事务行锁,锁定一行记录,可以实现互斥,并发操作这一行记录的请求最终按顺序排队,避免常见的恶意并发多领奖励。但是合作方的机房DBA,为了可能存现的小概率事件,假如行锁释放出问题,会导致数据库卡死。所以把事务隔离级别调整到,读未提交(read-uncommitted)。这样确实可以避免互斥,大幅度减少数据库卡死的可能性,但是问题也跟着来了。恶意并发多领奖励。场景:支付一个订单,发起10个并

2020-11-23 10:16:47 532

原创 Hyperf如何使用redis

1程序根目录下 .env文件配置redis服务器参数REDIS_HOST=127.0.0.1REDIS_AUTH=(null)REDIS_PORT=6379REDIS_DB=12Controller文件中<?phpdeclare(strict_types=1);/** * This file is part of Hyperf. * * @link https://www.hyperf.io * @document https://hyperf.wi...

2020-09-30 09:34:49 3623

离职必备技能 finalshell 导出快捷命令

常用linux操作命令

2024-10-31

navicat 16 premium 中文语言包

解压后目录 zh-Hans.lproj 放到Navicat安装目录下的 Resources目录下就可以,这个是我在macos下验证可以使用的,至于win系统能不能用有待验证

2022-06-09

MQTTX.Setup.1.5.2.exe

MQTTX.Setup.1.5.2.exe windows下 mqtt客户端软件

2021-04-02

jsonTreeViewer的精简优化版

jsonTreeViewer是GitHub上的开源项目功能齐全,这个文件是对其精简后的代码

2021-04-02

纯真ip数据库的mysql文件

纯真ip数据库的mysql文件

2021-02-05

appstackadmin

AppStack React Admin&Dashboard模板是一个响应性引导4管理员仪表板,专为希望在最流行的框架Bootstrap&React上运行Web应用的所有人而构建。AppStack React帮助您更快地创建下一个引导。它可以用于创建基于saas的界面、管理员仪表板或任何您想在web上构建的东西。AppStack React帮助您的团队更快地移动并节省开发成本。

2021-01-09

Visual-AMP-v7.0.31-x64.exe

Visual-AMP-v7.0.31-x64.exe

2021-01-09

Visual-NMP-v7.0.31-x64

Visual-NMP-v7.0.31-x64

2021-01-09

GoLand的一个插件

GoLand的一个插件

2020-12-11

phpRedisAdmin-1.13.1 包含composer依赖

phpRedisAdmin-1.13.1 包含composer依赖, php管理redis的图形化界面最好的,没有之一 解压后可以直接使用

2020-11-28

phpRedisAdmin-1.13.1

phpRedisAdmin-1.13.1 这是最新版 图形化管理redis数据工具类似phpmyadmin,使用方法和phpmyadmin一样 特别提醒 解压后需要 composer update

2020-09-16

phpqrcode.php

php生成二维码的扩展库phpqrcode,依赖gd库。php默认是开gd的。在此做个备份。以备以后找不到

2020-09-16

flash链接修改器

不用反编译flash就可以直接修改flash里面的链接

2013-09-04

zend7.1注册码

zend7.1注册码 Username: zendstudio.net Serial Number: 3727234F6095F72034F6095F

2011-01-18

空空如也

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

TA关注的人

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