自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 资源 (3)
  • 收藏
  • 关注

原创 ubuntu系统下mysql 8重置root密码

忘记mysql的root密码是很正常的一件事情,但是想要重置root用户的密码却不简单,此处是ubuntu下重置密码的一种方式,亲测有效;在介绍修改密码之前,先介绍一个文件/etc/mysql/debian.cnf.其主要内容如下图:里面有一个debian-sys-maint用户,这个用户只有Debian或Ubuntu服务器才有,所以如果您的服务器是Debain或Ubuntu,debian-sys-maint是个Mysql安装之后自带的用户,具体作用是重启及运行mysql服务。所以如果忘了root密码,

2021-12-14 22:49:56 1079

原创 MySQL创建用户和授权

我们知道我们的最高权限管理者是root用户,它拥有着最高的权限操作。包括select、update、delete、update、grant等操作。那么一般情况在公司之后DBA工程师会创建一个用户和密码,让你去连接数据库的操作,并给当前的用户设置某个操作的权限(或者所有权限)。那么这时就需要我们来简单了解一下:如何创建用户和密码给当前的用户授权移除当前用户的权限如果你想创建一个新的用户,则需要以下操作:进入到mysql数据库下mysql> use mysqlDatabase ch

2021-12-14 22:24:01 164

原创 Linux下各个时间结构及其获取函数

常用的时间结构struct tm结构struct tm { int tm_sec; /* seconds */ int tm_min; /* minutes */ int tm_hour; /* hours */ int tm_mday; /* day of the month */ int tm_mon; /* month */ int tm_year; /* year */ int tm_w

2021-01-31 21:06:13 207

转载 /proc/sys/net/ipv4/下各文件参数的详细含义

/proc/sys/net/ipv4/ip_forward  该文件表示是否打开IP转发。  0,禁止  1,转发  基本用途:如VPN、路由产品的利用;出于安全考虑,Linux系统默认是禁止数据包转发的。所谓转发即当主机拥有多于一块的网卡时,其中一块收到数据包,根据数据包的目的ip地址将包发往本机另一网卡,该网卡根据路由表继续发送数据包。这通...

2020-03-07 18:05:48 1438

原创 LINUX下的几种CPU让渡策略

CPU作为服务器重要的计算资源,因为其资源的稀缺性,所以其对所有程序来说都是弥足宝贵的;尤其是对性能要求极高的应用程序而言,如何更好的利用CPU将是 提升性能的一个关键因素。本文将探讨几种应用程序让渡CPU的策略,以此来研究如何让CPU更好的被不同用途的应用程序或者相同协作的一组应用程序使用,从而更好的使用CPU这种宝贵的资源。cpu_relaxcpu_relax在LINUX内核中使用较...

2019-09-02 22:12:10 994

转载 线程局部存储__thread和线程特有存储pthread_key_create

在一个进程中定义的全局或静态变量都是所有线程可见的,即每个线程共同操作一块存储区域。而有时我们可能有这样的需求:对于一个全局变量,每个线程对其的修改只在本线程内有效,各线程之间互不干扰。即每个线程虽然共享这个全局变量的名字,但这个变量的值就像只有在本线程内才会被修改和读取一样。 线程局部存储和线程特有数据都可以实现上述需求。1. 线程局部存储线程局部存储提供了持久的每线程存储,每个线程都...

2018-08-05 06:58:43 1495

转载 两种高效的服务器设计模型:Reactor和Proactor模型

I/O模型在文章《unix网络编程》(12)五种I/O模型中提到了五种I/O模型,其中前四种:阻塞模型、非阻塞模型、信号驱动模型、I/O复用模型都是同步模型;还有一种是异步模型。Reactor模型Reactor模式是处理并发I/O比较常见的一种模式,用于同步I/O,中心思想是将所有要处理的I/O事件注册到一个中心I/O多路复用器上,同时主线程/进程阻塞在多路复用器上;一旦有I/O事件到...

2018-08-03 17:28:06 1475

转载 大页内存(HugePages)在通用程序优化中的应用

在介绍之前需要强调一点,大页内存也有适用范围,程序耗费内存很小或者程序的访存局部性很好,大页内存很难获得性能提升。所以,如果你面临的程序优化问题有上述两个特点,请不要考虑大页内存。后面会详细解释为啥具有上述两个特点的程序大页内存无效。背景近期一直在公司从事听歌识曲项目的开发,详细内容可参考:基于指纹的音乐检索,目前已上线到搜狗语音云开放平台。在开发的过程中,遇到一个很严重的性能问题,单...

2018-06-28 18:52:45 5593 2

转载 NUMA架构的CPU -- 你真的用好了么?

作者:卢钧轶(cenalulu) 本文原文地址:http://cenalulu.github.io/linux/numa/NUMA简介这部分将简要介绍下NUMA架构的成因和具体原理,已经了解的读者可以直接跳到第二节。为什么要有NUMA在NUMA架构出现前,CPU欢快的朝着频率越来越高的方向发展。受到物理极限的挑战,又转为核数越来越多的方向发展。如果每个core的工作性质都是...

2018-06-28 18:47:53 407

原创 如何提升应用程序的运行速度

对于对吞吐量和延迟有极致追求的程序来说,提升应用程序的运行速度无疑能够显著增强其核心竞争力。下面就本人目前的认识简要介绍如下,有不足之处,还望指正。阻止CPU的切换 CPU的切换会给成勋的运行带来非常大的损耗,主要是因为CPU切换带来的是CPU对应的内存数据的洗礼,当程序运行的CPU发生切换时,由于目前的CPU架构大部分都是NUMA架构,内存控制器天然的会把内存进行切割,固定分配到各个CPU...

2018-06-28 18:45:20 5057

转载 RDMA(远程直接内存访问)技术浅析

RDMA简介 传统的TCP/IP技术在数据包处理过程中,要经过操作系统及其他软件层,需要占用大量的服务器资源和内存总线带宽,数据在系统内存、处理器缓存和网络控制器缓存之间来回进行复制移动,给服务器的CPU和内存造成了沉重负担。尤其是网络带宽、处理器速度与内存带宽三者的严重”不匹配性”,更加剧了网络延迟效应。RDMA是一种新的内存访问技术,RDMA让计算机可以直接存取其他计算机的内存,而不...

2018-06-28 15:56:36 1969

转载 Linux中的线程局部存储

在Linux系统中使用C/C++进行多线程编程时,我们遇到最多的就是对同一变量的多线程读写问题,大多情况下遇到这类问题都是通过锁机制来处理,但这对程序的性能带来了很大的影响,当然对于那些系统原生支持原子操作的数据类型来说,我们可以使用原子操作来处理,这能对程序的性能会得到一定的提高。那么对于那些系统不支持原子操作的自定义数据类型,在不使用锁的情况下如何做到线程安全呢?本文将从线程局部存储方面,简单...

2018-05-31 06:26:07 407

转载 Google Protocol Buffer 的使用和原理

简介什么是 Google Protocol Buffer? 假如您在网上搜索,应该会得到类似这样的文字介绍:Google Protocol Buffer( 简称 Protobuf) 是 Google 公司内部的混合语言数据标准,目前已经正在使用的有超过 48,162 种报文格式定义和超过 12,183 个 .proto 文件。他们用于 RPC 系统和持续数据存储系统。Pro

2018-04-23 18:04:33 283

转载 SSH 端口转发实例分析

第一部分 概述当你在咖啡馆享受免费 WiFi 的时候,有没有想到可能有人正在窃取你的密码及隐私信息?当你发现实验室的防火墙阻止了你的网络应用端口,是不是有苦难言?来看看 SSH 的端口转发功能能给我们带来什么好处吧!端口转发概述让我们先来了解一下端口转发的概念吧。我们知道,SSH 会自动加密和解密所有 SSH 客户端与服务端之间的网络数据。但是,SSH 还同时提供了一个非常

2018-04-23 14:50:25 298

转载 linux程序分析工具介绍—ldd,nm

本文要介绍的ldd和nm是linux下,两个用来分析程序很实用的工具。ldd是用来分析程序运行时需要依赖的动态库的工具;nm是用来查看指定程序中的符号表相关内容的工具。下面通过例子,分别来介绍一下这两个工具:1. ldd, 先看下面的例子, 用ldd查看cs程序所依赖的动态库:[plain] view plain copy$ ld

2017-12-26 07:42:23 423

转载 Linux的.a、.so和.o文件以及与windows下的对应关系

在说明Linux的.a、.so和.o文件关系之前,先来看看windows下obj,lib,dll,exe的关系 windows下obj,lib,dll,exe的关系    lib是和dll对应的。lib是静态链接库的库文件,dll是动态链接库的库文件。     所谓静态就是link的时候把里面需要的东西抽取出来安排到你的exe文件中,以后运行你的exe的时候不再需要li

2017-12-26 07:35:00 8055

原创 点分法IP地址和网络二进制表示的转换

字符串形式的IP地址和网络传输中的IP地址如何进行转换?字符串形式的IP地址主要是指点分法表示的IP地址,比如192.168.0.11,而实际在网络中表示IP地址时,需要转换成整数形式。

2017-12-13 23:23:11 1699

原创 linux下查看系统配置参数

linux下查询系统的配置信息

2017-12-07 22:18:09 4136 3

转载 解决CentOS7关闭/开启防火墙出现Unit iptables.service failed to load: No such file or directory.

CentOS7中执行[plain] view plain copyservice iptables start/stop  会报错Failed to start iptables.service: Unit iptables.service failed to load: No such file or directory.在Ce

2017-11-24 15:39:37 278

原创 linux 和 windows 下的socket之间的差别

1、socket描述符的定义不同 windows: 套接字描述符为一个局柄SOCKET。 Linux: 套接字描述符为一个int型整数,与其他的文件描述符没有差异。2、错误判断的方式不同 windows: 需要使用WSAGetLastError获取错误码。 linux: 使用全局变量errno获取。3、connect返回值的不同 windows下: If no error occ

2017-11-24 00:04:52 1941

原创 socket在linux和windows下的差异

linux和windows下的socket都源自伯克利套接字,所以其在整体上是大致相同的,只不过在一些细节上存在一定的区别。对于一些需要平台兼容的处理,能够了解这些差异是非常有必要的。

2017-11-22 19:31:43 1285

转载 socket阻塞与非阻塞,同步与异步

1. 概念理解      在进行网络编程时,我们常常见到同步(Sync)/异步(Async),阻塞(Block)/非阻塞(Unblock)四种调用方式:同步:      所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。也就是必须一件一件事做,等前一件做完了才能做下一件事。 例如普通B/S模式(同步):提交请求->等待服务器处理->处理完毕返回 这个期

2017-11-21 18:19:41 248

转载 tcpdump命令详解

简介用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。 tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。 实用命令实例默认启动tc

2017-11-15 16:56:18 278

原创 沪深两市的涨跌停机制

沪深两市的涨跌停机制涨跌幅限制是指证券交易所为了抑制过度投机行为,防止市场出现过分的暴涨暴跌,而在每天的交易中规定当日的证券交易价格在前一个交易日收盘价的基础上上下波动的幅度。股票价格上升到该限制幅度的最高限价为涨停板,而下跌至该限制幅度的最低限度为跌停板。涨跌幅限制是稳定市场的一种措施。海外金融市场还有市场断路措施与暂停交易、限速交易、特别报价制度、申报价与成交价档位限制、专家或市场中介人调节、调

2017-11-15 14:14:36 1225

转载 Reactor server 服务器模式的初步了解

reactor server的架构初步了解。

2017-11-15 11:50:09 346

原创 软件发布中的不同版本

软件发布过程中不同的版本号代表不同的含义,以下做简单介绍。

2017-11-06 12:50:45 447

原创 数据库事务和隔离级别

什么是数据库的事务?数据库事务(Database Transaction) ,是指作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完全地不执行。 事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的资源。通过将一组相关操作组合为一个要么全部成功要么全部失败的单元,可以简化错误恢复并使应用程序更加可靠。

2017-10-31 21:39:32 338

原创 MAC 下安装mFAST步骤

安装cmakemFAST的编译使用cmake,所以需要先安装cmake。cmake的安装直接使用的mac下的brew指令 brew search cmake brew install cmake安装boostmFAST依赖于boost库,所以需要先安装boost库。Linux或者Mac默认只安装STL,不安装boost。由于有boost的安装程序,所以直接使用指令进行安装。 cd b

2017-10-13 20:54:12 1789

转载 常用的LLDB命令

常用的lldb命令大全

2017-10-12 18:28:00 3366 1

原创 git远程仓库提交的撤销以及git reset的几种用法

git撤销提交到远程仓库的commitgit如果想撤销已经提交到远程仓库的commit,可以首先在本地仓库使用git reset –hard [commit_id]将本地仓库重置为需要撤销的版本,然后使用git push -f origin进行提交,这样可以强制远程仓库与本地仓库一致。

2017-10-12 16:19:19 5988

转载 解决无法对docker容器进行端口映射的问题

在安装了一个Windows下安装了docker,并尝试在其中运行Nginx、owncloud等服务,但映射完毕之后,在主机的浏览器中,打开localhost:port无法访问对应的服务。用百度尝试了下,始终找不到答案,难道这个问题大家都没遇到过么?于是使用Google,并用英文检索,一会就找到了对应的答案。The reason you’re having this, is be

2017-09-27 22:44:01 12515 7

转载 股票市场的委托方式

上交所:1、最优五档即时成交剩余撤销申报2、最优五档即时成交剩余转限价申报3、对手方最优价格申报 (仅科创板有效)4、本方最优价格申报(仅科创板有效)深交所:1、对手方最优价格申报2、本方最优价格申报3、最优五档即时成交剩余撤销申报4、即时成交剩余撤销申报5、全额成交或撤销申报市价委托申报--上交所(一)最优五档即时成交剩...

2017-09-26 16:18:54 2333

转载 常用的GDB命令

gdb中文命令大全

2017-09-26 08:46:50 334

原创 docker和docker-machine的安装

docker是什么?Mac OS X 下用 Docker Toolbox, 而且命令也由 boot2docker 换成了 docker-machine. 当然由于是非 Linux 系统, 所以Mac OS X 仍然需要借助于 VirtualBox 中的 Linux 虚拟机作为桥梁, Docker Toolbox 创建的虚拟机名是 default (boot2docker 创建的虚拟机名是 boot2

2017-09-22 18:59:59 1770

转载 linux htop命令

Linux的htop命令简介

2017-09-21 10:27:20 257

转载 ipcs ipcrm命令详解

多进程间通信常用的技术手段包括共享内存、消息队列、信号量等等,Linux系统下自带的ipcs命令是一个极好的工具,可以帮助我们查看当前系统下以上三项的使用情况,从而利于定位多进程通信中出现的通信问题。目前也有一些帖子介绍ipcs命令的使用方法,但是介绍较简单不够全面,下面我根据个人的使用经验详细介绍下ipcs命令的使用方法。ipcs -h可以查看该命令的使用帮助:ipc

2017-09-18 22:05:54 739

转载 netpref 性能测试

Netperf是一种网络性能测量工具,主要针对基于TCP或UDP的传输,Netperf根据应用的不同,可以进行不同模式的网络性能测试,即批量数据传输(bulk data transfer)模式和请求/应答(request/reponse)模式。Netperf测试结果所反映的是一个系统能够以多快的速度向另外一个系统发送数据,以及另外一个系统能够以多块的速度接收数据。一 netperf 简介

2017-09-04 21:52:23 2027

转载 C/C++编译和链接过程详解 (重定向表,导出符号表,未解决符号表)

详解link 有 些人写C/C++(以下假定为C++)程序,对unresolved external link或者duplicated external simbol的错误信息不知所措(因为这样的错误信息不能定位到某一行)。或者对语言的一些部分不知道为什么要(或者不要)这样那样设计。了解本文之后, 或许会有一些答案。     首先看看我们是如何写一个程序的。如果你在使用某种IDE(Vi

2017-08-31 11:22:49 689

转载 计时函数

所谓“时”,可以分成时间点和时间段两大类,时间点的概念就好比知道现在是几时几分,而时间段主要用于计量这段程序运行了多久,或者用于定时触发中断。C/C++中有多种方法可以实现计时。1. 用time()得到时间点需要包含头文件或者是,time()的函数原型为:time_t time ( time_t * timer );其中time_t是64位的整型,用于计算自1970

2017-08-15 09:49:52 256

转载 Linux SO_KEEPALIVE保活属性的使用及其意义

Linux SO_KEEPALIVE保活属性的使用及其意义

2017-07-19 16:59:38 1475

Hook(钩子)程序

程序中使用Hook技术截取鼠标事件,并在程序的指定编辑框中显示鼠标当前只想的应用程序的窗口标题,对于学习和了解Hook技术非常有用!

2012-08-17

VC++实现截屏并保存

实现对当前有效窗口的抓屏,并以png格式保存到指定路径,可以实现不断的保存图片,并在后台运行。需要配置一下GDIPLUS,配置方式可以当网上搜一下。

2012-04-23

RBF神经网络动态库 RBF.dll

基于C++的RBF神经网络的源代码,函数参数分别是待分类样本,输入层节点数,中间层节点数,输出层节点数,以及单类故障的样本数和故障类别数。 实现三层RBF训练与诊断,并给出诊断结果。

2011-04-18

空空如也

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

TA关注的人

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