自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

左手代码右手诗

会点开发、会点安全,是否可以把安全和开发结合起来,实现安全的左移,企业完成DevSecOps建设

  • 博客(51)
  • 收藏
  • 关注

原创 CodeQL在代码审计中的应用

CodeQL是一种基于静态分析的程序分析工具,由GitHub开发和维护。截止到此刻,CodeQL在Github上已经有超过6100个Star。它可以用于发现代码中的漏洞、代码质量问题和安全问题。CodeQL使用了一种特殊的编程语言QL(查询语言),可以帮助开发人员进行更加高效和精确的代码分析。CodeQL的核心思想是使用数据流分析技术去发现代码中的潜在安全问题和漏洞,它可以在编译时或者运行时对代码进行分析,找出潜在的程序缺陷和安全隐患。

2023-07-07 17:32:34 952

原创 安全左移DevSecOps开源工具链建设

开发安全相关技术和产品受到越来越多的关注。行业共识认为,应用系统上线之后进行软件漏洞修复,其修复成本是需求设计阶段修复成本的几十倍。因此,在开发环节,引入相应的安全工具,能够有效的降低漏洞的修复成本,实现安全的左移。本文会持续研究安全开发相关工具,使用开源工具建设安全开发体系。

2023-06-13 17:20:39 1569

原创 Docker项目实战

docker项目实战

2022-11-17 17:42:51 824 2

原创 Go语言开发者进阶路线图

Go语言地图Go语言资源

2022-04-15 16:50:09 238

原创 Go Web实战连载三 Golang基础数据类型

2021-01-21 23:27:30 143

原创 Go Web实战连载二 Golang程序结构

命名Go语言中的函数名、变量名、常量名、类型名、语句标号和包名等所有的命名,都遵循一个简单的命名规则:一个名字必须以一个字母(Unicode字母)或下划线开头,后面可以跟任意数量的字母、数字或下划线。大写字母和小写字母是不同的:heapSort和Heapsort是两个不同的名字。Go语言中类似if和switch的关键字有25个;关键字不能用于自定义名字,只能在特定语法结构中使用。break default func interface selectcase

2020-05-26 18:30:19 205

原创 WSL安装Go1.14开发环境

WSLWindows10系统运行ubuntu系统,wsl安装参考前期教程终端工具推荐使用MobaXterm ,此终端可以直接连接WSL,从此Xshell是路人下载Go安装包https://studygolang.com/dl (下载编译过的文件)配置Go环境解压文件 tar -zxvf go1.14.3.linux-amd64.tar.gz -C /usr/local/修改 .bashrc文件export GOROOT=/usr/local/go #设置为go安装的路径,有

2020-05-24 23:20:37 2037

原创 ubuntun安装php

安装nginx sudo apt install nginx 安装php sudo apt install php7.2配置nginx虚拟主机server{ listen 80; server_name api.example.com; index index.php index.html; root /www/wwwroot; loc...

2020-04-02 11:23:43 167

原创 phpCAS使用

CAS

2020-04-01 18:05:26 2866 3

原创 PHP设计模式之单例模式

设计模式随着项目的扩大,维护需要很大的成本,为了应对各种变动会出现设计模式。设计模式的宗旨是重用;目的是建立对象间的关联;提供了让代码之间松耦合的各种方案单例模式class Pre{ private $props = array(); private static $instance; public static function getIn(){ ...

2020-01-06 22:19:20 107

原创 mysql金钱字段decimal

新建表decimalsCREATE TABLE `decimals` ( `id` int(11) NOT NULL, `name` varchar(255) DEFAULT NULL, `c1` float(10,2) DEFAULT NULL, `c2` decimal(10,2) DEFAULT NULL, `c3` float(10,0) DEFAULT NULL,...

2019-12-23 22:01:31 1418

原创 斐波那契数列应用

什么是斐波那契数列斐波那契数列指的是这样一个数列 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144这个数列从第3项开始,每一项都等于前两项之和台阶问题有一段楼梯有10级台阶,规定每一步只能跨一级或两级,要登上第10级台阶有几种不同的走法?这就是一个斐波那契数列:登上第一级台阶有一种登法;登上两级台阶,有两种登法;登上三级台阶,有三种登法;登上四级台阶,有...

2019-12-08 00:58:27 400

原创 PDO防止sql注入原理

PDO预处理$pdo = new PDO("mysql:host=localhost;dbname=test","user","pwd");$sql = "insert into user(name,age) values(?,?)"; // ?号的方式$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);//PDO有一项参数...

2019-12-07 23:57:58 512

原创 mysql慢查询

mysql慢查询参数配置MySQL的慢查询,全名是慢查询日志,是MySQL提供的一种日志记录,用来记录在MySQL中响应时间超过阀值的语句。具体环境中,运行时间超过long_query_time值的SQL语句,则会被记录到慢查询日志中。long_query_time的默认值为10,意思是记录运行10秒以上的语句。默认情况下,MySQL数据库并不启动慢查询日志,需要手动来设置这个参数。修改...

2019-12-05 21:48:00 174

原创 php反射API

php反射PHP 5提供了一个完整的反射API,可以对类、接口、函数、方法和扩展进行反向工程找到一个对象出发地和来源的一个过程,通俗来讲就是可以根据这个对象,知道它所属的类,拥有哪些方法。PHP类 <?php class person{ public $name; public $age; public $sex; public fu...

2019-12-01 23:03:51 134

原创 Leetcode Two Sum

题目在数组中找到 2 个数之和等于给定值的数字,结果返回 2 个数字在数组中的下标。Given nums = [2, 7, 11, 15], target = 9,Because nums[0] + nums[1] = 2 + 7 = 9,return [0, 1].go 1 package main 2 3 import "fmt" 4 5 func main(...

2019-09-16 13:10:17 183

原创 PHP世界的Go语言(一)

web开发利器之phpPHP主要用于Web开发,LNMP的技术架构是众多中小互联网公司的选择。php目前有众多成熟的框架,能够快速进行web开发。用户访问我们的网站、App、微信小程序本质上都是在与Web打交道。Web开发的本质就是将用户发送的请求处理,再回传给用户。这个简单的过程基于http协议。使用php开发主要专注业务逻辑处理,网络方面有nginx进行处理,数据库使用mysql,缓存有re...

2019-09-04 17:46:41 259

原创 php生命周期

问题php的生命周期是什么?每个阶段做了什么?为什么会有FPM?cli执行代码和请求经过fpm执行有什么区别?swoole为什么可以不使用fpmnginx配置php-fpm的两种方式思考ingphp五个生命周期php_module_startup:模块初始化php_request_startup:请求初始化php_execute_script:执行脚本php_reque...

2019-08-14 15:59:32 247

原创 go1.12安装

初识go语言随着软件规模的不断扩大,诸多的学者和谷歌的开发者们在公司内部的软件开发过程中开始经历大量的挫折,在诸多问题上都不能给出令人满意的解决方案,尤其是在使用 C++ 来开发大型的服务端软件时,情况更是不容乐观。由于二进制文件一般都是非常巨大的,因此需要耗费大量的时间在编译这些文件上,同时编程语言的设计思想也已经非常陈旧,这些情况都充分证明了现有的编程语言已不符合时下的生产环境。尽管硬件在...

2019-08-09 14:57:59 707

原创 PHP设计模式单例模式

class Pre{ private $props = array(); private static $instance; //防止使用 new 创建多个实例 private function __construct() { } public static function getIn() { if(empt...

2019-07-03 16:05:12 101

原创 docker搭建RabbitMQ并使用PHP操作

搭建RabbitMQ开发环境 LNMPdocker run -d --hostname my-rabbit -p 5672:5672 -p 15672:15672 rabbitmq:3.7.3-managementdocker ps 查看RabbitMQ是否启动访问RabbitMQ界面容器运行正常,使用http://127.0.0.1:15672访问rabbit控制台默认账号gu...

2019-06-21 16:11:20 1070 1

原创 云计算与Docker容器

1、基于云计算的3种服务模式:

2019-06-21 10:47:47 1020

原创 使用swoole实现价值一个亿的AI核心代码

环境配置LNMP环境 安装swoole扩展服务端代码使用swoole提供的websocket的服务<?phpclass Chat{ const HOST = '0.0.0.0';//ip地址 0.0.0.0代表接受所有ip的访问 const PART = 9502;//端口号 private $server = null;//单例存放websock...

2019-06-20 16:04:30 340

原创 搭建php Docker环境

创建Nginx容器docker pull nginxdocker run -p 8081:80 --name mynginx1 -v /data/www/wwwroot/project:/home -v /data/www/wwwroot/conf:/etc/nginx/conf.d -d nginx-p 代表着把容器中的80端口绑定到宿主机的8081端口,所以以后访问宿主机的80端口...

2019-06-13 14:05:33 167

原创 使用docker搭建nginx负载均衡

创建nginx容器首先本地linux环境中已经存在编译安装好的nginxdocker pull nginxdocker run --name adminNginx4 -d -p 8087:80 -v /data/www/html1:/usr/share/nginx/html docker.io/nginxdocker run --name adminNg...

2019-06-12 16:00:41 845

原创 docker搭建ElasticSearch 环境配合mysql搭建搜索引擎

ElasticSearch 坏境搭建拉取镜像docker pull docker.elastic.co/elasticsearch/elasticsearch:6.3.2运行容器docker run -d --name es -p 9200:9200 -p 9300:9300 -e “discovery.type=single-node” docker.elastic.co/elasti...

2019-06-11 18:12:59 688

原创 PHP socket编程

SocketSocket并不是一个协议,本质上说Socket是对 TCP/IP 协议的封装,它是一组接口,在设计模式中,Socket 其实就是一个门面(facade)模式,它把复杂的 TCP/IP 协议族隐藏在 Socket 接口后面,对用户来说,一组简单的接口就是全部,让 Socket 去组织数据,以符合指定的协议。php Socket虽然PHP的强项是处理文本,一般用来写网页和h...

2019-06-05 15:05:55 700

原创 PHP编程指南系列基本语法

前言php是世界上最好的语言本教程使用LNMP开发环境环境搭建教程第一个php程序<?php echo "hello world";

2019-06-01 23:46:32 142

原创 Laravel快速开发后端API队列使用

laravel队列应用场景

2019-05-31 10:53:05 214

原创 Laravel快速开发后端API指引一

laravel安装1.环境要求安装LNMP开发环境,推荐使用宝塔2.composer global require “laravel/installer”3.如果缺少vendor文件,使用composer install4.应用程序生成秘钥 php artisan key:generatelaravel配置文件复制项目目录下的配置文件 cp .env.example .env...

2019-05-30 10:38:21 6395

原创 Laravel快速开发后端API数据迁移

Laravel数据迁移生成数据迁移php artisan make:migration create_tests_table新的迁移文件会被放置在 database/migrations 目录中。每个迁移文件的名称都包含了一个时间戳,以便让 Laravel 确认迁移的顺序生成的迁移文件如下所示<?phpuse Illuminate\Support\Facades\Schema...

2019-05-30 10:03:32 196

原创 php c扩展开发初试

开发环境linux系统php源码生成c扩展并安装php ./ext_skel.php --ext gradytestcd gradytest/usr/local/php7/bin/phpize./configure --with-php-config=/usr/local/php7/bin/php-configmakemake install修改php.ini 加入...

2019-05-23 14:15:39 188

原创 predis包和phpredis扩展的区别是什么

问题predis好神奇啊,居然不用扩展就可以直接连接redis,他底层是用什么实现的?(我看了一下他的源代码,根本看不懂啊),听说phpredis是扩展实现所以性能比predis更高吗?但是Laravel官方却推荐的是predis,请问一下他们之间的区别是什么?性能差距大不大?...

2019-04-11 11:46:40 3114

原创 Swoole安装使用

Swoole安装下载源码git clone git@github.com:swoole/swoole-src.gitcd swoole-src-masterphpize./configure --with-php-config=/www/server/php/71/bin/php_configmakemake installSwoole TCP ServerService&l...

2019-04-09 13:50:02 119

原创 百度echarts饼图百分比的计算规则php实现---最大余额法

最大余额法参考文章最大余额法php实现//最大余额法 public function MaxBalance() { $data = [2,3,4]; $sum = array_sum($data); $res = []; foreach ($data as $key=>$item) { ...

2019-03-28 16:05:42 711

原创 Nginx前端域名转发后端配置

开发环境宝塔搭建LNMP开发环境前端域名配置cd /www/server/panel/vhost/nginx修改配置文件www.front.admin.cc.com.confserver{ listen 80; server_name www.front.admin.cc.com; index index.php index.html index.htm...

2019-02-27 14:37:59 2555

原创 写给php的react教程一

1111

2019-01-14 16:46:34 1171

原创 php多线程扩展pthread安装与使用

pthreads安装下载git源码 https://github.com/krakjoe/pthreadscd pthreadsphpize./configuremakemake install (may need sudo)安装过程遇到报错configure: WARNING: You will need re2c 0.13.4 or later if you ...

2018-08-28 12:01:27 2203

原创 xhprof性能分析工具

安装xhprofclone https://github.com/longxinH/xhprofcd xhprof/extension/phpize./configure makemake installphp.ini文件中添加 extension=xhprof.soxhprof分析ci框架ct 函数调用次数,wt 花费的时间,cpu 花费的 CPU 时间(微秒即百万...

2018-08-22 16:45:58 362

原创 Nginx 与 FPM 的工作机制

FPM是什么FPM 是一个 PHP 进程管理器,包含 master 进程和 worker 进程两种进程:master 进程只有一个,负责监听端口,接收来自 Web Server 的请求,而 worker 进程则一般有多个 (具体数量根据实际需要配置),每个进程内部都嵌入了一个 PHP 解释器,是 PHP 代码真正执行的地方,下图是我本机上 fpm 的进程情况,1一个 master 进程,6个 ...

2018-08-21 17:57:28 187

空空如也

空空如也

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

TA关注的人

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