自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 资源 (3)
  • 收藏
  • 关注

原创 php/golang使用chrome内核实现服务器端html转pdf,html转图片,pdf加水印,pdf转图片等

php/golang使用chrome内核实现服务器端html转pdf,html转图片,pdf加水印,pdf转图片等DoctronDoctron是一个docker化的文档转换工具,在线演示地址:Doctron。github地址: https://github.com/lampnick/doctron 。 有如下特点:html转图片(支持自定义页面大小,边距,高质量转换)html转pdf(支持自定义页面大小,边距,高质量转换)pdf加水印服务器端渲染一键部署(支持docker,提供了k8s ya

2020-10-26 14:48:13 2375

原创 Linux grep 时不显示自身程序以及kill杀死进程的方法

文章目录原文链接:[http://www.lampnick.com/php/972](http://www.lampnick.com/php/972)grep 不显示自身的方法使用 grep 的 -v 参数使用正则kill 通过进程名杀死进程的方法结合 ps awk kill 杀死进程通过 pkill -9 删除 ,很可能杀不死原文链接:http://www.lampnick.com/php/972grep 不显示自身的方法使用 grep 的 -v 参数未使用 -v 时的效果$ ps -ef|

2021-06-18 16:17:53 666

原创 php 使用fopen/readfile等函数时打开https类型的URL返回false的解决方案

个人博客原文:http://www.lampnick.com/php/967php 使用fopen/readfile等函数时打开https类型的URL返回false,报如下错误fopen(): SSL operation failed with code 1. OpenSSL Error messages:error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed意思是证书验证失败,此时我们.

2020-12-26 14:50:58 1513

原创 使用golang进行kong限流插件开发

个人博客原文地址:http://www.lampnick.com/php/950rate limiting限流仓库地址https://github.com/lampnick/kong-rate-limiting-golang前置条件获取编译基础镜像(Go插件是使用-buildmode=plugin标志编译的,该标志允许插件服务器动态加载它们。)docker pull kong/go-plugin-tool:latest-centos-7go-pluginserver可执行文件路径默认

2020-09-14 17:28:53 2902 2

原创 关于vgdisplay VG Size中的小于符号

使用vgdisplay时有时在 VG Size会出现"<“符号,这个小于符号是啥意思呢?有没有可能是VG大小限制呢?其实不然,这个”<"符号表示的时实际的VG Size会小于物理盘的大小,因为存在损耗,所以会有误差。[root@xxx ~]# vgdisplay --- Volume group --- VG Name ocar System ID Format lvm2 Metadat

2020-06-21 18:06:18 1632

原创 为什么ENOENT常量表示没有这样的文件或目录no such file or directory

其实ENOENT是Error NO such an ENTry的缩写,表示没有这样的条目,而在linux系统中entry就表示了file(anything is file in linux),directory。

2020-06-15 11:11:01 1185

原创 k8s 1.14部署metrics server显示running但是报ServiceUnavailable错误

k8s 1.14部署metrics server显示running但是报ServiceUnavailable错误查看metrics server日志:[root@master metrics-server-latest]# kubectl logs -f metrics-server-v0.3.6-b59d6b7cb-9ftdf -nkube-system metrics-serverI0514 03:15:00.325762 1 serving.go:312] Generated sel

2020-05-14 11:37:46 2884 4

原创 istio部署grpc服务时遇到的问题

问题一:mycaller服务请求myresponser服务时,http接口可以通,grpc服务不通使用sleep容器对mycaller服务进行请求 # kubectl exec -it -c sleep $(kubectl get pod -l app=sleep -o jsonpath='{.items[0].metadata.name}') -- curl "mycaller.def...

2020-03-03 09:38:14 4491

原创 k8s多集群搭建istio共享控制平面(多网络)及部署grpc服务分流实践

个人博客原文:http://www.lampnick.com/php/913本文目标部署一个多集群的共享的istio服务网格部署一套基于grpc的服务对grpc服务进行流量管理架构图如下前提条件两个或多个kubernetes集群,版本为1.14,1.15,1.16,1.17有k8s管理员权限两个k8s集群(分别称为主集群prod和私有集群private),以下简称prod...

2020-03-03 09:37:19 2948

原创 php两个数组相加和array_merge的简单说明

直接上代码$a = [ 0 => 'a_0', 2 => 'a_2', 3 => 'a_3', 'c' => 'a_c'];$b = [ 1 => 'b_1', 3 => 'b_3', 4 => 'b_4', 'c' => 'b_c'];print_r($a + $b);pr...

2019-12-11 11:23:14 232

原创 Redis开发与运维-第一章初识Redis笔记

Redis介绍基于key-value的NoSQL数据库数据结构string字符串hash哈希list列表set集合zset有序集合Bitmaps位图HyperLogLogGEO地理信息定位…特性速度快,官方给出的数字是读写性能可以达到10万/秒,那为什么有这么快的速度呢?Redis的所有数据都是存放在内存中的,这是Redis速度快的最主要原因Redis是...

2019-11-13 17:31:40 386

原创 Redis内存管理(内存溢出后的淘汰or驱逐策略)

设置最大使用内存maxmemory通过redis.conf设置maxmemory通过redis-cli中设置:config set maxmemory 1mb,设置为1mb32位最大3GB,64位maxmemory为0时表示无限制通过CONFIG GET maxmemory查看可通过设置最大使用内存来进行测试驱逐策略LRULess Recently Used 最近最少使用算法...

2019-11-12 17:40:40 419

原创 对生产环境网站API接口进行全链路压力测试-通过优化支持16000并发

压测目标读请求接口1.6W并发,总请求16W写请求接口8K并发,总请求8W压测前的准备工作分析所有接口是否存在可能的性能问题静态代码分析采用Yii2提供的debug工具进行分析采用xhprof进行性能分析压测代码准备生成压测相关数据编写压测代码(有用户态的接口需要做模拟用户登录)人员准备5位开发人员1位测试人员1位运维人员人员分工运维人员进...

2019-10-30 10:27:33 854

原创 使用imagick将PDF转换成图片时报Fatal error: Uncaught exception 'ImagickException' with message 'FailedToExecute

$IM = new imagick();$IM->setResolution(200, 200);$IM->setCompressionQuality(100);$IM->readImage($pdfPath);使用imagick将PDF转换成图片时报错如下:Fatal error: Uncaught exception 'ImagickException' with...

2019-08-12 10:14:02 2309

转载 部署glusterfs及Heketi

部署GlusterFS集群由gfs01.lampnick.com,gfs02.lampnick.com,gfs03.lampnick.com三个节点组成GlusterFS存储集群,并将gfs01.lampnick.com节点部署为heketi服务器。在各节点上,均使用sda用于为GlusterFS提供存储空间分别在三个节点上安装glusterfs-server程序包,并启动glusterfs...

2019-07-15 16:17:31 720

原创 kubernetes(k8s)中部署metrics-server遇到的问题

个人博客原文:kubernetes(k8s)中部署metrics-server遇到的问题metrics-server版本:k8s.gcr.io/metrics-server-amd64:v0.3.3k8s版本:v1.14.1The '--source' flag is unavailable right now (v0.3.0-alpha.1)containers: - name...

2019-05-31 14:53:25 9001 3

原创 mac os 编译安装php时遇到configure: error: Cannot find OpenSSL’s

mac os 编译安装php configure时遇到错误configure: error: Cannot find OpenSSL's <evp.h>说是没有找到openssl的库,但是openssl已经通过brew install openssl安装好了,于是想着安装openssl-devel,但是mac上没有看到相关的,于是编译安装了openssl,指定里面的库文件目录...

2019-05-07 10:07:25 1403

原创 centos7.6使用kubeadm安装kubernetes的master worker节点笔记及遇到的坑

个人博客原文地址:http://www.lampnick.com/php/760本文目标安装docker及设置docker代理安装kubeadm使用kubeadm初始化k8s Master节点安装网络插件weave-kube部署 Kubernetes 的 Worker 节点部署kubernetes-dashboard监控组件 – prometheus-operator 部署(...

2019-04-25 15:47:09 14941 1

原创 使用redis2-nginx-module连接带密码的redis时报NOAUTH Authentication required. 错误解决方案

个人博客原文地址:http://www.lampnick.com/php/746使用redis2-nginx-module连接带密码的redis时报NOAUTH Authentication required. 错误解决方案版本:redis2-nginx-module-0.15使用redis2-nginx-module连接redis报错的nginx.conf代码如下:locati...

2019-03-20 17:00:29 1918

原创 由于使用GoMonkey Patch后导致GoConvey命令不能正常运行测试用例解决方案

个人博客原文地址:http://www.lampnick.com/php/740由于使用GoMonkey Patch后导致GoConvey命令不能正常运行测试用例解决方案出错提示runtime error: invalid memory address or nil pointer dereference原因由于GoMonkey Patch后需要关闭编译器对代码自动优...

2019-03-11 15:36:41 1636 1

原创 GO单元测试-GoConvey

原文:http://www.lampnick.com/php/732特性集成go test 可读的,带色彩的控制台输出 全自动Web UI 大量的回归测试套件 测试代码生成快速开始安装$ cd &lt;project path&gt;$ go get github.com/smartystreets/goconvey$ $GOPATH/bin/goconvey打...

2019-03-06 17:17:23 1230

原创 使用AES ECB PKCS5Padding+RSA对接口进行签名及加密的go代码实现

个人博客原文:http://www.lampnick.com/php/728完整代码的github地址:https://github.com/lampnick/AES-DES-Encrypt-Decrypt 使用说明参考main.go构建需要加密的数据,传入公私钥即可加解密。签名算法介绍为了保证数据的传输安全,在调用API时使用到了AES(ECB SHA128 PKCS5P...

2018-12-13 14:31:54 1335

原创 使用docker build构建golang程序时解决golang.org/x包不能下载的问题

个人博客原文地址:http://www.lampnick.com/php/712在构建golang docker镜像的时候,解决依赖时,发现golang.org/x包是不能下载的。Dockerfile.build内容如下:FROM golang:1.10-alpineWORKDIR xxxRUN apk add --update gitRUN go get -u github...

2018-10-13 11:00:42 3426

原创 Yii2-swiftmailer发邮件失败报fwrite(): SSL: Broken pipe

个人博客原文地址:http://www.lampnick.com/php/706Yii2版本:2.0.3SwiftMail版本:v5.3.1使用定时任务发邮件时,由于swiftmailer长时间运行没有关闭transport,造成SSL连接出错。报错1:exception 'Swift_TransportException' with message 'Expected re...

2018-10-13 10:37:16 2600

原创 通过shell实现分析nginx日志,自动封单个IP访问量大于指定值的国外IP

个人博客原文:http://www.lampnick.com/php/6621.在nginx的nginx.conf中http段或者server段中引入拒绝访问的IP列表include /usr/local/nginx/conf/blockip/*/*/*.conf;2.写shell脚本实现分析访问日志,将国外IP写入到拒绝访问的IP列表#!/bin/bash#当单个IP访问...

2018-08-31 17:27:48 1924

原创 Mac快捷键收集

个人博客原文:http://www.lampnick.com/php/643本文将持续更新console跳转到命令行首:ctrl+a跳转到命令行尾:ctrl+e新建一个console:command+t关闭当前console:command+w清除界面上一条记录的输出:command+l向前/后跳一个单词:option +左/右方向键删除光标处到行尾部分:ctrl+k删...

2018-08-14 11:09:26 252

转载 php如何计算指定工作日后的日期?

转自:https://segmentfault.com/q/1010000008208219?sort=createdphp如何计算指定工作日后的日期?&lt;?phpnamespace common\support;use DateTime;/** * Class BusinessDaysCalculatorHelper * @package common\support * ...

2018-06-29 13:01:46 1148

原创 Yii2 model rules里面自定义规则(匿名函数)无效,怎么解决??

个人博客原文:http://www.lampnick.com/php/582rules中定义的规则如下:public function rules(){ return [ ['price', 'required'], ['price', 'double'], ['price', function ($attr) { ...

2018-06-29 12:03:28 2097

原创 linux下PHP使用ZipArchive压缩zip文件出现乱码问题

个人博客原文:http://www.lampnick.com/php/166linux,centos下PHP使用ZipArchive压缩zip文件出现乱码问题问题描述: 在linux生产环境中,使用PHP的zip扩展ZipArchive类对多个文件进行压缩处理,出现了乱码的问题(压缩包内的文件名乱码,文件内容是正常的)。软件环境: 操作系统centos6.X($LANG为en_US.UTF-8...

2018-06-29 12:01:12 1381

原创 微信40001错误,不合法的调用凭证,invalid credential, access_token is invalid or not latest hint

个人博客原文:http://www.lampnick.com/php/205今天遇到一个微信的问题,在发布微信菜单时,微信返回错误代码:{“errcode”:40001,”errmsg”:”invalid credential, access_token is invalid or not latest hint: [0722vr31!]”}。一直以为是我们从微信官网获取access_token是...

2018-06-29 11:59:16 13622

原创 Yii2 联表查询的时候,会出现主键覆盖的问题,采用indexBy()中传匿名函数解决。

个人博客原文:http://www.lampnick.com/php/211yii2 联表查询的时候,会出现主键覆盖的问题,采用indexBy()中传匿名函数解决。在打印原始sql的时候,到数据库中查询出来有44条记录,但是通过程序取出来只有1条记录。先记录一下,详细的原因后续再看底层代码。 public function searchProj($appcode, $proj_name, $org...

2018-06-29 11:57:41 841

原创 linux下php zipArchive采用ZipArchive::OVERWRITE失败,返回错误码:9

个人博客原文:http://www.lampnick.com/php/261在linux系统下使用zipArchive压缩文件,采用ZipArchive::OVERWRITE方式,发现打开失败,打印返回的错误码为:9,查看官方文档  错误码9代表没有这个文件, $zip = new \ZipArchive();$res = $zip-&gt;open($zip_file_path, \ZipAr...

2018-06-29 11:54:39 3672 1

原创 微信支付退款通知接口API AES解密

个人博客原文:http://www.lampnick.com/php/397 微信支付退款通知接口API 含AES解密,github地址:https://github.com/lampnick/wxpay-refund-notify-decrypt-helper使用方法:微信退款通知解密,消息回复帮助类此类实现了微信退款通知消息的解密及回复过程,处理自己的业务逻辑需要实现\li...

2018-06-29 11:52:15 2307

原创 php中怎么实现后台执行?先返回用户请求,然后在后台运行。

&lt;?phpignore_user_abort(true); // 后台运行,不受前端断开连接影响set_time_limit(3600); // 脚本最多运行1个小时//后台运行的后面还要,set_time_limit(0); 除非在服务器上关闭这个程序,否则下面的代码将永远执行下去止到完成为止。//如果程序运行不超时,在没有执行结束前,程序不会自动结束的.//==========...

2018-06-29 11:46:09 10482

原创 Yii2中使用的设计模式

单例模式Yii2中实现的单例并非严格意义上的单例(私有化构造函数,clone,序列化等),而是采用serviceLocator+Container实现的单例模式。\yii\di\ServiceLocator::get/** * Returns the component instance with the specified ID. * * @param string $id compone...

2018-06-29 11:21:25 2012

碎纸片的拼接复原 MATLAB程序打包

通过整整8个小时的编程,终于想到了程序的思路了。运用了MATLAB进行仿真,

2013-09-13

碎纸片的拼接复原MATLAB实现

通过MATLAB仿真实现规则图片与不规则图片的拼接复原工作。源自--华清

2013-09-13

碎纸片的拼接复原(B)

解决图片的读取,预处理,边缘提取(文字提取),定位,分割,拼接等算法集, 其中运用了MATLAB仿真技术。

2013-09-13

空空如也

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

TA关注的人

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