- 博客(22)
- 资源 (11)
- 收藏
- 关注
原创 Tendermint学习
公司新作的产品MDB是基于Tendermint共识引擎所做的应用数据库产品,因此最近这周花了些事件研究了一下tendermint,在学习MDB的过程中,边学边总结了一些Tendermint。Tendermint是一个脱胎于PBFT的consensus engine(共识引擎),并在此之上构建了Application Blockchain Interface(ABCI),让blockchain的...
2019-04-18 09:39:10 290
原创 typename的两种用法
普通模板声明中typename和class的用法一样,如下:template<typename T>class test_typename{};template<class T>class testclass{};typename的第二种作用是用来指定相应名称为类型,如下代码则会出现编译错误;template<typename visito...
2018-11-23 10:47:28 5233
转载 Elastic-Job学习
1、环境要求a.Java:请使用JDK1.7及其以上版本;b.Zookeeper:请使用Zookeeper 3.4.6及其以上版本;c.Maven:请使用Maven 3.0.4及其以上版本;2、作业开发Elastic-Job-Lite和Elastic-Job-Cloud提供统一作业接口,开发者仅需对业务作业进行一次开发,之后可根据不同的配置以及部署至不同的Lite或Cloud环...
2018-09-21 14:26:49 306
转载 Elastic-job使用及原理(转发)
转发地址为:https://www.cnblogs.com/acyouai/p/6702044.html,学习并且自己编码,内容如下:一、原理elastic-job有lite版和cloud版,最大的区别是有无调度中心,笔者采用的是lite版本,无中心化。tips: 第一台服务器上线触发主服务器选举。主服务器一旦下线,则重新触发选举,选举过程中阻塞,只有主服务器选举完成,才会执行其...
2018-09-20 10:19:37 224
原创 从基础开始整理一些技术型的内容
很久没有写过博客了,有时候是自己忙,有时候是忘记,但是这个良好的方式没有坚持确实是一件可惜的事情,好几年了,发生了很多事情,有了儿子,来到外地上在职研究生,虽然已经一年了,马上第二年毕业季开始,也从传统的通信领域转到现在的区块链领域,忙忙碌碌从来没有想过如何整理一下自己的思路,这几天从俄罗斯归来之后,决定写一写博客,一方面整理一下自己这几年的工作,另一方面也梳理和完善一下从事过的知识体系,分享同时...
2018-07-20 11:25:23 115
转载 Hadoop简介:Hadoop的应用场合及其核心设计
本节向大家描述一下Hadoop简介,主要包括Hadoop应用场合和Hadoop框架中最核心的设计等内容,相信通过本节的学习大家对Hadoop有全面的认识,让我们一起来了解一下Hadoop吧。Hadoop简介Hadoop是一个分布式系统基础架构,由Apache基金会开发。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力高速运算和存储。简单地说来,
2015-06-01 17:28:06 1831
转载 性能优化的三个层次
编者按:性能优化,简而言之,就是在不影响系统运行正确性的前提下,使之运行地更快,完成特定功能所需的时间更短。本文是性能优化系列文章的第一篇,主要讲解性能优化的三个方面。性能优化有三个层次:◇系统层次◇算法层次◇代码层次系统层次关注系统的控制流程和数据流程,优化主要考虑如何减少消息传递的个数;如何使系统的负载更加均衡;如何充分利用硬件的性能和设施;如何减少系统
2015-05-27 12:53:56 985 1
转载 如何验证软件是否满足最初设想
需求验证主要是分析需求规格说明的正确性和可行性,检验需求是否反映客户的意愿,从而确定能否转入概要设计阶段;而概要设计验证主要是检查《概要设计规格说明》是否满足《软件需求规格说明》的各项要求,设计是否合理,是否可以据此产生《详细设计规格说明》,并确定能否转入详细设计阶段。 软件需求验证 如果在构造设计开始之前,通过验证基于需求的测试计划和原型测试来验证需求的正确性及其质量,就能大大减
2015-03-12 12:24:13 3898
转载 TCP滑动窗口和socket缓冲区之间的关系(记录)
一、TCP的滑动窗口大小实际上就是socket的接收缓冲区大小的字节数二、对于server端的socket一定要在listen之间设置缓冲区大小,因为,accept时新产生的socket会继承监听socket的缓冲区大小。对于client端的socket一定要在connet之前设置缓冲区大小,因为connet时需要进行三次握手过程,会通知对方自己的窗口大小。在connet之后再设置缓冲区,
2014-08-18 16:31:31 657
转载 基于VC6.0的DLL开发
最近在开发一个C/S模式的通讯软件,通讯底层采用DLL方式进行开发,上层应用调用DLL进行通讯操作,因此在此学习了一下DLL的开发,一下是引用别人的文章,文章写的比较易懂,大家一起学习吧。一、前言 自从微软推出16位的Windows操作系统起,此后每种版本的Windows操作系统都非常依赖于动态链接库(DLL)中的函数和数据,实际上Windows操作系统中几乎所有的内容都由DLL以一种或
2013-11-26 15:39:42 3665
原创 基类函数的this指针和派生类函数的this指针
在研究live555流程代码时,因为遇到对于基类RTSPServer在函数createNewClientConnection中,创建RTSPClientConnection时,采用的是new RTSPClientConnection(*this, clientSocket, clientAddr)方法创建的RTSPClientConnection,而在live media server中Dynam
2013-09-26 10:54:17 2543
转载 epoll简单介绍
Epoll是Linux内核为处理大批量句柄而作了改进的poll。要使用epoll只需要这三个系统调用:epoll_create(2), epoll_ctl(2), epoll_wait(2)。它是在2.5.44内核中被引进的(epoll(4) is a new API introduced in Linux kernel 2.5.44),在2.6内核中得到广泛应用,例如LigHttpd。epo
2013-09-12 14:05:33 585
原创 live555--testRTSPClient学习心得
最近因为公司项目的缘故,开始学习live555项目,关注client端和server端的逻辑分析,在网上看了很多资料,都是大致的讲一些,对于其内部的一些逻辑还是没有详细解释,现在把自己在学习过程中的一些心得与大家分享,如有问题,可以回帖。下载live555开源包之后,解压,testRTSPClient所在目录为testRTSPClient.cpp目录中,我采用的是sourceInsight来阅
2013-09-03 17:27:00 14641 6
原创 Windos下bison的安装
bison是专门将GNU的工具移植到windows下的工程,下载目录为:http://gnuwin32.sourceforge.net/packages/bison.htm;但我个人在公司却不能打开,所以将其作为资源上传至CSDN,地址为:http://download.csdn.net/detail/cheng7068/6011479;将其下载之后,按照默认路径安装,安装完成后,设置环境变量,我
2013-08-26 10:08:41 1110
原创 设计模式之Builder模式
Builder模式是将复杂对象的构建和他的表示分离,使得同样的创建过程可以创建不通的表示;其结构图为:示例代码为:class Product1{};class Product2{};class Builder{public: virtual void BuilderPartA(); virtual void BuilderPartB(); virtual voi
2013-08-15 15:06:54 580
原创 ACE在CentOS下的编译
这两天在调试ACE,首先就得在linux平台下编译ACE,看了网上的一些文档,基本都不能用,在此把自己的一些经验与大家分享。1. Linux平台版本Linux内核版本为:2.6.32;Linux版本为CentOs6.3;ACE版本为6.2.0;下载地址为:http://download.dre.vanderbilt.edu/,下载ACE.tar.gz即可。2
2013-08-08 18:17:27 2395
原创 设计模式学习之Decorator模式
在OO设计和开发过程中,可能会遇到以下情况:需要为一个已经定义好的类添加新的职责,通常情况下定义一个新的类继承定义好的类,这样会带来一个问题:通过继承的方式解决这样的问题带来了系统的复杂性和继承深度变得很深;而Decarator提供了一种给类增加职责的方法,不是通过继承实现,而是通过组合实现;结构图如下:在结构图中,ConcreteComponent和Decorator需要同样的接口,因此
2013-01-19 12:46:35 414
原创 设计模式学习之Adapter模式
Adapter模式解决的问题在生活中经常遇到:比如我们有一个Team为外界提供S类服务,但是我们的Team里面没有能够完成此项任务的member,然后我们得知有A可以完成这样服务(把这项任务重新取了个名字叫S,并且不对外公布他的实现),为了保证我们对外服务类别的一致性,可以通过两种方案实现:1)把A君直接招安到我们Team为我们工作,提供S服务的时候让A君办就是了;2)A君可能在别的地方工
2013-01-19 11:49:00 434
原创 设计模式之Bridge模式学习
问题:面向对象的需要解决的问题为:松耦合和高内聚;追求的目标是尽可能的提高系统模块内部的内聚,尽可能降低模块间的耦合;但这也是在面向对象设计过程中最为难把握的部分,大家肯定在OO的过程中遇到这样的问题:1)客户给出了需求,于是使用一个类来实现(A);2)客户需求变化,有两个算法实现功能,于是改变设计,我们通过一个抽象的基类,再定义两个具体的类来实现不同的算法(A1和A2);3)客户
2013-01-14 13:45:56 462
原创 UML类图和类的关系学习
因为在学习设计模式,模式中都会用类图来表示每个模式的结构图,因此在学习的同时也将类图的知识罗列一下,以便更好的促进设计模式的学习;类图是面向对象系统建模中最重要和最常用的图,是定义其他图的基础,主要是用来显示系统中的类、接口以及他们之间的静态结构和关系的一种静态模型;类图包括:类名,属性和方法;属性和方法中,+表示公共可见性,-表示私有可见性,#表示受保护的可见性,省略这些符号表示具有包级
2013-01-10 17:56:10 563
原创 设计模式学习之Factory模式
最近开始做C++方面的项目,虽然对于普通的编码和C++的开发没有什么问题,但是感觉在设计方面还是比较欠缺,所以找了本设计模式的书开始学习,随手记下来,大家也可以学习下。引用:设计模式之于面向对象系统的设计和开发的作用就如同数据结构之于面向过程开发的作用一般,面向对象系统的分析和设计实际上追求的就两点:一是高内聚,二是低耦合。这也是软件设计所追求的,因此无论是OO中的封装、多态、继承,还是设计模
2013-01-09 13:59:39 488
原创 Socket开跨平台开发
Windows平台下的Socket需要使用WSAStartup()初始化WinSock库,这样才能进行后续操作,而Linux下的Socket不需要初始化;下面引用别人文章,介绍一下Socket编程的一些步骤,供大家交流。Socket接口设计者最先是将接口放在Unix操作系统里面的。如果了解Unix系统的输入和输出的话,就很容易了解Socket了。网络的 Socket数据传输是一种特殊的I/O,
2013-01-08 10:29:03 1690
车联网白皮书(新热点、新趋势、新业态)
2024-02-29
陕西省煤矿工业视频安装使用规范
2023-11-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人