自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

shirdon-廖显东的博客

原创技术共享

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

原创 Go语言Web编程怎么快速学习,Go语言有哪些优势,Go Web编程有哪些优秀书籍?

1.Go语言之前编程的痛点(1)为什么会设计Go语言? 我们先来了解一下Go的作者和主要核心开发者们:Robert Griesemer, Rob Pike 和 Ken Thompson。设计Go语言是为了解决当时Google开发遇到的以下这些问题: 大量的C++代码,同时又引入了Java和Python; 成千上万的工程师; 数以万计行的代码; 分布式的编译系统; 数百万的服务器; 其主要有以下几个...

2021-04-26 19:44:05 770 4

转载 架构:阿里巴巴为什么能抗住90秒100亿?看完这篇你就明白了!

1、概述本文以淘宝作为例子,介绍从一百个并发到千万级并发情况下服务端的架构的演进过程,同时列举出每个演进阶段会遇到的相关技术,让大家对架构的演进有一个整体的认知,文章最后汇总了一些架构设计的原则。2、基本概念在介绍架构之前,为了避免部分读者对架构设计中的一些概念不了解,下面对几个最基础的概念进行介绍。1)什么是分布式?系统中的多个模块在不同服务器上部署,即可称为分布式系统,如Tomcat和数据库分别部署在不同的服务器上,或两个相同功能的Tomcat分别部署在不同服务器上。2)什么是高可

2020-12-10 13:47:18 284 1

原创 程序员是青春饭吗-最新研究显示程序员的能力从50 岁后才会开始下降

程序员是青春饭吗很多人都说写代码最多到 35 岁,妥妥的青春饭,然而科学分析不这么认为。《Is Programming Knowledge Related to Age?》论文对 1694981 名 StackOverflow 用户的研究发现,程序员的平均年龄是 30.3 岁,其中数据清洗后参与分析的用户是 84248 名程序员,平均年龄 29.02 岁。在年龄分布中,人数最多的是 25 岁,中位数是 29 岁。然而分析发现,程序员的能力从 25 岁左右开始上升,一直到 50 岁后...

2020-12-04 12:28:15 468 1

原创 Raft术语总结

Raft术语总结基于前两个篇对paxos和zab的介绍,我们对分布式协议有一定的基础,所以本文先给出总结。三种成员身份raft提供三种成员身份,领导者(leader)、跟随者(follower)、候选人(candidate)跟随者:相当于paxos中的acceptor,接收和处理leader的消息,当leader故障时,主动推荐自己为候选人 候选人:向其他节点发送请求投票消息(Request Vote),如果获得大多数选票,则晋升为leader 领导者:处理写请求,管理日志复制、发送心跳

2020-12-04 12:08:21 1141

原创 dyld: Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib解决办法

1.问题原因:mac 升级了 brew update导致启动mysql时候报错:dyld: Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib Referenced from: /usr/local/bin/mysql Reason: image not found原因是openssl升级到1.1,但mysql还是依赖的1.0.02.解决方法:查看已经安装的版本:brew info openssl..

2020-08-18 09:56:44 3038

原创 linux 快速查看磁盘空间

1.Ubuntu查看磁盘空间大小命令df-hDf命令是linux系统以磁盘分区为单位查看文件系统,可以加上参数查看磁盘剩余空间信息,命令格式:df-hl显示格式为:  文件系统容量已用可用已用%挂载点FilesystemSizeUsedAvailUse%Mountedon/dev/hda245G19G24G44%//dev/hda1494df-hDf命令是linux系统以磁盘分区为单位查看文件系统,可以加上参数查看磁盘剩余空...

2020-07-28 11:44:19 680

原创 java大数据处理总结

从总体上来看,对于大型网站,比如门户网站,在面对大量用户访问、高并发请求方面,基本的解决方案集中在这样几个环节:1.首先需要解决网络带宽和Web请求的高并发,需要合理的加大服务器和带宽的投入,并且需要充分的利用系统中软件、硬件的缓存机制,将能缓存的内容都进行缓存存储,减少计算层和存储层的压力。2.其次需要对业务服务器和业务支撑服务器进行合理的分层,并且采用并行计算和分布式算法对大量计算进行处理,并且在开发的过程中需要采用JavaSDK中并发包(Concurrency)进行编码实现。3.存储层需要.

2020-07-27 23:04:08 2420

原创 java 高并发解决方案总结

如果网站的访问量非常大的话,那么我们就需要考虑相关的并发访问问题了。而并发问题是绝大部分的程序员头疼的问题,但话又说回来了,既然逃避不掉,那我们就坦然面对吧~今天就让我们一起来研究一下常见的并发和同步吧。 为了更好的理解并发和同步,我们需要先明白两个重要的概念:同步和异步1、同步和异步的区别和联系 所谓同步,可以理解为在执行完一个函数或方法之后,一直等待系统返回值或消息,这时程序是出于阻塞的,只有接收到返回的值或消息后才往下执行其它的命令。...

2020-07-27 23:01:40 4935 4

原创 常用命令行汇总------mysql允许远程连接的方法

默认情况下,mysql只允许本地登录,如果要开启远程连接,则需要修改/etc/mysql/my.conf文件。一、修改/etc/mysql/my.conf找到bind-address = 127.0.0.1这一行改为bind-address = 0.0.0.0即可二、为需要远程登录的用户赋予权限1、新建用户远程连接mysql数据库grant all on *.* to ad...

2019-11-26 16:04:32 267 1

原创 常用命令行汇总------Mysql命令行修改root密码

用UPDATE直接编辑user表mysql -u root -pmysql> use mysql;mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root';mysql> FLUSH PRIVILEGES;在丢失root密码的时候,可以这样mysqld_safe --s...

2019-11-26 15:50:50 196

原创 订单拆单-产品逻辑分析研究

拆单在电商订单中很常见,也比较复杂。拆单也有两次,一次是在用户提交订单之后、支付之前拆单,这次是拆分的订单;另一次是在用户下单之后,商家发货之前,去拆分发货单(SKU层面)。两次拆单的原则不同,第一次拆单是为了区分平台商家、方便财务结算,第二次拆单是为了按照最后的发货包裹进行拆单,如不同仓库、不同运输要求的SKU、包裹重量体积限制等因素(第二次拆单的有些步骤也可以放在第一步)。需要注意的是...

2019-11-26 11:33:07 3289

原创 库存管理-多个仓库库存扣减-简单算法

概述在做电商项目的时候,会涉及到库存扣减的问题,稍微复杂的情况是,多仓库库存扣减,比如说:仓库warehouse1有4件商品,warehouse2有3件商品,这个时候用户需要买7件商品,这样无论哪个仓库都不够扣减,这种情况下,会使用多仓库库存扣减的逻辑,warehouse1和warehouse2两个仓库的库存之和是3+4=7,是足够扣减6件的。简单代码public class S...

2019-11-26 11:27:59 2788

原创 理解 PHP 依赖注入-依赖倒置原则

说这个话题之前先讲一个比较高端的思想--'依赖倒置原则'"依赖倒置是一种软件设计思想,在传统软件中,上层代码依赖于下层代码,当下层代码有所改动时,上层代码也要相应进行改动,因此维护成本较高。而依赖倒置原则的思想是,上层不应该依赖下层,应依赖接口。意为上层代码定义接口,下层代码实现该接口,从而使得下层依赖于上层接口,降低耦合度,提高系统弹性"上面的解释有点虚,下面我们以实际代码来解释这个理论...

2019-11-26 10:47:11 276

原创 Linux背后的思想

01Linus TorvaldsLinus Torvalds两次改变了技术,第一次是Linux内核,它帮助互联网的发展;第二次是Git,全球开发者使用的源代码管理系统。在一次TED的采访中,Torvalds以极其开放的态度讨论了他独特的工作方式和性格特点。Torvalds说:“我不是一个空想家,我是一名工程师,我非常乐意跟梦想家在一起,他们行走四方,仰望苍穹,看着满天星辰说,“我想到...

2019-11-14 11:00:03 196

原创 行业内关于智能客服、聊天机器人的应用和架构、算法分享和介绍

阿里巴巴小蜜阿里小蜜新一代智能对话开发平台技术解析 阿里小蜜:知识结构化推动智能客服升级 阿里云小蜜对话机器人背后的核心算法 大中台、小前台,阿里小蜜这样突破对话机器人发展瓶颈 机器如何猜你所想?阿里小蜜预测平台揭秘 阿里小蜜:智能服务技术实践及场景探索 云小蜜:在中国移动的落地实践 阿里小蜜这一年,经历了哪些技术变迁? 论文导读 | 阿里小蜜背后的技术秘密 ...

2019-11-14 10:45:41 4666 2

原创 ubuntu 16.04 + apache2 将php7.1 切换到 php7.3

背景: ubuntu 更新时,选择,保留当前 php 版本,导致出现了 多个php 版本 ,phpinfo 显示的是 php7.1。在用 php -i 查看,发现,很多扩展打不开。1. Ubuntu16.04中php如何切换版本sudo update-alternatives --config php选择 php7.32.停用 php7.1sudo a2dismod...

2019-10-31 10:38:54 578

原创 Windows10安装ubuntu系统,报错WslRegisterDistribution failed with error: 0x8007019e

在windows应用商店安装ubuntu系统,报错WslRegisterDistribution failed with error: 0x8007019e1.报错: Installing, this may take a few minutes... Installation Failed! Error: 0x8007019e Press any key t...

2019-10-30 14:00:05 1380

原创 linux ubuntu centos macos 查找某目录下包含关键字内容的文件最简单方法

查找某目录下包含关键字内容的文件最简单方法:grep -r "{关键字}" {路径}例如:grep -r "test" /var/logs

2019-10-17 15:30:51 250

转载 沧桑砥砺 春华秋实——彭水中学建校90周年小记

九十年沧桑砥砺,九十年春华秋实。12月12日,彭水中学迎来了建校90周年纪念日。当天,近万名彭水中学新老校友齐聚在一起,隆重庆祝母校90岁生日。站在新起点,如今的彭水中学,深化教育综合改革,在“科学管理、注重发展、文化引领、多元发展”中登上新高度。砥砺前行九十年翻开彭水中学大事记:“ 1925年春,二年制师范学校成立。”...

2019-10-10 23:21:16 1842

原创 linux 查看系统信息命令大全

linux 查看系统信息命令是linux初学者必备的基础知识, 这些命令也非常有用, 因为进入linux第一件事就可能是首先查看系统信息, 因此必要的系统的学习一下这些linux系统信息命令还是非常有必要的!下面给除了各linux发行版比较常用的系统信息查询的命令, 大家可以参考, 同时也可以测试学习, 必要的时候man, 一定要学学使用man命令, 呵呵# uname -a ...

2019-10-08 17:03:44 127

原创 卸载并重装openssh(解决ssh -1问题)

在集群测试过程中,有一个节点的openssh装的有问题,需要ssh -1 才能登录,导致多节点的mpi无法使用。修改配置文件什么的也没有用(也许是我改的不对。。)最后决定直接重装openssh1. 卸载先查看openssh的相关包 [root@node51 ~]# rpm -qa openssh* openssh-server-6.6.1p1-11.el7.x8...

2019-09-26 16:42:19 3283 1

原创 linux crontab每小时运行一次

先给出crontab的语法格式对于网上很多给出的每小时定时任务写法,可以说绝大多数都是错误的!比如对于下面的这种写法:00 * * * * #每隔一小时执行一次00 */1 * * * #与上面是相同的任务这种是正确的吗?对照最前面给出的语法格式来看,这个定时任务在0分、每小时、每天、每月、每星期执行,看起来似乎很合理啊?前一个小时的0分和后一个小时的0分不就是相...

2019-09-26 16:34:14 18896 2

原创 Mac 更改php.ini后重启环境生效

需要重启Apache,否则不生效# sudo apachectl restartNginx 服务器访问:http://127.0.0.1:8001/需要重启php-fpm,否则不生效# sudo killall php-fpm# sudo php-fpm...

2019-09-19 20:44:22 2962

原创 mac 下 安装php扩展 - mcrypt--其他版本比如libmcrypt-2.6.8.tar.gz会报错

MCrypt是一个功能强大的加密算法扩展库,它包括有22种算法,phpMyAdmin依赖这个PHP扩展,具体如下: 下载并解压libmcrypt-2.5.8.tar.gz。注意!!其他版本比如libmcrypt-2.6.8.tar.gz会报错!!!!在终端执行如下命令:tar zxvf libmcrypt-2.5.8.tar.gz cd libmcrypt-2.5.8/./conf...

2019-09-19 20:29:02 591

原创 Magento默认首页到底指向哪一页

Magento首页和其他页一样,在layout的文件中有相应的声明当访问:http://host/magento/时, 默认导向页实际上是http://host/magento/cms/index.对应的layout文件声明文件是cms.xmlXml代码<cms_page> <referencename="content"> ...

2019-09-18 22:41:33 707

原创 php版本5.5支持 ::class这种写法

自PHP5.5起,关键词class也可用于类名的解析。使用ClassName::class你可以获取一个字符串,包含了类ClassName的完全限定名称。这对使用了命名空间的类尤其有用。...

2019-09-18 18:51:58 201

原创 如何重新安装Magento2

如何重新安装Magento CE 2.1版本,只需要做以下删除文件即可删除 var/cache 文件夹删除 var/generation文件夹删除 app/etc/config.php删除 app/etc/env.php再访问首页即可setup.------廖显东...

2019-09-18 18:50:26 1161

原创 MacOS 自带php环境安装imagick扩展

安装php扩展imagick下载:wgethttps://pecl.php.net/get/imagick-3.4.3.tgz解压:sudo tar -zxvf imagick-3.4.3安装:cd imagick-3.4.3sudo /usr/bin/phpize&lt;--- 生成configuresudo ./configure --with-php-con...

2019-09-18 17:56:15 586

原创 mac Mac OS X 安装 PHP intl

首先,需要关掉 MAC OS X El Captian 的 System Integrity Protection(rootless)的机制:1. 重启计算机时按住 Command 和 R 键进入到恢复模式2. 恢复模式启动后,从顶部菜单栏中选择 “实用工具 > 终端”3. 在终端窗口中输入csrutil disable并按回车键4. 重启系统,System Integrity P...

2019-09-18 17:40:12 833

原创 unsupported destination, should be slice or struct原因

re := new(User)db := c.DB().Table(c.TableName()). Where("user_id = ?", c.User)err = db.First(&re).Error如果不通过new关键字实例化就会报错unsupported destination, should be slice or struct...

2019-08-30 15:21:54 7491

原创 mac 的^这个符号键是哪个键啊mac⌥符号——Option (alt)mac键盘总结

用⇧+数字键6⌘——Command ()⌃ ——Control⌥——Option (alt)⇧——Shift

2019-08-28 15:46:56 2821

原创 Golang 序列化方式总结

前言Go语言作为一个由Google开发,号称互联网的C语言的语言,自然也对JSON格式支持很好。下面这篇文章主要介绍了关于golang自定义json序列化应用的相关内容,下面话不多说了,来一起看看详细的介绍吧问题引入当某个struct存在某个字段为string或者[]byte类型但是实际上保存的内容是json格式的数据时,对其进行json序列化,比如? 1 2...

2019-08-19 13:51:25 1529

原创 mysql 索引类型以及使用场景

关于MySQL索引的好处,如果正确合理设计并且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的MySQL就是一个人力三轮车。对于没有索引的表,单表查询可能几十万数据就是瓶颈,而通常大型网站单日就可能会产生几十万甚至几百万的数据,没有索引查询会变的非常缓慢。还是以WordPress来说,其多个数据表都会对经常被查询的字段添加索引,比如wp_comments表中针对5个字段设计了BTR...

2019-08-16 17:31:22 538

原创 MYSQL 大数据查询如何进行优化总结?

在关系数据库中,除在数据库的物理设计、关系规范化等方面进行优化外,一个简单直接有效的方法是对SQL语句进行调整,减少计算量和内存需求,提高响应速度。总结如下几项:1、where条件过滤数据多的放在前面,减少产生的临时表的数据量2、在需要当条件的列上加索引,避免全表扫描,首先应考虑在 where 及 order by,不要判断=null或!=,<>,where 子句中使用 ...

2019-08-16 11:14:48 540

原创 configs_witch_go go语言配置包

想必gopher们都会抱怨,配置文件都读取每次都要自己封装,费时费力,有没有一个包来管理呢,下面这个包就免费分享给大家~ 这个包实现了一种基本的配置文件解析器语言,提供类似于在Microsoft Windows ini上找到的结构文件夹。例如:[My Section]foodir: %(dir)s/whateverdir=foo安装方法go get gitee.com/sh...

2019-08-15 09:44:43 147

原创 go语言验证码合集包,支持中英文复杂验证码,自定义字体!快速构建,免费开源啦,欢迎star,fork~

关于go语言验证码,网上都资料很少,特别是支持中文验证码的更少,所以自己抽空了封装一下,免费分享给大家,希望能给大家提供思路和方法~Feature 特色:支持中文验证,字体可选!!支持中文验证码 支持自定义词库、字库 支持自定义滤镜机制,通过滤镜来增加干扰,加大识别难度 当前的滤镜包括: 支持干扰点 支持干扰线 支持其他模式的干扰 更多模式,可实现image...

2019-08-15 09:32:32 289

原创 golang支付合集(包括微信支付,支付宝,后期会加入聚合支付)

golang支付库 想必gopher们都会抱怨go成熟的包太少,特别是go语言支付这块,网上的代码基本没有能用的,要么不全,要么有硬伤,所以结合网上和自己经验,抽出时间写的一部分代码,封装下分享出来,希望能给大家一点借鉴意义。喜欢的朋友们,帮忙点个star,fork!谢谢! 支持的支付方式 目前支持微信app,支付宝网页版,支付宝app。要是谁有新的支付方式也可以合并。 项...

2019-08-15 09:19:47 2295

原创 Mysql中Key与Index的区别

mysql的key和index多少有点令人迷惑,这实际上考察对数据库体系结构的了解的。1 key 是数据库的物理结构,它包含两层意义,一是约束(偏重于约束和规范数据库的结构完整性),二是索引(辅助查询用的)。包括primary key, unique key, foreign key 等。 primary key 有两个作用,一是约束作用(constraint),用来规范一个存储主键和唯一...

2019-08-15 09:16:30 144

原创 mysql联合索引总结

命名规则:表名_字段名1、需要加索引的字段,要在where条件中2、数据量少的字段不需要加索引3、如果where条件中是OR关系,加索引不起作用4、符合最左原则https://segmentfault.com/q/1010000003984016/a-1020000003984281联合索引又叫复合索引。对于复合索引:Mysql从左到右的使用索引中的字段,一个查询可以只使用索引中的...

2019-08-14 16:45:53 181

原创 golang emoji中文字符串的截取

package mainimport ( "fmt" "unicode/utf8")func main() { str:="

2019-08-13 14:17:09 902

空空如也

空空如也

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

TA关注的人

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