自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 golang实现关键路径算法

二是计算每个活动的最早开始时间和最晚结束时间。四是根据活动的最早开始时间和最迟开始时间,确定关键路径和关键活动,计算项目的总时间。visited := make(map[*Task]int) //记录每个任务的访问状态,0表示没有访问过,1表示已经访问过了,2表示访问完成。//如果当前活动没有后置任务,当前任务的最晚开始时间设置为项目结束时间减去当前任务的持续时间。// 计算任务的最晚开始时间,如果任务的最早开始时间等于最晚开始时间则为关键活动。// 计算任务的最早开始时间,确定项目的最早结束时间。

2023-05-09 17:16:12 1153

翻译 一种用于资源约束项目调度问题的遗传算法

资源约束项目调度问题(RCPSP)旨在通过遵守资源约束和先决条件来启动每个活动,找到最小完成时间的时间表。然而,由于该问题是NP-hard的,因此精确过程的性能受到限制,只能解决小型项目网络。在本研究中,提出了一种用于RCPSP的遗传算法。所提出的遗传算法(GA)旨在找到接近最优解,并且克服了针对大型项目网络的精确过程的性能差的问题。实验结果表明,所提出的算法优于知名商业软件。

2023-04-16 10:04:32 1620 1

原创 微服务OOM问题排查实践

pprof是一个性能剖析工具,可以用来分析和诊断Go语言程序的CPU使用情况和内存使用情况。它可以通过在程序运行时收集采样数据,生成CPU和内存使用情况的报告,并且可以可视化展示这些数据,帮助开发人员快速定位和解决性能瓶颈和内存泄漏等问题。pprof用法非常简单,首先获取性能数据,go提供了两种方式获取性能数据:写文件方式和启动http服务方式。

2023-04-09 18:34:48 602

原创 一次SQL查询请求,MYSQL都做了些什么

子查询优化,确定最优的子查询执行顺序。在优化完SQL后会生成多个潜在的查询计划,然后根据代价评估器(Cost Estimator)对每个执行计划进行代价估算,从中选择最优的执行计划。客户端提交一次查询请求后,MYSQL会根据SQL语句生成执行计划,并依次执行执行计划中的操作,最终将查询结果返回给客户端。执行计划是一个具体的执行计划,它包含了MySQL将如何执行SQL语句的详细信息,例如访问哪些表、使用哪些索引、使用哪种连接方式等等。在执行阶段,根据执行计划中的操作类型,调用相应的存储引擎来执行查询操作。

2023-04-07 23:01:23 212 1

原创 php循环内实例化与循环外实例化性能分析

看到网上很多文章在讨论这个问题,但是本人觉得他们的结论都不太准确,实际上在php循环内创建对象和在循环外创建对象的不同之处不在于内存上的消耗,而是时间上的消耗。首先我们做一个简单的测试:<?php//echo 'memory:'.memory_get_usage().PHP_EOL;//echo 'time:'.microtime(1).PHP_EOL;class A { public $p = 'hello world'; public function test

2020-11-27 18:16:06 504

转载 iptables命令详解

iptables的主要功能是实现对网络数据包进出设备及转发的控制。当数据包需要进入设备、从设备中流出或者经该设备转发、路由时,都可以使用iptables进行控制。环境操作系统:CentOS7.3ip地址:172.16.55.71.iptables中的“四表五链”及“堵通策略”A.“四表”是指,iptables的功能——filter, nat, mangle, raw.    filter, 控制数据包是否允许进出及转发(INPUT、OUTPUT、FORWARD),可以控制的链路.

2020-08-06 18:14:05 458

原创 Laravel源码处理请求分析系列之匿名函数妙用

匿名函数是php5.3出来的功能,允许临时创建一个没有指定名称的函数,也就是闭包函数。闭包函数可以作为变量的值来使用,可以从父作用域中继承变量,一般用法:<?php$greet = function($name){ printf("Hello %s\r\n", $name);};$greet('World');$greet('PHP');?> 我对匿名函数的认识也就停留在一般用法上,止到我看了Laravel处理请求的源码之后才发现匿名函数还能这样妙...

2020-07-30 15:59:26 330

原创 为什么说Laravel比较重,效率不如其他框架?从加载配置文件可见一斑

刚上手thinkphp5项目,原始项目所有配置都写在了config.php主配置文件中,包括项目主配置、业务配置和运维相关配置。这样会存在一个问题(),运维部署项目的时候一般会单独保存生产环境中账号密码等配置,并不关心项目配置和业务配置。配置文件只有一个的情况下,不可避免,每次上线增加或减少的配置都要通知运维更新,这种耦合在一起的情况不可取。 于是就把运维相关配置都写在了.env文件中,在config.php文件中使用自定义env辅助函数加载env配置。但是问题来了,启动时一直报env未定义错误...

2020-07-20 16:12:07 791

转载 async/await的基础用法

一、async/await的优点1)方便级联调用:即调用依次发生的场景;2)同步代码编写方式: Promise使用then函数进行链式调用,一直点点点,是一种从左向右的横向写法;async/await从上到下,顺序执行,就像写同步代码一样,更符合代码编写习惯;3)多个参数传递: Promise的then函数只能传递一个参数,虽然可以通过包装成对象来传递多个参数,但是会导致传递冗余信息,...

2020-01-02 15:49:27 443

原创 Quill编辑器粘贴图片时无法粘贴图片自定义属性的解决办法

在vue中使用Quill富文本编辑器时会遇到一个问题:如果quill是动态的,基于vue的响应式原理,数据改变时组件会重新渲染。quill实例渲染组件,quill生成的html内容保存在vue页面的data中,data改变时组件会重新渲染。看下面的例子:选择题选项可以动态增删,如果用vue实现上面的页面一般的做法会是: <div class="opt...

2019-12-17 12:08:41 2123

原创 VMware如何避免重启虚拟机后再次进入安装过程

刚踩过的坑,记下来。安装虚拟机的时候选择安装来源的时候不要选择“稍后安装操作系统”,因为选择这种方式安装在重启的时候会重新安装系统。如果不想重启虚拟机后重新安装系统,那么就要选择“安装程序光盘映像文件”方式安装,这种方式会重新添加一个自动启动光盘和软盘。...

2019-12-06 22:46:05 2089 1

原创 javascript中数组方法reduce的使用

​ reduce()方法遍历数组时使用,它和for循环以及forEach遍历不一样,reduce迭代数组然后把数组元素累积到一起,是一个累加器。语法:array.reduce(function(total, currentValue, currentIndex, arr), initialValue) reduce的第一个参数是回调函数,回调函数需要两个参数tota...

2019-10-12 12:20:40 257

原创 解决FastCGI sent in stderr: "PHP message: PHP Notice: Unknown: file created in the system's temporary

做文件上传的时候碰到的这个问题,问题是这样的:在上传大小为200k图片的时候图片上传成功,但是图片再大一点就上传失败了。一直被小图片能上传成功这一现象误导,又是修改nginx的client_max_body_size,又是调整php.ini的upload_max_filesize和post_max_size,改来改去问题也没解决。然后就去看nginx日志就打出了‘FastCGI sent in s...

2019-06-19 11:28:37 23081

转载 小程序第三方登录问题

微信小程序在一般情况下,是免登录的,秉承了小龙的用完即走的理念。除非我们需要获取用户的信息,如用户微信昵称、头像 、地理位置 等,需要我们获取用户的一些信息。微信官方提供了相关的API。具体可参见:获取微信用户信息。  但是在某些特殊的运用中,仅仅只获取登录用户的信息是远远不够的。一般稍微有点复杂商业逻辑的小程序都会有自身的用户体系,并且前后端通信时需要对用户进行 认证 或者 权限 的判断。小...

2019-01-21 17:16:25 1005

原创 golang框架beego的config源码学习总结

beego中解析配置文件的代码在github.com/astaxie/beego/config包内,初始化文件是github.com/astaxie/beego/config.go。beego提供了两种类型配置的解析:ini和json,默认解析ini类型的配置文件。Register方法注册解析方法,我们叫它adapter,Register被调用的位置是adapter的init函数,也就是说adap...

2019-01-16 11:46:14 4739

转载 Promise学习笔记

Promise 的含义Promise 是异步编程的一种解决方案,比传统的解决方案–回调函数和事件--更合理和更强大。它由社区最早提出和实现,ES6将其写进了语言标准,统一了语法,原生提供了Promise所谓Promise ,简单说就是一个容器,里面保存着某个未来才回结束的事件(通常是一个异步操作)的结果。从语法上说,Promise是一个对象,从它可以获取异步操作的消息。Promise 对...

2018-08-23 19:47:21 138

转载 Vue + Webpack + Vue-loader 功能介绍

Vue-loader 是什么?vue-loader 是一个加载器,能把如下格式的 Vue 组件转化成JavaScript模块。vue-loader 提供了一些非常酷炫的特性:ES2015默认可用; 在每个 Vue 组件内支持其他的 Webpack 加载器,如用于&lt;style&gt;的 SASS 和用于&lt;template&gt; 的 Jade。 把 &lt;style...

2018-08-08 12:44:24 5677

原创 如何理解php中的后期静态绑定

首先看官方说明: 自 PHP 5.3.0 起,PHP 增加了一个叫做后期静态绑定的功能,用于在继承范围内引用静态调用的类。准确说,后期静态绑定工作原理是存储了在上一个“非转发调用”(non-forwarding call)的类名。当进行静态方法调用时,该类名即为明确指定的那个(通常在 :: 运算符左侧部分);当进行非静态方法调用时,即为该对象所属的类。所谓的“转发调用”(for...

2018-07-04 18:46:18 727

原创 浅谈对面向对象概念的理解

面向对象是对现实世界的抽象和理解的方法,是计算机编程技术发展到一定阶段后的产物。两个基本的概念:对象:对象是人们要研究的任何事物,从最简单的整数到复杂的飞机均可看做对象,它不仅能表示具体的事物,还能表示抽象的规则,计划或事件。对象具有状态和行为,一个对象用具体数据值来描述它的状态,用于改变对象状态的操作就是对象的行为。类:具有相同或相似性质的对象的抽象就是类,对象的抽象是类,类的具体化是对象,也可...

2018-03-12 10:47:36 1255

转载 Qt程序打包--使用windeployqt

Qt 官方开发环境使用的动态链接库方式,在发布生成的exe程序时,需要复制一大堆 dll,如果自己去复制dll,很可能丢三落四,导致exe在别的电脑里无法正常运行。因此 Qt 官方开发环境里自带了一个工具:windeployqt.exe。以官方 Qt 5.4.0+MinGW 开发环境为例,从开始菜单--》Qt 5.4.0--》5.4--》MinGW 4.9 (32-bit)--》Qt 5.4 fo...

2018-03-01 18:12:16 418

转载 GitHub 弃用TLS 1.0、1.1导致SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version

git上传代码时报如下错误git push 到 Github 的时候出现异常:fatal: unable to access 'https://github.com/huihut/interview.git/': error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol versionPushing to ht...

2018-03-01 15:38:49 929

原创 利用shell实现简单代码获取脚本

最近在学习shell编程,编程这件小事个人觉得多练练才能学的好学得扎实。平常工作中一般用gitlab进行版本控制,开发中就避免不了将代码获取到测试机上去调试代码,用过phpstorm的人都知道,ps集成了代码自动上传的功能,用起来也很方便。但是本着学习的目的,我就尝试自己写一段sell一条命令实现代码自动获取到服务器。下面是代码内容:trans.sh#!/bin/bashecho 's

2018-02-05 21:47:34 730

空空如也

空空如也

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

TA关注的人

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