自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

孙雪峰

有问题请留言,知无不言,24小时内回复

  • 博客(84)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 时间戳的理解

最近需求涉及到不同时区的时间展示,发现自己对于时间戳的理解存在误差。Unix 时间戳是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒。UNIX时间戳的 0 按照 ISO 8601 规范为 :1970-01-01T00:00:00Z.简单来说,时间戳是当前时间距离 1970-01-01T00:00:00Z 有多少秒。比如,当前时间为 2022年7月6日10点32分50秒,故这个时间点对应的时间戳为 1657074770这里忽略了两个东西,1970-01-01T00:00:00Z

2022-07-06 11:40:06 4980 1

原创 【读书笔记】非暴力沟通

文章目录背景感受理论反省总结推荐背景这个季度看了几本书,比如《一个人的朝圣》、《呼兰河传》、《元红》等等,女友也推荐了一本书给我,书名是《非暴力沟通》。她说她最近也在看这本书,推荐我也一起看一下。对我个人而言,是很少看这种鸡汤、心理方面的书,自我感觉良好,哈哈。不过,既然她推荐了这本书给我,那我也认真的读一读。感受对于 XXXX术、YYYY学之类的书,我是很抗拒的。自我感觉,这类的书籍更多的是成功者的卖弄或者是投机者的门面。而这本书的内容却出乎意料的精彩,不仅仅是理论的论述,更多的是大量实践的例子

2021-09-26 18:14:29 327

原创 mysql 本地登录失败 - 已授权

背景公司迁移虚拟机,我换了一台新的开发机,所以在新机器上装环境,重新装了一个mysql问题描述安装完mysql后,root用户操作没有问题,遂新建了一个dev用户用于代码连接db。授权完成后,使用web工具远程连接mysql,建表导数据一气呵成。然而在测试代码的时候问题来了。使用代码没办法登录mysql。解决方案检查用户权限、远程命令行登录后,均没有问题。查看mysql.user表:+---------------------------------+------+| host

2020-09-14 18:20:46 474 1

原创 mysql 分页优化策略(一)

前言这里分享下最近学习到的mysql分页策略的一种方式,之后有新的优化方案会继续更新,欢迎讨论。环境系统内存MySQL版本引擎CentOS release 6.38G5.6.34innodb测试表 sqlCREATE TABLE `data_test` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '自增id', `data` varchar(1000) CHARACTER SET utf8mb4 CO

2020-07-16 15:59:39 434

转载 初探微服务

初探微服务转载什么是微服务微服务的优缺点优点缺点微服务的设计原则单一职责原则服务自治原则轻量级通信原则接口明确原则转载转载自不甘于平凡的溃败什么是微服务所谓服务,要区别于系统,服务一个或者一组相对较小且独立的功能单元,是用户可以感知最小功能集微服务的优缺点优点易于开发和维护由于微服务单个模块就相当于一个项目,开发这个模块我们就只需关心这个模块的逻辑即可,代码量和逻辑复杂度都会降低,从而易于开发和维护。启动较快这是相对单个微服务来讲的,相比于启动单体架构的整个项目,启动某个模块的服

2020-05-17 16:56:41 158

原创 mac 更换brew镜像源

缘起转mac后,开始使用brew来代替yum来做一些基本软件的安装。每次brew update都要等到大把的时间。深入了解后,发现更换brew的镜像源可以解决问题。步骤两条命令解决问题cd `brew --repo`git remote set-url origin https://git.coding.net/homebrew/homebrew.git镜像列表镜像地址来...

2019-10-29 15:20:30 2746

原创 基于高德地图api的热力图配置及显示调优

基于高德地图api的热力图配置及显示调优缘起使用热力图的基本配置加载js组件和数据加载组件加载数据重要参数说明显示调优rediusmax参考缘起领导要求根据公交订单的起点/终点数据,来展示用户下单的起点/终点的分布情况,这时用热力图来表示分布情况更加直观。在使用高德地图热力图api的过程中,被几个参数折磨到凌晨2点多,将经验总结如下。使用热力图的基本配置在热力图api实例中有标准代码。...

2019-09-25 16:24:39 13942 2

原创 php int最大值探究

官方最大值PHP_INT_MAX 官方最大值为32平台:214748364764平台:9223372036854775807The largest integer supported in this build of PHP. Usually int(2147483647).自 PHP 5.0.5 起可用本机最大值本机环境mac 64位系统php_version >...

2019-08-21 17:57:59 5130

原创 gitee自动部署的使用

缘起给朋友做的小项目,托管在gitee上,每次修改都要登录到服务器上执行命令:git pull后了解到git的钩子机制,进而发现了gitee的webhook,现在说下这玩意怎么用。原理本地执行 git push 命令,push代码到gitee的服务器上。gitee接收到push请求后,调用我们自己的服务器上的一个接口。这个接口下的代码来执行 git pull 和重启服务等命令(...

2019-07-24 18:16:55 9622

原创 为什么一个字节是八个bit

字节字节是是计算机信息计量单位,一个字节包含八个bit。但是为什么一个字节是八个bit呢bitbit是计算机存储数据的最小单位,只有0和1两种值。对于计算机来说,数据只有0和1两种值。ascii码ascii码是计算机一开始使用的编码协议,主要用于对应需要显示的字符和 ”0与1“ 之间的对应。一开始的时候,需要显示的字符只有26个英文字母、10个数字、计算符号以及一些特殊符号,这样大概...

2019-06-10 19:10:29 38399 6

原创 golang配置环境排坑

文章目录golang配置gopathgorootGO111MODULEGOPROXYgolang配置golang环境搭建的教程一翻一大把,但是有个问题需要注意一下,不然会导致配置不生效先放下我的配置。# must have nameexport GOROOT=/apps/goexport GOPATH=/Users/snowin/goworkspaceexport GO111MODU...

2019-04-03 17:28:18 1582

原创 golang unrecognized import path "golang.org/x/net" 完美解决方案

报错复现dev$ go get -v golang.org/x/netFetching https://golang.org/x/net?go-get=1https fetch failed: Get https://golang.org/x/net?go-get=1: dial tcp 216.239.37.1:443: i/o timeoutpackage golang.org/x/...

2019-03-08 21:22:47 25949 4

原创 golang module实践

文章目录使用步骤增加环境变量处理golang不能获取到的包处理 google.golang.org/genproto 依赖问题处理 google.golang.org/grpc 依赖问题使用步骤增加环境变量$ vim ~/.bash_profile$GO111MODULE=onexpect PATH=$PATH:$GO111MODULE$ source ~/.bash_profile...

2019-03-08 16:40:10 832

原创 mysql8安装步骤及排坑

文章目录下载mysql选择安装目录编辑my.cnf修改文件权限初始化mysql启动mysql服务写在最后下载mysql官网地址选择自己服务器的平台(mac|windows|linux),如果你选择自己编译,那我精神上支持你。选择安装目录将解压后的文件夹放到合适的位置,有助于mysql的管理。编辑my.cnf解压后的mysql/support-files文件夹中可能存在默认的配置文件。...

2019-01-31 15:43:05 787

原创 mysql 连接失败的日志(或者输出)结果分析

情景复现小虎是一个后端开发。他使用客户端访问服务器A(IP:111.222.123.1)查询user表的数据,服务器A连接的数据库在服务器B(IP:111.222.123.2)上。访问后,在日志中获取到如下结果。日志内容SQLSTATE[HY000] [1045] Access denied for user ‘root’@‘111.222.123.1’ (using password: ...

2019-01-23 18:35:45 2632

原创 HTTP协议之3XX状态码

前言3XX系列状态码中302、303、307都是临时重定向,下面来说如何区分分类http1.1 3XX状态表状态码备注301Moved Permanently302Found303See Other304Not Modified307Temporary Redirect301永久重定向,没什么可解释的。302临时重定向,这...

2019-01-14 15:32:29 9093

原创 等额本息与等额本金的区别

写在前面等额本息和等额本金在字面上含义略有模糊,这里扩展一下这两个词和表意,变成两个句子。等额本息每月还款额的本金+利息是相等的。每月还款额 = (总本金 + 总利息)/ 期数等额本金每月还款额的本金是相等的。每月还款本金x = (总本金)/ 期数每月还款额 = x + 剩余本金应还的利息(一个月)...

2019-01-10 15:33:58 2689

转载 php为什么要提前定义变量

转自php官方文档举例<?php// 当用户合法的时候,赋值 $authorized = trueif (authenticated_user()) { $authorized = true;}// 由于并没有事先把 $authorized 初始化为 false,// 当 register_globals 打开时,可能通过GET auth.php?authorized...

2018-12-14 18:45:10 1128

原创 php控制台脚本错误输出到php_errors.log

php控制台脚本错误输出到php_errors.log问题描述今天学习php函数的时候,发现错误没有输出到php_errors.log,遂有此文。解决过程先检查php.ini文件,需要有一下配置log_errors = Onerror_log =/apps/logs/php_errors.log # 可自定义的位置需要找到php.ini文件位置(没有的话,在输出的配置文件的位置...

2018-11-29 19:17:21 1881

原创 php函数巧用 array_column

基本用途返回数组中指定的一列详情见官方文档进阶用途在使用php获取db数据的后,有时会需要使用数据的主键id或者用户id来作为数组的key,例如:$records = array( array( 'id' => 2135, 'first_name' => 'John', 'last_name' => 'Doe',...

2018-11-29 16:55:30 680

原创 php int类型思索

起因业务涉及了一组大整数的累加和,每个整数大约9位数,每组有几百个数字,担心数字溢出,所以了解下php int类型的范围。测试根据php官方文档,我的机器是64位,所以int范围应该是在(-263 -1 ) 到 (263 - 1)整型数的字长和平台有关,尽管通常最大值是大约二十亿(32 位有符号)。64 位平台下的最大值通常是大约 9E18,除了 Windows 下 PHP 7 以前的版...

2018-11-05 18:28:37 817

原创 phalcon使用registerNamespaces注册第三方类库文件

新博客地址phalcon使用第三方类库的时候,需要加载需要的文件,不然会提示找不到文件 一般加载文件可以使用php函数 require require_once include include_once 在phalcon中可以在引导文件中通过如下方式加载:phalcon文档 如果你的代码用命名空间组织,或者你要使用的外部类库使用了命名空间,那么 registerNamespac...

2018-08-15 15:38:01 1482

原创 php使用curl发送请求时 添加header失效

新博客地址场景复现$headers['token'] = '12erthyj7y6gtfhh567tuygjhkjb';curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);这个样设置headers后,一直无法请求成功,提示缺少token。解决方案php curl文档地址 仔细看文档后发现问题所在,设置headers是key...

2018-07-20 11:49:29 9116

原创 ThirdServiceManager SDK

TSM快速开始嗯,这是一个php的SDK 首先,我们需要加载tsm文件,ThirdServiceManager.php文件需要开发者自行加载,其他的文件tsm会自动加载。require ThirdServiceManager.phptsm的使用非常简单,配置好的tsm只需要两行代码就可以调用我们需要的第三方服务。$service = \TSM\ThirdServiceMana...

2018-07-18 15:44:32 195

原创 php自动加载基类文件

博客搬家:欢迎光临新地址问题描述偶尔我们可能不使用php框架写一些代码,会自己写一个框架或者包,这时一般会涉及多个文件。 这种情况下,如果只使用命名空间是不能加载其他需要的文件的。 使用php的 spl_autoload_register 可以做到文件的自动加载。涉及到基类的加载有一个小细节需要注意,具体方案如下。解决方案通过如下代码可以自动加载需要的文件,当php脚本运行...

2018-07-17 15:36:42 555

原创 wordpress使用 ftp使用问题总结

简介ftp分为server和client。在自己的服务器上配置好server后,可以通过client连接到server进行各种操作。在使用wordpress时,需要自己配置的是ftp server。 wordpress需要向blog所在服务器中上传各种文件。诸如安装主题、插件,上传图片等操作都需要使用ftp server。第一次有上述操作时要进行server的登录,需要填写的包括host,u...

2018-07-13 15:51:49 5795

原创 阿里云服务器排坑指南

外网访问 阿里云服务器需要设置安全策略 云服务器ECS -> 网络与安全 -> 安全组 -> 配置规则 -> 添加安全组规则

2018-07-04 00:15:00 524

原创 docker copy异常

问题描述 COPY failed: stat /var/lib/docker/tmp/docker-builder383673233/php.ini: no such file or directory可能的解决方法 .dockerignore文件 如果你需要COPY的文件在忽略的列表里面,就会导致这个错误 ...

2018-06-29 18:11:31 5191

原创 电影《后来的我们》

昨天阿哲推荐了我这部电影,看完之后让我开始思考人生,不禁想问自己,人活着究竟为了什么。从小我到大,我的价值观一直是金钱至上,物质决定精神高度。在电影的前半段,看到见清与小晓开始吵架到分手的部分,我依然觉得是他们没有钱导致的。电影中,两个人的物质基础很薄弱,怀揣着梦想被赤裸裸的现实所击碎。试想下,每天挤在一个不足十平米的小隔断中,吃着泡面,前途一片渺茫,这种环境下,怎么可能产生坚定的爱情。两个人...

2018-06-24 14:23:05 1329

原创 关于非对称加密算法在不同系统间对接时的使用要点

对方密钥的使用 不同加密算法的库生成的密钥的格式不同,拿到别人的密钥的时候,需要去掉格式,只保留密钥字符串,然后按照自己的格式拼接起来,再使用。加密结果的网络传输 加密后的结果可能非法字符,在网络传输中可能造成数据丢失,这是可以使用可逆的编码方式处理加密后的字符串,例如base64编码。需要注意的是,解密的时候不要忘了通知对方使用同样的编码方式解码,再解密...

2018-06-15 19:24:49 655

原创 设计模式 代理模式和装饰模式的区别

网上各种类图,UML学的不好看着实在累。所以,理论学的不进去了,咱们抛开ta聊下区别,希望最后有助于理解理论。代理模式: 代如其名,生活中办事如果遇到代理或者中介,中间被坑了多少,用户是肯定不清楚的。 举个例子,卖车的中介可以在交易前请交易人吃饭,事后可以拿回扣,甚至可以偷偷卖给其他人,这些对于用户来说都是透明的。用户只是找了个中介,要卖车,谈好价格然后拿钱。中介做了...

2018-06-14 15:31:20 6512 9

原创 linux系统修改为静态IP地址

解决方案0、查看当前网络使用哪块网卡    命令行执行命令,找到正在使用的网卡名称,本例中为:eno1ifconfig        1、修改配置文件(编辑文件需要vi相关命令,请自行google)    执行命令打开配置文件vim /etc/sysconfig/network-scripts/ifcfg-eno1    添加如下选项IPADDR=192.168.1.99NETMASK=225....

2018-06-13 15:55:40 16964 3

原创 sdk和api有什么区别

----原答案----举个例子:在这里,一个简单的功能链条我将它分为三个组成部分:1、客户端组装数据2、客户端使用组装的数据来请求服务端(或者操作系统)的 api3、服务端(或者操作系统)的 api 处理数据并返回处理结果结合这个链条得出结论:1、api为细粒度的功能接口 2、sdk包含第2、3步 3、sd...

2018-06-07 13:55:18 88399 44

转载 git 拉代码报错

【错误信息】Unable to negotiate with *** port ***: no matching cipher found. Their offer: aes128-cbc,3des-cbc,blowfish-cbc,aes192-cbc,aes256-cbcfatal: Could not read from remote repository.【原因】系统升级导致【解决方案】打...

2018-05-29 17:45:38 988

原创 docker 学习记录

2018-5-29 start1、docker在centos系统上使用,需要kernel3.1以上    You are running linux kernel version 2.6.32-431.el6.x86_64, which might be unstable running docker. Please upgrade your kernel to 3.10.0. 2、mac上安装d...

2018-05-29 16:52:19 198

原创 Exception: SQLSTATE[22001]

问题描述:Exception: SQLSTATE[22001]: String data, right truncated: 1406 Data too long for column 'outer_order_id' at row 1解决方案:检查outer_order_id字段,发现其数据类型为varchar(20),实际数据为db84b2edf4405bc5de5f6aedd91c989a6...

2018-05-21 19:06:21 14761 1

原创 git报错fatal: HTTP request failed

关于git报错的原因,见下链接此链接为转载: https://blog.csdn.net/zhang_danf/article/details/45538825我遇到是curl 版本问题,更新curl版本后问题解决。sudo yum update -y nss curl libcurl

2018-04-25 18:47:44 2289

原创 go语言web开发 排坑指南

本文章持续更新中.....1、参数解析func login(w http.ResponseWriter, r *http.Request) { r.ParseForm()     // 没有这个语句,参数无法被解析 fmt.Println("username:", r.Form["username"])}r.ParseForm() 这个方法用来解析参数,不使用这个方法,r.For...

2018-03-27 17:25:36 1278

原创 error while loading shared libraries: libiconv.so.2: cannot open shared object file

问题分析:应用运行时找不到需要的动态链接库libiconv.so.2。一般是文件不存在或者存在但是找不到两种情况。解决方案:这时首先确认自己的系统中是否存在这个动态链接库。sudo find / -name libiconv.so.2如果找不到文件路径,请安装libiconvsudo yum install libiconv或者使用源码安装,可以参考文章:https

2017-12-13 11:48:59 11448

原创 How to achieve network disk by samba in linux?

0. install sambasudo yum install samba1. amend samba conf in '/etc/samba/smb.conf'append this coding behind your smb.conf[share] # [important] disk name, define it by yourself, use it to lo

2017-11-22 14:50:10 202

简单网页实例源码

非常简单网页实例源码,简单易懂,附带背景音乐。 共初学者参考使用

2015-09-14

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

TA关注的人

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