- 博客(29)
- 资源 (3)
- 收藏
- 关注
转载 RPC架构简单理解
感谢博主的分享,转自:RPC架构简单理解RPC(Remote Promote Call) 一种进程间通信方式。允许像调用本地服务一样调用远程服务。RPC框架的主要目标就是让远程服务调用更简单、透明。RPC框架负责屏蔽底层的传输方式(TCP或者UDP)、序列化方式(XML/JSON/二进制)和通信细节。开发人员在使用的时候只需要了解谁在什么位置提供了什么样的远程服务接口即可,并不需要关...
2020-01-13 21:54:31
355
转载 RPC简介及框架选择
感谢博主的分享,转自:RPC简介及框架选择简单介绍RPC协议及常见框架,对比传统restful api和RPC方式的优缺点。常见RPC框架,gRPC及序列化方式Protobuf等HTTP协议http协议是基于tcp协议的,tcp协议是流式协议,包头部分可以通过多出的\r\n来分界,包体部分如何分界呢?这是协议本身要解决的问题。目前一般有两种方式,第一种方式就是在包头中有个cont...
2020-01-13 21:51:18
277
转载 Linux查看CPU和内存使用情况
感谢博主的分享,转自:Linux查看CPU和内存使用情况top命令 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。 运行 top 命令后,CPU 使用状态会以全屏的方式显示,并且会处在对话的模式 -- 用基于 top 的命令,可以控制显示方式等等。退出 top 的命令为 q (在 top 运行中敲 q 键一次...
2019-11-18 21:12:07
345
转载 C++ 有符号数与无符号数混合运算
感谢博主的分享,转自:C++ 有符号数与无符号数混合运算当算术表达式中既有无符号数又有带符号数时,那么在进行运算之前,这个带符号数值会先被转换成无符号数!然后再进行运算。如,unsigned i = 10;int j = -100;cout << i + j << endl; // 结果输出:4294967206解释:-100的二进制补码为:11...
2019-07-11 10:31:45
2732
1
转载 MQ消息中间件,进行系统解耦
感谢博主的分享,转自:如何不让两个攻城狮每天黏在一起?把他俩负责的系统解耦吧!写在前面本文咱们来聊聊如何通过 MQ 消息中间件的使用,重构系统之间的耦合,让系统具备高度的可扩展性。首先看一张系统之间的耦合图,大家先不用关注图中数据查询平台和实时计算平台的具体细节。只需知道这里的数据查询平台和实时计算平台两个系统,通过一套共享存储(数据库集群+缓存集群)进行了耦合。...
2019-06-05 17:26:54
1865
转载 系统架构中为什么要引入消息中间件?
感谢博主的分享,转自:系统架构中为什么要引入消息中间件?在本文的开头,我们将讨论消息中间件的高频访问问题,它也将涵盖MQ中间件的一些常见技术问题。如果面试官看了你的简历中使用MQ中间件的经历,可能会有以下问题:在你的公司的生产环境中使用了什么消息中间件?为什么要将消息中间件引入系统?引入消息中间件的优点和缺点是什么?好,让我们逐一分析。一、你们公司生产环境用的是什么消息中间件?首先...
2019-06-05 17:25:42
438
原创 MD5加密概述,原理及实现
MD5概述:MD5消息摘要算法,属Hash算法一类。MD5算法对输入任意长度的消息进行运行,产生一个128位的消息摘要(32位的数字字母混合码)。MD5主要特点:不可逆,相同数据的MD5值肯定一样,不同数据的MD5值不一样(一个MD5理论上的确是可能对应无数多个原文的,因为MD5是有限多个的而原文可以是无数多个。比如主流使用的MD5将任意长度的“字节串映射为一个128bit的大整数...
2019-05-21 20:53:01
110384
14
转载 C/C++ &,|,与&&,|| 的区别
&表示按位与。&表示按位与操作,我们通常使用0x0f来与一个整数进行&运算,来获取该整数的最低4个bit位,例如,0x31 & 0x0f的结果为0x01。二进制与运算规则:1&1=1 1&0=0 0&0=015&127为什么等于15啊?15二进制: (0000 1111)127二进制: (1111 111...
2019-05-20 11:44:34
318
转载 知识图谱基础(三)——schema的构建
感谢博主的分享,转自:简书-schema的构建在前面一篇文章《知识图谱基础(二)-知识表达系统》中介绍了知识图谱的基础知识表达系统,什么是entity,什么是relation,什么是domain,什么是type等等。本篇文章主要从应用角度来聊一聊如何构建schema以及shcema构建中需要考虑的问题。以下所讲的schema构建主要是基于common sense进行构建的,弱关系图谱构建...
2019-05-13 16:06:43
2683
转载 知识图谱基础(二)——知识图谱的知识表达系统
感谢博主的分享,转自:简书-知识图谱的知识表达系统前面一篇文章主要简单介绍了一下什么是知识图谱,什么是知识库,以及知识图谱的基本应用。知识表达系统可以说是整个知识图谱应用化的灵魂,本文主要从产品角度去讲解知识图谱的知识表达系统。三元组的定义《知识图谱基础(一)-什么是知识图谱》中讲到了以freebase为代表的curated KBs的本质上是三元组,下面会来讲解三元组的基本组成部...
2019-05-13 15:47:40
606
转载 知识图谱基础(一)——什么是知识图谱
感谢博主的分享,转自:简书-什么是知识图谱知识图谱的定义知识图谱在国内属于一个比较新兴的概念,国内目前paper都比较少,应用方主要集中在BAT这类手握海量数据的企业,这个概念是google在2012年提出的,当时主要是为了将传统的keyword-base搜索模型向基于语义的搜索升级。知识图谱可以用来更好的查询复杂的关联信息,从语义层面理解用户意图,改进搜索质量。个人认为,知识图...
2019-05-13 15:39:18
583
转载 #、##、__VA_ARGS__和##__VA_ARGS__的作用
感谢博主的分享,转自:#、##、__VA_ARGS__和##__VA_ARGS__的作用,##__VA_ARGS__ 总结1>一、#用来把参数转换成字符串例子一:#define P(A) printf("%s:%d\n",#A,A);int main(int argc, char **argv){int a = 1, b = 2;...
2019-05-09 11:36:40
563
转载 什么是堆和栈,它们在哪儿?
感谢博主的分享,转自:什么是堆和栈,它们在哪儿?问题描述编程语言书籍中经常解释值类型被创建在栈上,引用类型被创建在堆上,但是并没有本质上解释这堆和栈是什么。我仅有高级语言编程经验,没有看过对此更清晰的解释。我的意思是我理解什么是栈,但是它们到底是什么,在哪儿呢(站在实际的计算机物理内存的角度上看)?在通常情况下由操作系统(OS)和语言的运行时(runtime)控制吗? 它们的作用范围...
2019-04-13 16:24:41
233
转载 C++中new/delete和new[]/delete[]使用
感谢博主的分享,转自:浅谈 C++ 中的 new/delete 和 new[]/delete[]在 C++ 中,你也许经常使用 new 和 delete 来动态申请和释放内存,但你可曾想过以下问题呢?new 和 delete 是函数吗? new [] 和 delete [] 又是什么?什么时候用它们? 你知道 operator new 和 operator delete 吗? ...
2019-04-10 14:22:34
168
转载 智能指针之 auto_ptr (pc版与gcc版)
感谢博主的分享,转自:智能指针之 auto_ptr (pc版与gcc版)内存管理一直是令程序员头疼的工作,C++继承了C那高效而又灵活的指针,使用起来稍微的不小心就会导致内存泄漏(memory leak),野指针(wild pointer),访问越界(access denied)等问题。曾几何时,C++程序员无比羡慕JAVE,C#等语言的垃圾回收机制。但C++后来有了更高效的内存管理方法...
2019-04-03 15:58:29
289
转载 C++智能指针auto_ptr的原理及使用
感谢博主的分享,转自:C++智能指针auto_ptr的原理及使用附:智能指针之 auto_ptr (pc版与gcc版)std::auto_ptrauto_ptr是C++标准库中(<utility>)为了解决资源泄漏的问题提供的一个智能指针类模板(注意:这只是一种简单的智能指针)auto_ptr的实现原理其实就是RAII(Resource Application I...
2019-04-03 15:56:54
229
转载 C++ explicit关键字详解
感谢博主的分享,转自:C++ explicit关键字详解首先, C++中的explicit关键字只能用于修饰只有一个参数的类构造函数, 它的作用是表明该构造函数是显示的, 而非隐式的, 跟它相对应的另一个关键字是implicit, 意思是隐藏的,类构造函数默认情况下即声明为implicit(隐式).那么显示声明的构造函数和隐式声明的有什么区别呢? 我们来看下面的例子:cl...
2019-04-03 10:22:01
174
原创 64匹马,8个赛道,找出前4名最少比赛多少场?
1.最初的想法是最少9次第一步:先选8匹马为第一组比一场(第1次),然后将剩余的56匹马分为8组,每组7匹第二步:将第一组比赛的第4名放入第二组,凑齐8匹马进行比赛(第2次),如果第一组的第4名在第二组跑第一,继续放入第三组进行比赛第三步:假设第一组的第4名,在其余的8组都跑第一,则总共9次可比出前4名但感觉这种情况太理想化,应该不是题目意思的最少,所以考虑最差情况的最少2...
2019-03-30 14:43:06
4457
4
转载 干掉状态:从session到token
总是用token,直到看了这篇文章,才知道token的由来,感谢博主分享1美好的旧时光我经常怀念三十年前那美好的旧时光, 工作很轻松, 生活很悠闲。上班的时候偶尔有些HTTP的请求发到我这里, 我简单的看一下, 取出相对应的html文档,图片,发回去就可以了, 然后就可以继续喝茶聊天。我的创造者们对我很好, 他们制定的一个简单HTTP协议, 就是请求加响应, 尤其是我不用记住...
2019-03-28 17:10:40
134
转载 正则表达式-常用的正则表达式
一、校验数字的表达式数字:^[0-9]*$ n位的数字:^\d{n}$ 至少n位的数字:^\d{n,}$ m-n位的数字:^\d{m,n}$ 零和非零开头的数字:^(0|[1-9][0-9]*)$ 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(\.[0-9]{1,2})?$ 带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})$ 正数、负数、和小...
2019-03-28 11:57:15
139
转载 linux—shell脚本学习
感谢博主的分享,转自:十分钟学会写shell脚本1.在linux下会写shell脚本是非常重要的,下面我参照例子给大家展示几个脚本,顺带这学习shell 的语法:什么时候helloworld是必不可少的,第一个脚本肯定与helloworld是离不开的:#!/bin/sha="hello world!"num=2echo "a is : $a num is : ${num}nd"...
2019-03-24 18:00:02
148
转载 Linux-特殊符号用法,及输出当前时间
感谢博主的分享,转自:linux中特殊符号用法详解,末尾增加Linux下输出当前时间命令#井号 (comments)#管理员$普通用户脚本中#!/bin/bash #!/bin/sh井号也常出现在一行的开头,或者位于完整指令之后,这类情况表示符号后面的是注解文字,不会被执行。# This line is comments.echo "a = $a" # a = 0...
2019-03-24 16:34:33
564
转载 Linux-改掉终端显示的当前目录路径
键入PS1='自定义内容'例如:PS1='[Test]\$'退出重新登录进入系统后,样式恢复成系统默认的样式方法来源:Linux 下 去掉终端显示的当前目录的绝对路径Linux中,去掉终端显示的当前目录的绝对路径去~/.bashrc中,找到PS1变量的定义,如果没有,手动加上:可以将显示输出到标题栏上:#export PS1="\e]2;\u@\H\w\a\e...
2019-03-24 14:59:15
1008
转载 Bat命令学习-批处理中的&、&&、|、||、>、>>符号
感谢博主的分享,转自:批处理中的&、&&、|、||、>、>>符号&顺序执行多条命令,而不管命令是否执行成功例:copy nul 5.txt & echo 666 >>5.txt & more 5.txt创建5.txt文档,向5.txt文档中写入内容“666”,输出5.txt的内容。&&...
2019-03-21 15:58:02
21778
转载 Bat命令学习-FOR参数F的选项delims与tokens
感谢博主的分享,转自:FOR参数F的选项delims与tokens总结在For命令语句的参数F中,最难理解的就是Delims和Tokens两个选项,本文简单的做一个比较和总结。“For /f”常用来解析文本,读取字符串。分工上,delims负责切分字符串,而tokens负责提取字符串。如果把字符串当作蛋糕,Delims像刀子,用来切蛋糕,tokens像叉子,用来取切好的蛋糕。下面我们...
2019-03-21 15:49:16
771
转载 Bat命令学习
感谢博主的分享,转自:Bat命令学习,并添加少许笔记一、基础语法: 1.批处理文件是一个“.bat”结尾的文本文件,这个文件的每一行都是一条DOS命令。可以使用任何文本文件编辑工具创建和修改。 2.批处理是一种简单的程序,可以用 if 和 goto 来控制流程,也可以使用 for 循环。 3.批处理的编程能力远不如C语言等编程语言,也十分不规范。 4.每个编写...
2019-02-19 15:44:31
370
转载 C++ Socket编程 实现服务端与客户端的通讯(Windows)
建议浏览:C++ Socket编程步骤 以及 c++中Socket编程代码样例:C++ socket编程 实现服务端与客户端的通讯简单补充:进行WINSOCK编程时,需要引入两个库文件:WINSOCK.H(这个是WINSOCK API的头文件,WIN2K以上支持WINSOCK2,所以可以用WINSOCK2.H)Ws2_32.lib(WINSOCK API连接库文件)使用方式如下:
2018-01-19 15:54:52
1486
原创 简单的创建和使用静态库,动态库及动态库显示调用
主要源于Visual Studio 2008文档,末尾补充动态库的显示调用 创建新的静态库项目1. 从“文件”菜单中,选择“新建”,然后选择“项目…”。2. 在“项目类型”窗格中,选择“Visual C++”下的“Win32”。3. 在“模板”窗格中,选择“Win32控制台应用程序”。4. 为项
2018-01-17 14:16:18
333
转载 动态链接库dll的两种加载方式 (笔记)
1.链接:动态链接库dll的两种加载方式 ,来自:qianqing135792.动态链接库的使用方法,动态链接库的动态调用(也叫显式调用)可以运用了,但是静态调用(也叫隐式调用)这种很少见。 (一)先回顾一下,动态链接库和静态链接库 静态链接库:lib中的函数不仅被连接,全部实现都被直接包含在最终生成的EXE文件中,只是实现是不可见的。 动态链接库:dll不必被包含在最终的...
2018-01-17 11:28:58
14293
STL源码剖析简体中文完整版-(清晰扫描带目录).rar
2019-06-22
MD5加密实现(源码)
2019-05-21
PClint.zip
2019-05-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人