自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 索引键的长度对查询性能的影响

索引性能优化

2022-03-03 17:51:17 1806

原创 ArangoDB快速上车笔记

图数据库

2022-02-10 22:49:45 241

原创 禁用chrome的导航手势(MacOS)

defaults write com.google.Chrome AppleEnableSwipeNavigateWithScrolls -bool FALSE

2022-01-13 18:08:12 368

原创 Mysql的string转义

func escape(str string)string { escaped:=make([]byte,0,len(str)*2) input:=[]byte(str) for idx:=0;idx<len(input); { chr := input[idx] if chr == '\\' || chr == '\'' || chr == '"' { escaped = append(escaped, '\\') }..

2021-06-30 09:58:27 192

原创 Gopkg.toml简明介绍

Gopkg.toml是在执行dep init时创建,主要被手动编辑,可以使用以下规则声明方式来改变dep的行为:允许使用constraints和overrides指定可以接受的版本,以及指定获取来源(比如指定依赖的某个第三方库为特定版本号) 允许使用requiredandignored来分别增加或排除import路径,进而操纵import graph(允许在go/src之外存放依赖) 允许使用metadata来定义key-value元数据,dep会忽略这些数据,为在dep之上的构建工具链提...

2021-05-24 18:42:14 855

原创 服务器端编程语言对比:C/C++, C#.NET, Java, Go, Rust

对比指标 衡量方式 ...

2020-12-25 15:24:38 1157 1

原创 NGINX 编译安装

./configure --prefix=/heron-sense.net/heron-stack/nginx--sbin-path=/heron-sense.net/heron-stack/nginx/sbin--modules-path=/heron-sense.net/heron-stack/nginx/modules--conf-path=/heron-sense.net/heron-stack/nginx/config--error-log-path=/heron-sense.net/h...

2020-09-18 13:37:37 142

原创 Apache Heron初体验

Step 1. Clone Project(Linux下命令: git clonehttps://github.com/bazelbuild/bazel.git)Bazel是个构建、测试工具,类似Make, Maven以及Gradle,主要优点有: 抽象的、人类可阅读的、面向语义的、高层次编译指令,用来描述项目的编译属性。不像其他编译工具你还要为很细小的编译细节指定编译、链接行为,Bazel控制的对象是库、二进制程序、脚本、数据集等,让你不再需要处理编译器、链接器层面的问题。...

2020-07-13 11:28:10 460

转载 UEFI安装Windows 10(1909) 和Fedora Server 32

1. 把硬盘按照GPT方式初始化,首先安装Windows 102. 安装Windows 10(安装Windows 10时,会创建多个分区,这些分区都不要动)3. 你可以创建更多的分区,但是最重要的是预留一定的空间,为了安装Fedora Server 324. 安装好Fedora Server 32时,让Fedora自动选择空间(自己只手动修改空间大小即可)。5. 安装完成后,启动进入Fedora-server,用root登陆执行dnf grouplist执行dnf group.

2020-06-22 14:07:32 425

原创 Elastic Search简单实用

查看索引列表curl -XGET http://localhost:9200/_cat/indicesyellow open hs_outlet6hi6FrJ3SO-WHlRyWEAS7Q 5 1 2 0 20.1kb 20.1kbyellow open hs_item HSQ09oTuQLSrDRIxqGm1Xg 5 1 1 0 10.7kb 10.7kb查询索引中的doccurl -XGET 'localhost:9200/hs_outlet/_search?pret...

2020-05-09 14:11:31 143

原创 JMeter从csv中加载登录态

JMeter是个非常强大的压力测试工具,在分布式部署的情况下,可以用来进行很高并发的压力测试。 由于多数http接口需要登录后才可以访问,为了更真实地模拟多用户进行压力测试,可以如下配置: 1. JMeter的Thread Group中增加一个CSV数据集配置: 其中CSV文件里的内容是长这样子的(多数...

2020-04-14 15:39:49 271

原创 编译安装PHP7

最近一些个人项目在用PHP,PHP7已经发布了这么多年,升级PHP7当然是首选。由于服务器环境是CentOS6.9,yum安装PHP7不太容易找到软件源,于是决定编译安装。 PHP7当前来说首选版本是7.2.20,版本已经经过20个迭代,足够稳定,也带有更多PHP7的新特性。 这里使用的是Apache Httpd 2.2的应用服务器。 ...

2019-08-08 10:08:20 133

原创 搭建mysql innodb cluster集群

如果你使用yum安装mysql-shell时报错 libpython2.6.so.1.0()(64bit) is needed by mysql-shell-8.0.15-1.el6.x86_64那么多半原因是,你的操作系统是centos/redhat 7而你的软件源是for centos/redhat 6的(或者反过来)。解决办法是,手动改过来就好了vim /etc...

2019-04-14 14:06:17 418

原创 依据Nvidia RTX2080TI算力来分析自动驾驶算力需求

        作为一名严谨的工程师,我思考问题更喜欢站在多个角度进行思考、审视。多数情况下,一些草率的同行可能根据直觉就对一些问题给出结论,而我更喜欢在多个层面、角度思考、分析后给出一般性结论。        由于个人是个硬件发烧友,所以对硬件各个指标都有较深刻了解。2018下半年,Nvidia发布了自称具有划时代意义的显卡核心——RTX2080TI(有趣的一个事情是,之前跟一个小伙伴讨论G...

2018-11-26 13:09:18 11719 2

原创 Linux上的TCP监听fd的accept/select/poll/epoll惊群问题

同一个TCP端口(地址相同)是不能被多次绑定、监听的。因此,多线程程序无法并发地accept连接。而多进程可以并发accept新连接,办法就是先创建、绑定好端口,完成listen调用,然后fork出子进程,子进程继承父进程的文件描述符,然后子进程、父进程都可以accept。       很多石器时代的C/C++程序员认为,如果有一个新连接建立完成,此时阻塞在accept系统调用上的进程都会被唤...

2018-11-20 15:18:59 2157

原创 TLS加密套件

    出于兴趣爱好,决定开发TLS1.2-1.3的一个库。为此阅读了TLS相关的若干RFC文档,以及查阅了多篇相关博客文章。最终有以下发现:    1. TLS定义了几百个加密套件(参考https://www.iana.org/assignments/tls-parameters/tls-parameters.xhtml),可是在HTTP2面前基本都被否定了(꒦_꒦),列入了加密套件黑名单。...

2018-10-26 15:13:53 10366

原创 http request/response请求/响应高性能解析

        很多时候都需要对http request/response进行简单解析,而这时候如果引入一个库又过于臃肿而繁琐。如果使用粗制滥造的代码进行解析,这样的代码自己都会觉得惭愧。鄙人花费半天时间,设计了一个性能较高,可读性良好,而又使用简单的解析方式。1. 如果解析出错,报告出错位置以及原因;2. 性能不可妥协;3. 代码可读性良好;4. 容易改造扩展。这里并不提供h...

2018-08-31 16:16:40 557

原创 layaair的TS版本报错问题

如果你电脑上VS多个版本(VS2013 VS2015)并存,那么使用layaair的较新版本时多半会报错,这时候你到TS的安装路径,直接把旧版本的layaair干掉就好啦。

2018-08-22 19:01:04 836

原创 PHP过滤非UTF8字符

function        utf8_filter($data)        {                $str = "";                for($n = 0; $n &lt; strlen($data);)                {                        $s = substr($data, $n, 1);      ...

2018-08-09 17:46:05 1436

原创 架构设计过程中的传输延时考量

       对于绝大部分后台开发人员来说,工作核心关注点在于设计高性能(承载请求量大)、低延时(平均延时低,延时波动小,最高延时低)、高可靠性(程序不轻易崩溃)、高稳定性(程序运行一个星期后,跟刚启动时没有明显区别,不能刚启动时表现好,运行一个星期后就各种无响应)、高安全性(对安全性有适当的考量)的架构。通常情况下的网络应用并不侧重其中任何一点,而是要求总体没有明显短板即可。然而对于游戏后台而言...

2018-07-28 13:29:27 235

原创 JS:十六进制字符串转为base64

function sha1_to_base64(sha1){    var digits="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";    var base64_rep = "";    var cnt = 0;    var bit_arr = 0;    var bit_num = 0; ...

2018-07-20 19:58:38 6745

原创 降低TCP连接传输延时(TCP/IP超时重传)

提起TCP协议,大多数开发者会想起的有TCP的各种状态以及之间的转换过程,对于TCP相关的系统调用也能如数家珍。但是如果说TCP网络传输究竟有多快,相当一部分开发者就没有概念了。当前绝大部分网络应用程序都是使用操作系统内核提供的网络协议栈进行通信,因为它足够稳定而高效。但是如果因此就不去了解网络协议栈的设计和实现,那也不能称得上是一个优秀的开发人员。就Linux而言,内核提供了完整的TCP/IP网...

2018-07-13 01:50:34 7199

原创 c++11 unordered_map使用

前几天同事提起C++没有hash_map,听到我就笑了:这位同事的知识该有多久没有更新了呀!于是决定网上找个C++ unordered_map使用示例给他,发现百度出来的结果有些作者自己都说无法编译通过,有的示例我亲测无法编译通过的。于是决定按照最朴素的用法给他写了个示例,源码如下:#include&lt;string&gt;#include&lt;iostream&gt;#include&lt;...

2018-07-11 10:37:58 2465

原创 RSYNC配置

RSYNC简介       我们常常需要把文件从一台机器复制到另外一台机器,然后执行一些操作。如果这样的工作只需要做一次,对于会使用Linux的用户来说并不困难。但是如果这样的事情需要进行很多次,那么你可能会想有没有更好的办法。其实我们的前辈工程师们早已开发出了一套程序,帮我们实现这样的目的。RSYNC便是用来数据同步的程序代表。       想象一下数据复制的过程,你可能对以下要点感兴趣:1. ...

2018-04-20 17:10:05 143

原创 CenOS-6.x~7.x修改mysql默认root密码

1.   卸载mariadb(mysql已经走向收费,因此mariadb作为mysql的一个分支应运而生),已经安装mariadb的情况下再安装mysql会因为冲突而安装失败。因此先卸载mariadb执行如下命令,查看mariadb以及相关的程序安装情况:rpm-qa | grep mariadb使用rpm命令卸载所有的程序(出现在” rpm-qa | grep mariadb”执行结

2017-09-28 09:35:58 259

空空如也

空空如也

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

TA关注的人

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