自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

圆蟀的专栏

搬砖的天蓬圆蟀

  • 博客(65)
  • 资源 (5)
  • 问答 (2)
  • 收藏
  • 关注

原创 pulsar-admin接入项目

pulsarAdmin读取分区topic消息堆积量

2023-05-04 14:58:10 608

原创 IDEA插件开发-学习

IDEA插件开发

2022-09-24 17:55:12 852

原创 JAVA小白工具人PHPer

java八股文的phper

2022-08-05 22:09:15 212 1

原创 Java Spring Boot 热部署

一、IDEA配置当我们修改了Java类后,IDEA默认是不自动编译的,而spring-boot-devtools又是监测classpath下的文件发生变化才会重启应用,所以需要设置IDEA的自动编译:(1)File->Settings->Compiler->Build Project automatically(2)File->Settings->Advanced settings->Allow auto-make to start even if devel

2022-04-07 17:51:04 245 1

翻译 MySQL语句优化之Range优化(2)

MySQL语句优化之Range优化

2022-01-26 21:15:59 297

翻译 MySQL语句优化之Range优化(1)

MySQL优化之Range优化

2022-01-25 22:14:25 471

原创 Go徒手解析Redis协议

go学习案例之解析redis协议

2022-01-24 21:53:04 320

翻译 MySQL语句优化之Where优化

SQL语句之Where表达式的优化

2022-01-24 21:28:12 1217 1

翻译 SQL语句优化

SQL语句优化的一般思路

2022-01-23 21:53:13 97

翻译 MySQL优化器

MySQL优化器

2022-01-23 00:07:28 493

原创 Go 读取日志文件中是否存在异常数据

Go查找日志

2021-12-19 22:40:03 242

原创 python解决多容器部署运维

python解决多容器部署问题

2021-09-09 23:17:45 256

原创 Golang channel的使用总结

Go语言中,最最最优秀的莫过于channel了。3大特点:1、线程安全2、其数据结构是队列(先进先出)3、有基本的数据类型通道使用前必须先初始化,否则会error无缓冲的通道:接收和发送是同步的,意味着,向其发送数据,必须有一个接收者,否则发送阻塞,接收也阻塞。缓冲通道:发送和接收不同步,1.发送不会阻塞 2.接收会阻塞关闭通道后,再次关闭会panic(划重点,通道一般有发送者关闭)关闭通道后,在往channel发送数据会panic关闭通道后,可以一...

2021-07-24 15:36:34 273

原创 HTTPS实现原理

以前只知道https,可以对传输的数据进行加密。主要面试经常喜欢问些此类的问题,接下来讲解下原理申请过域名证书的都知道,有2个文件1、证书文件证书文件包含以下信息:申请者公钥、申请者的组织信息和个人信息、签发机构 CA 的信息、有效时间、证书序列号等信息的明文,同时包含一个签名;签名的生成是单向散列公开的明文信息的信息摘要,然后用私钥将信息摘要加密,就得到签名2、私钥私钥获取签名时有用到的。SSL握手协议,如下图主要看证书验证那块客户端拿到证书后,因为本.

2021-07-18 21:28:02 108

原创 DNS的实现,面试常问

很多公司面试都会有这个问题,比如从浏览器输入www.baidu.com打开到显示页面,经过哪些。从这个简单的问题,可以看出应聘者对网络这块的了解程度。DNS说白了,就是将域名解析成IP的过程。为什么要解析ip,因为ip才是你真正要访问的东西的地址。解析的过程中,会产生DNS挟持,DNS污染使得解析的IP错误,造成大面积访问404的问题,所以很多公司采用httpDNS的方式,来缓存到本地环境,减少这块的错误。一般DNS解析过程分为1、递归查询,即发一次请求,等你给结果,主要用于

2021-07-18 12:45:51 698

原创 Laravel项目优化,WRK压测

普通的php-fpm执行的后端应用(单机),很难支撑起数百万的流量,创业公司有做不完的需求,改不完的bug。项目因为需求的增加,变得无比的庞大,连路由文件都10几个,当就路由文件的加载,耗时都巨大,可见项目优化的空间是有多大路由文件,根据项目请求的url加载,而不是一次性全部加载,减少api接口的时延, 增大了每秒可处理的请求。以下环境win10wrk环境搭建:docker pull williamyeh/wrkdocker run -it --rm williamyeh/wr.

2021-07-07 00:17:39 240

原创 Go语言数组学习

go 语言的数组:1、长度固定2、长度是数组类型的一部分3、值类型(参数以复制的方式传递)// 值传递例子package mainimport "fmt"func test(b [3]int){ fmt.Printf("\nb 地址:%p",&b)}func main() { fmt.Println("Hello, World!") var a = [3]int{1,2,3} fmt.Printf("a 地址:%p",&a) a[2] = 4

2021-07-04 00:25:21 87

原创 Python自动爬取拉钩教育课程

本课程纯属学习交流,如有侵权,请告知,立马删除import requestsimport jsonimport csvimport timeimport random# import shlex# print(random.randint(1,17))# exit()courseId = "1" # 想学哪一门,改这里url = "https://*****/getCourseLessons?courseId=" + courseIdpayload = {}headers

2021-06-26 20:58:15 216 1

原创 Gin框架执行流程

// gin.gogin.Run() // gin启动http.ListenAndServe(address, engine)// server.goserver := &Server{Addr: addr, Handler: handler}server.ListenAndServe()ln, err := net.Listen("tcp", addr) // 网络监听srv.Serve(ln)c := srv.newConn(rw) // 网络连接c := ...

2021-06-07 10:35:24 1349

原创 php项目的瓶颈,可以试试facebook的这个工具

facebook 出品的xhprof函数的调用耗时远远大于自带函数的耗时如下一段代码,抛出的函数耗时function test($arr, $key=null){ // echo microtime(true);echo '<br>'; if(array_key_exists($key,$arr)){ return $arr[$key]; } // echo microtime(true);echo '<br>';;

2021-04-21 10:47:09 89

原创 微服务高可用

1、隔离2、超时控制(context.withTimeout)3、过载保护(滑动均值)4、限流(google.com/x/rate、uber)5、降级(注意降级数据一定要测试)6、重试(一般只在报错那个节点做)

2021-04-05 11:22:06 194

原创 Gin框架 ShouldBindJSON详解

为什么第二次使用ShouldBindJSON就失效了呢?今天debug看了下,主要是 http.Request的io buffer第一次取完之后,http.body 结构体中的sawEOF=true第二次去读取,发现已经是true了。直接返回了err = io.EOF....

2021-03-28 15:44:12 9215

原创 利用PHP数组实现元素0的处理

分享一道面试题,也当做警醒自己,面试讲究战术的,不要被面试官套路,自己应该有自己的准备。$arr = [2,0,6,0,8,5,0];数组arr,将其中的非0整数按照顺序输出,0 最后输出。其实时间足够还是很简单的,被面试官催,我真的太难了。$arr = [2,0,6,0,8,5,0];foreach ($arr as $k => $a) { echo $a.PHP_EOL; if ($a == 0) { unset($arr[$k]); .

2021-03-15 14:19:45 303

原创 阶梯计费-PHP实现最简洁

最近遇到一个阶梯计费的case ,想了挺久的,还是没有很好的解决方案,今天突发奇想,被我发现了。哈哈哈哈其实当时想了配置文件,但是没有想到这个点子上,所以记录下,下次项目中参考使用<?php// 阶梯计费代码function calcMoney($n, $config) { $money = 0; foreach ($config as $k => $value) { if ($n >= $value['min'] && $n

2021-03-06 16:53:57 1271

原创 Beego数据库迁移migration

一直在学习go语言,Beego,migration摸索遇到的一些问题go mod 下载的版本,开始beego包下,没有migration包,查了下,说是版本不支持,重新mod了目前beego版本:require github.com/astaxie/beego v1.12.3可以看到vendor下有migration包,点进去可以看到源码,推荐大家阅读一下源码,可以更好的学习go, 其实很简单的实现,遇到了2个坑吧1、空字符串无法表达,后面尝试了下,可以用以下方式m.NewC

2020-11-22 17:11:23 761

原创 Golang 包管理,更换代理

go mod 形式下,如果包无法安装,该考虑是不是代理的问题了。传说中国最可靠的 Go 模块代理,在这里代理地址

2020-11-22 13:36:27 364

原创 将本地Web服务器公开到互联网

备份下,下次使用,搭建家庭个人服务器,文件的共享ngrok

2020-11-06 17:05:58 365

原创 Go语言学习-TCP编程

Go小白一枚,有错误,还请各位大佬指出TCP协议-三次握手,四次挥手那么Go语言如何实现了,我直接上代码,一切都在代码中talk is cheap,show me code...TCP服务端package mainimport ( "fmt" "net" "net/http" "bufio" _ "net/http/pprof" //可以用于查看协程信息)// HandleConnetion 处理请求func HandleConnetion(conn ...

2020-10-30 19:29:14 135

原创 Go语言管道的使用-死锁情况

管道分为带缓存的和不带缓存的带缓存的,make的时候指定大小,且管道未关闭状态,如果一直取不到值,发生错误func main() { chan1 := make(chan int) chan2 := make(chan int) go func() { chan2 <- 1 chan1 <- 2 }() <- chan1 }fatal error: all goroutines are asleep

2020-09-19 11:30:08 566

原创 Go语言的自增操作也不安全

Golang 证实++,-- 操作是不安全的,开启10万个协程同时进行。计算机操作系统原理,对于自增操作,是先从内存中取出来,然后加1操作,在存进去,在这之间就有时间差。package mainimport ( "fmt")var n = 100000func test(k int) { res := 1 for j := 1; j < 20; j++ { res *= j } n--}func main() { for i := 1; i &lt...

2020-09-16 17:13:52 581

原创 laravel 导出文件乱码解决

最近做导出功能,发现导出的文件名出现乱码查阅资料发现,头部没有统一的编码,需要对不同的浏览器做兼容处理在此记录一下,解决方法,可以参考一下//修改下载导出的头部信息function changeHeader($h,$filename) { $h['Content-Disposition'] = 'attachment;filename="'.$filename.'.xlsx";filename*=utf-8\'\''.$filename.'.xlsx'; return .

2020-09-16 10:52:48 1479 2

原创 MySQL优化基础三部曲

功能的优化主要就2个:代码的优化,MySQL的优化代码的优化就不说了,多看,多学习大佬们写的代码下面讲讲MySQL的优化,从简单的慢查询开始,SQL语句执行计划分析“三步曲”1. 查看 SQL 执行计划:explain SQL;查看各个指标是否正常范围,索引是否使用desc 表名;show create table 表名。2. 通过 Profile 定位 QUERY 代价消耗:set profiling=1;执行 SQL;show profiles; 获取 Que

2020-07-05 22:16:08 121

原创 python如何实现网页爬取,并翻译成中文

import ioimport sysimport urllib.requestfrom lxml import etreesys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='utf8') #改变标准输出的默认编码url = 'https://www.fastcompany.com/90519693/report-highly-sensitive-police-department-data-hacked-for-a-wiki.

2020-06-24 07:55:44 4026 4

原创 PHP针对其他语言的DES解密

最近对接第三方的接口,需要DES解密java的DES加密数据看了好久,研究java,还搭建了一个java环境最终失败。仔细思量,发现是方向错了, php本身也有DES解密,只是对照着解密就好了,管他什么语言,做好php解密的事情就好了。对方给的DES秘钥格式: 12,23,34,45,56,67,78加密数据:‘***************‘<?php/** * openssl 实现的 DES 加密类,支持各种 PHP 版本 */class DE...

2020-06-22 23:27:04 265

原创 美好的一天都被它给搅和了,不过又让我找回了曾经的样子

工欲善其事,必先利其器。一款良好的编辑器对于我们不可或缺,提升效率的同时 ,享受其中,不能自拔。美好的周末,从此刻开启回到家后每次都需要重新找激活码,好吧,重回sublime text 的怀抱应该没有谁进入IT行业的第一款工具不是SublimeText吧。有的话举起你们的爪子,报个到接下来安利一下sublimeText 编写python的环境配置,也方便以后查阅。1、首先下载安装sublime text2(说实话,更喜欢2的样子,不喜欢版本3的图标 )...

2020-06-20 08:45:22 169

原创 进程唤醒

(进程的操作,都是有原语(函数,具有原子性)去执行的)圈起来,以后会考进程创建参数:进程标识,优先级,进程起始地址,CPU初始状态,资源清单。。。进程创建步骤:1、创建一个空白PCB()2、获取一个进程标识符3、为进程分配空间4、初始化PCB5、插入就绪队列进程撤销:1、PCB队列中检索出PCB2、进程状态,进行中的话,立即终止,递归处理子进程3、释放资源4、将进程从PCB队列中移除进程阻塞:1、停止进程运行2、将PCB中的状态由运行态->阻

2020-06-14 13:00:44 7164 2

原创 每日的工作总结-更新2020年7月6日

努力工作,我的眼里只有工作早上8点出门,9点上班,中午休息2个小时,下午6点下班,加班1小时,回家1小时也就是你一天花在工作上的时间12个小时。睡觉的时间平均是7个小时,那就还有5个小时是你自己的。突然个想法,5个小时中利用1小时回忆今天工作遇到的不熟悉的函数(自己百度过的)第一天:2020年5月21日laravel mysql包whereBetween 方法-范围值-包含start和end的值//取出field大于等于1小于等于5的所有数据$model->whereBet

2020-05-21 23:09:56 222

原创 程序员的工作观

工作的意义· 为什么工作?· 工作为了什么?· 工作意味着什么?· 工作与个人、他人以及社会有什么关联?· 好工作或者所谓有价值的工作,是什么?· 工作和金钱有什么关系?· 一个人的经历、成长、成就感和工作有什么关系?...

2020-05-17 22:54:44 275

原创 docker部署go环境

最近找工作有点忙,php开发感觉遇到瓶颈了。Boss直聘上面搜索后端开发,很多大公司都是招golang开放工程师,也可能引发了phper的忧虑。于是就有了学习golang开发的想法玩过docker的可以略过,因为比较简单1、首先到相应的目录(这里统称"G:\")创建go目录,进入go目录,mkdir code目录,存放我们的代码2、在go目录下创建Dockerfile文件FR...

2020-04-25 18:01:58 1566

原创 shell脚本修改mysql密码

不知道你们有没有过这种经历,刚安装的mysql,立马就忘记了密码,或者过了一段时间就忘记了,找回太难了,得翻各种配置。下面 教大家一个脚本,专治mysql密码忘记的功能,一行命令就可以搞定,你一定会喜欢的#!/bin/bash# Check if user is rootif [ $(id -u) != "0" ]; then echo "must root" ...

2020-04-05 11:31:58 3665

后端省事工具-服务器代码拉取神器

将用户的ssh-key添加到服务器,就可以一键下拉代码。再也不用每天帮前端拉代码而烦恼了

2021-01-07

geckodriver

最新版本的火狐浏览器的驱动插件,用于Python浏览器自动化

2019-12-19

安卓学习教程

新手可以看看,老鸟也可以学习一下,相当不错的学习PPT

2015-03-20

RRU、BBU_原理及安装方法

RRU、BBU_原理及安装方法华为网络优化基础知识

2015-02-13

移动通信相关基础知识

移动通信基础GSM系统理论与爱立信CME20

2015-01-05

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

TA关注的人

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