自定义博客皮肤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)
  • 资源 (4)
  • 收藏
  • 关注

原创 Go语言channel探究

这里写目录标题前言一、channel 简介同步和通信通过共享内存通信通过通信共享内存二、channel的基本使用声明初始化接收元素值发送元素值空结构体channel关闭通道通道的操作特性单向通道for语句与channelselect语句select 分支选择规则select 的常用用法三、协程的同步什么是同步感受流程控制的重要性等待单个协程结束使用信道限制最大协程数使用通道传递数据其它的同步工具四、channel解决并发问题的思路流水线模型channel和mutex的选择1:使用for-range退出2:使

2020-07-06 19:05:02 840 1

原创 golang 限制最大协程数

这是上线的代码,package mainvar ( maxGoroutinueNum = 20)func main() { //池子 ch := make(chan bool, maxGoroutinueNum) //塞入20个牌子 for i := 0; i < count; i++ { ch <- true } for _ , v := range openApiRequestListWithRes { //取出一个,如果20个用完了,

2020-05-12 01:12:18 3620

原创 redis 的几种数据类型 & 各自底层实现

对象类型与编码redis的key和value 都是对象。redis对象有五种:类型常量对象的名称REDIS_STRING字符串对象REDIS_LIST列表对象REDIS_HASH哈希对象REDIS_SET集合对象REDIS_ZSET有序集合对象key总是字符串对象,value有可能是以上五种。对象的内部结构typedef stru...

2020-04-27 16:42:50 1250

原创 简单了解zookeeper

相关问题:http://ddrv.cn/a/553254配置同步服务etcd和zookeeper,选哪个呢?https://baijiahao.baidu.com/s?id=1599455829515318791&wfr=spider&for=pc是什么?分布式数据一致性的解决方案。分布式应用程序可以基于它实现:数据发布/订阅。 负载均衡 命名服务...

2020-04-21 01:21:52 126

原创 first-class、second-class、third-class

first-class:可以被赋值给一个变量 可以被嵌入到数据结构中 可以作为参数传递 可以作为值被函数返回second-class:不可以赋值给变量 可以作为参数传递 不能被函数返回third-class: 作为参数都不行...

2020-04-16 17:08:59 506

原创 Redis 分享

是什么?Redis 是当前最受欢迎的非关系型数据库之一。它是使用 C 语言编写的开源项目,支持多种数据类型、支持网络、基于内存、可选持久性的 Key-Value 数据库。它提供多种语言的 API 支持,应用十分广泛。Redis 的优点快。非常快。Redis 使用C语言编写,它基于内存采用单线程,据官方提供的数字来说可达 10w QPS。1. 完全基于内存,大部分的...

2020-04-12 16:33:55 98

原创 彻底理解同步异步阻塞与非阻塞

彻底理解同步异步阻塞与非阻塞前言用户空间内核空间系统调用用户态内核态系统IO阻塞非阻塞同步异步功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流...

2019-11-26 16:58:26 132

原创 如何组织接口的数据格式

eg:{  "status": 200,  "msg": "成功",  "data": {    "ids": [      "polaris_dashboard_home_achievement_head_total",      "polaris_dashboard_home_achievement_head_car_source",      &

2018-08-21 11:58:03 262

原创 使用冗余字段解除强关联

使用冗余字段解除强关联

2018-07-18 17:32:15 320

原创 innodb B+树

InnoDB储存引擎中最常用的索引是B+ 树索引。了解 B+ 树之前,需要先了解二叉查找树。B+ 树是通过二叉查找树,再由平衡二叉树、B树演化而来。二叉查找树中,左子树的键值总是小于根的键值,右子树相反。因此可以通过中序遍历得到键值的顺序输出。二叉查找树可以任意构造,但显然有些构造方法查找效率较低,因此引出了新的定义,平衡二叉树。平衡二叉树:在二叉树的基础上构建的,但其必须满足任何节点的左右子树的...

2018-04-24 19:19:23 292

原创 二叉树遍历(前序、中序、后序)

前序遍历:根结点 ---&gt; 左子树 ---&gt; 右子树中序遍历:左子树---&gt; 根结点 ---&gt; 右子树后序遍历:左子树 ---&gt; 右子树 ---&gt; 根结点层次遍历:仅仅需按层次遍历就可以比如下面的二叉树:前序遍历:1  2  4  5  7  8  3  6 中序遍历:4  2  7  5  8  1  3  6后序遍历:4  7  8  5  2  6  3 ...

2018-04-24 18:16:12 371

原创 php 的 finally 你了解多少

finally 是在 php5.5 版本中被引入的关键字。finally 并不是PHP的原创, C#, Javascript, Java..等等其他语言都有, PHP的finally和其他的语言相似。关于 try catch finally 语法,我们主要关心它的执行顺序:try { //执行的代码,其中可能有异常。一旦发现异常,则立即跳到catch执行。否则不会执行catch里面的内容 } ca...

2018-04-19 11:43:21 2833

原创 mysql 用户权限管理

mysql 中,用户表 mysql.user,主键是 host&amp;user 两个字段的联合主键。更改用户权限主要使用grant all privileges on 库名.表名 to '用户名'@'IP地址' identified by '密码' with grant option;flush privileges;库名·表名 为 *.* 时,代表赋予该用户所有库和所有表的权限;如果对应的 用...

2018-04-11 16:38:00 99

原创 docker 配置 php 时的问题

使用 docker pull php 拉取的镜像是没有安装php-fpm的可进入https://hub.docker.com/r/_/php/?spm=5176.8351553.8577797.39.4c0619919tSqHY查看php的所有tag发现了带有fpm的标签,有带有cli的标签而docker pull php:7.2-fpm 拉取镜像才装有php-fpm。最后不要忘记启动袄 dock...

2018-04-08 23:09:34 288

原创 docker 配置nginx

拉取镜像docker pull nginxdocker images nginx 查看显示镜像先随便创建一个容器,然后进入容器观察目录结构docker run -p 80:80 --name mynginx-d nginx 创建mynginxdocker exec -itmynginx/bin/bash发现主配置为 /etc/nginx/nginx.conf它的错误文件放在了var/log/ngi...

2018-04-05 18:18:46 298

原创 mysql 因并发操作导致的丢失更新

丢失更新产生的情况 1. 事务T1查询出一行数据,并显示给User1。 2. 事务T2也查询该行数据,并显示给User2。 3. User1修改这行记录,更新数据库并提交。 4. User2修改这行记录,更新数据库并提交。 在这个过程中,用户User1的修改更新操作“丢失”了。 如何避免 要避免丢失更新,需要让这种情况下的事务变成串行操作,避免并发操作。在上述四种的第1种情...

2018-03-23 15:22:46 1821

原创 name var

红包:bonus 验证码:captcha

2018-01-31 20:15:43 148

原创 有趣的正则-案例实战讲解

案例1: $index = "users[info][name]"; $count = preg_match_all('/(?:^[^\[]+)|\[[^]]*\]/', $index, $matches); print_r($matches);结果:Array( [0] => Array ( [0] => use

2018-01-30 16:12:19 170

原创 字符编码

经常遇到 UTF-8、Unicode、ASCII 这些字符编码,以前从没深究过,甚是惭愧。现在终于弄懂了这些字符编码的来龙去脉,以及一些历史遗留问题,总结下来以备忘。ANSII 编码:一个字节组合出256(2的8次方)种不同的状态,在最早期的时候,美国人用,用前127个表示出包括英文字符、标点、控制码等。这样用一个字节表示一个字符,这个方案叫做 ANSII 编码。GB2312

2018-01-29 16:55:24 123

原创 位运算

$a = 98989265;$k = 0;while ($a & ~(1 << $k)) { $a = $a & ~(1 << $k); $k++;}echo $a.' '.$k;//67108864 26 也及2的26次方其中 $a = $a & ~(1 另 $a = $a | (1

2017-11-28 17:47:23 152

原创 用javascript序列化表单

function serialize(form) { var len = form.elements.length;//表单字段长度;表单字段包括<input><select><button>等 var field = null;//用来存储每一条表单字段 var parts = [];//保存字符串将要创建的各个部分 //遍历每一个表单

2017-04-19 11:59:02 414

原创 用javascript实现类似jquery的ajax请求

var Ajax = { get: function (url, fn) { var obj = new XMLHttpRequest(); // XMLHttpRequest对象用于在后台与服务器交换数据 obj.open('GET', url, true); obj.onreadystatechange =

2017-04-19 11:57:02 415

原创 javascript中var=a=b=c=2代表什么

(function(d){ var h = hapj = function(u){ }; h.a = []; h.c = function(){};})(document);hapj.c();//可以在此调用c函数为什么在外部可以调用,对于新手来讲会有点难以理解,结合下面的例子来讲解函数一: function show(){ var

2017-04-17 19:10:36 1925

原创 win7系统 phpStorm Xdebug 调试php

在之前调试php代码的时候,用的都是varexport,vardump对变量进行输出,调试起来相当不方便。尤其是遇到ajax异步调用接口的时候,需要先把数据返回到前端,然后在前端对返回的变量进行console.log,严重影响工作效率。 所谓磨刀不误砍柴工,我花了点时间查了一下关于php的调试方法。下载地址:https://xdebug.org/download.php 下载对应版本的XDebug

2017-01-23 13:56:14 470

原创 php中正则表达式的分组和命名

示例1: $regex='#^/type/(\w+)/id/([0-9]+)$#i'; $str='/type/topic/id/11'; if(preg_match($regex,$str,$matches)){ var_export($matches); }result:array ( 0 => '/type/topic/id/11', 1 => 'topic'

2017-01-05 15:07:01 2304

原创 编程中遇到的缩写

看到一个写一个php函数mb_strlen() ‘mb’->mutibyte->多字节;

2016-12-30 16:58:33 265

原创 laravel 队列的驱动配置

在测试消息队列的时候发现一直是同步执行,很小的一个细节,不知道的话有可能困扰很久,比如笨蛋如我。我使用redis驱动,原来只在config/queue.php 修改 'default' => env('QUEUE_DRIVER', 'redis') 不够,需要在 .env配置文件中进行修改QUEUE_DRIVER=redis 。好了,终于正常了。

2016-12-29 23:06:00 1091

转载 查漏补缺ubuntu之github

安装git:sudo apt-get install git设置用户名:git config --global user.name "Your Name Here". 设置邮箱:git config --global user.email"[email protected]"下面新建一个工程目录:mkdir ~/Hello-World 进入:cd ~/Hello_World 初始化一个空

2016-12-27 14:24:55 195

原创 对于有趣的php引用的探索

今天在看CI源码的时候,对于里面涉及的引用起了兴趣。接下来让我在php 7.0.3的基础上来对其进行初步探索。这是我们需要的类:class Test{ public $data; public function __construct($d) { $this->data=$d; }}下面进行演示:$a=new Test('1');$b=$a;$

2016-12-26 11:36:49 209

原创 MarkDown用法示例

csdn的编辑界面当中已经提供了很详细的语法帮助了,如下图。下面我来把常用的语法依依实践一遍当做练习。 1. 标题在文字前面书写不同数量的#可以文成不同的标题,代码如下:# 一级标题## 二级标题### 三级标题#### 四级标题##### 五级标题###### 六级标题效果掩饰如下:一级标题二级标题三级标题四级标题五级标题六级标题此外用等号和减号也可以进行标题书写,减号以及等号的数量不

2016-12-25 03:16:50 257

原创 PDO错误与错误处理

PDO错误处理的三种模式:引用->【1.PDO::ERRMODE_SILENT此为默认模式。 PDO 将只简单地设置错误码,可使用 PDO::errorCode() 和 PDO::errorInfo() 方法来检查语句和数据库对象。如果错误是由于对语句对象的调用而产生的,那么可以调用那个对象的 PDOStatement::errorCode() 或 PDOStatement::er

2016-12-20 02:51:15 1119

原创 laravel 服务类的自动注入

当你需要一个外部类,而这个外部类的实例化过程仅需要$service=new SomeService();既不需要传参数,也不依赖于别的类,那么你无需要显式的创建绑定。直接在你想用的地方用即可,laravel会帮你自动注入的。use App\Mylib\SomeService;class TestController extends Controller{    public

2016-12-12 20:51:04 1047

原创 laravel 服务提供者的理解

它可以为你的类库提供一套可以重用的实例化方案

2016-11-29 12:30:41 728

原创 php-多目录自动加载

//向自动加载目录列表中添加目录function classpath($path){ //目录之间用冒号/分号分隔 set_include_path(get_include_path().PATH_SEPARATOR.$path);}//添加自动加载路径 cute_classpath('core/');cute_classpath('app/'

2016-11-27 23:31:28 286

原创 旋转坐标的计算

坐标旋转的计算:已知旋转中心点(centerX,centerY)、一个物体、旋转的半径radius和角度angle。使用基本的三角学围绕中心点放置物体,设置旋转的角速度Vr来控制旋转角度的增加或减少。计算公式为:angel+=V;ball.x=centerX+Math.cos(angle)*radius;ball.y=centerY+Math.sin(angle)*radius;多属性情况下只知

2016-01-12 19:43:01 4172

MySQL技术内幕:InnoDB存储引擎

MySQL技术内幕:InnoDB存储引擎.pdf。带目录完整版。深入了解mysql原理

2018-03-23

代码大全第二版.pdf

目录结构我自己整理过,很清晰。应该叫“编码大全”更合适,程序员进阶必备书籍,欢迎阅读。

2018-02-27

图解HTTP[(日)上野宣著](全 带目录)

图解系列 之 《图解HTTP[(日)上野宣著]》(全 带目录),讲解深入浅出,入门必备刊物,好书你值得拥有。

2017-12-26

homestead-5.0.1.box

laravel/homestead-5.0.1.box。下载完成之后本地添加即可

2017-12-07

空空如也

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

TA关注的人

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