自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

锦衣夜行_

锦衣夜行_的博客

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

原创 rust构建WebAssembly,以及webpack5调用

【代码】rust构建WebAssembly,以及webpack5调用。

2023-09-15 04:12:21 334

原创 php8+thinkphp6报错没有返回信息

php8+thinkphp6报错没有返回信息

2023-06-01 17:40:08 358

原创 golang的线程模型

golang的线程模型是GMP模型:在语言层面是没有开放线程的但是在运行时候M个线程可以创建N个goroutine,一般N远大于M本质属于多线程模型,但是协程的调用由goruntine决定,强调开发者应该使用channel进行协程之间的同步

2023-04-19 23:32:36 158

转载 Vue3学习路径

vue3学习路径学习了解基础知识组件知识高级语法动画和高级语法composition api配套工具学习了解基础知识组件知识高级语法动画和高级语法composition api配套工具LINK: 转载技术胖

2021-07-08 07:36:01 890

原创 RabbitMQ集群架构模式

RabbitMQ集群架构模式主备模式 (Warren)主备模式HaProxy配置镜像模式 (Mirror)远程模式 (Shovel)Shovel集群配置多活模式 (Federation)HaProxy功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程

2021-01-17 20:48:32 367 1

转载 haproxy和keepalived的理解(转载)

haproxy和keepalived的理解(转载)关于此两者,随便google一下都会有大量的文章,因此这里也不用介绍如何来进行安装和配置了。主要从一个整体方案的角度来描述什么要这样做,以及这样做所解决的问题。所有的系统,都是先经历一个单台机器搞所有业务的时代,一个程序+一个mysql数据库,就可以满足开发及第一个版本上线的要求。随着,数据的增加以及业务的增长,这些应用就面临一个访问量的扩大以及扩展的问题。最简单的扩展就是水平扩展,原来由一个mysql增加为2个或多个,形成一个集群,这样最简单的能力就是

2021-01-17 20:03:39 1795 3

原创 RabbitMQ对接Spring Boot

Spring AMQPSpring AMQP 是基于 Spring 框架的AMQP消息解决方案,提供模板化的发送和接收消息的抽象层,提供基于消息驱动的 POJO的消息监听等,很大方便我们使用RabbitMQ程序的相关开发。Spring AMQP包含一些模块,如:spring-amqp, spring-rabbit and spring-erlang等,每个模块分别由独立的一些Jar包组成.Spring AMQP模块主要包含org.springframework.amqp.core这个包中。这个包

2020-06-13 00:37:03 367

原创 RabbitMQ-保证可靠传输消息

简介:谈到消息的可靠性投递,无法避免的,在实际的工作中会经常碰到,比如一些核心业务需要保障消息不丢失 第一种方案(数据库记录状态变更方式): Step 1: 首先把消息信息(业务数据)存储到数据库中,紧接着,我们再把这个消息记录也存储到一张消息记录表里(或者另外一个同源数据库的消息记录表) Step 2:发送消息到MQ Broker节点(采用confirm方...

2020-04-07 01:11:35 136

原创 RabbitMQ-两种机制和消费端优化编写方式

return机制:  Return Listener用于处理一些不可路由的消息。  我们的消息生产者,通过指定一个Exchange和Routingkey,把消息送到某一个队列中,  然后我们的消费者监听队列,进行消息处理操作。  但是在某些情况下,如果我们在发送消息的时候,当前的exchange不存在或者指定的路由key路由不到,  这个时候我们需要监听这种不可达的消息,就要使...

2020-02-02 14:19:12 422

原创 rabbitmqctl命令

虽然还有http 接口、web admin组件可以进行管理,但是rabbitmqctl 基本包含了 rabbitmq 的全部管理功能,更为全面。 所以将其使用方法总结于此。一,命令格式rabbitmqctl [-n] [-q][]-n node #默认node名称是"rabbit@server",如果你的主机名是'server.example.com',那么node名称是'rabb...

2019-11-26 00:44:43 1117

原创 RabbitMQ

MQ简介简单释义消息总线(Message Queue),是一种跨进程、异步的通信机制,用于上下游传递消息。由消息系统来确保消息的可靠传递。背景描述当前市面上mq的产品很多,比如RabbitMQ、Kafka、ActiveMQ、ZeroMQ和阿里巴巴捐献给Apache的RocketMQ。甚至连redis这种NoSQL都支持MQ的功能。适用场景上下游逻辑解耦&&物...

2019-11-07 00:17:18 276

转载 前端js放置位置区别

js可以分为外部的和内部的。内部的js内部的js也叫本页面的JS脚本,内部的js一般放到body内,这样做的目的有很多,不阻塞页面的加载(事实上js会被缓存); 可以直接在js里操作dom,这时候dom是准备好的,即保证js运行时dom是存在的。 '猫头鹰书'建议的方式是放在页面底部,监听window.onload 或 readystate 来触发js外部的js外部的js一...

2019-10-22 00:15:38 432

原创 前端icon图标嵌入代码使用

图标样式LINK:https://icomoon.io编写前端html代码时经常会嵌入一些icon图标样式,这个网站中直接提供了很多样式包,和导入图标生成的html和css代码引入样式选中样式生成:引入代码:...

2019-10-17 23:15:29 2452

转载 JVM运行时数据区域

JVM运行时的内存区域分为:程序计数器,虚拟机栈,本地方法栈,堆,方法区,常量池,直接内存区域这些区域的存储内容作用:添加个思维导图供参考,里面没有列出直接内存和运行时常量池1.程序计数器程序计数器是线程私有的,当前线程所执行的字节码行号指示器。字节码解析器通过改变这个计数器来选取下一条需要执行的字节码指令。执行java方法的时候...

2019-09-14 12:24:38 117

原创 git命令

关联远程仓库username 是远程仓库的用户名,learngit是远程仓库的名称git remote add origin http://github.com/username/learngit.git查看分支白色和黄色为本地分支(黄色为选中状态)红色的分支为远程分支(一般git不会让直接提交到master分支,需要创建一个子分支进行提交后合并分支)git branch -a...

2019-05-25 14:57:09 116

转载 zookeeper

zookeeper简介:ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。Zookeeper的角色领导者(leader),负责进行投票的发起和决议,更新系统状态 学习者(learner)...

2019-05-21 21:33:59 116

原创 MapReduce补充-排序-分组-切片和shuffle机制Split切片机制

MapReduce执行流程中Shuffle机制和Split机制:1.MrAppMaster(任务监控调度机制)向ResourceManager领取任务2.MrAppMaster分配一些NodeManager节点运行map task任务3.map task通过 inputFormat的子类FileInputFormat(默认这里可以自义定比如读取图片)遍历所有文件得到blogsiz...

2019-04-26 22:30:40 427

原创 YARN框架

YARN框架简介:YARN (Yet Another Resource Negotiator,另一种资源协调者)是一种新的 Hadoop 资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。YARN概念:YARN的基本思想是将JobTracker(Job跟踪器)的两个主要功能(资源管理和作业调度...

2019-04-06 18:07:05 761

转载 MapReduce

MapReduce简介MapReduce是一种分布式计算模型,是Google提出的,主要用于搜索领域,解决海量数据的计算问题。 MR有两个阶段组成:Map和Reduce,用户只需实现map()和reduce()两个函数,即可实现分布式计算。MapReduce分为Mapper和Reducer两个阶段 (1)Mapper负责“分”,即把复杂的任务分解为若干个“简单的任务”来处理...

2019-03-22 23:47:37 184

原创 HDFS代码分析-RPC框架

什么是RPC框架:RPC(Remote Procedure Call)—远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包括网络分布式多程序在内的应用程序更加容易。RPC采用客户机/服务器模式。请求程序就...

2019-03-11 02:10:57 140

转载 mysql字段

MYSQL字段:Innodb_buffer_pool_pages_dataInnodb buffer pool缓存池中包含数据的页的数目,包括脏页。单位是page。Innodb_buffer_pool_pages_dirtyinnodb buffer pool缓存池中脏页的数目。单位是page。Innodb_buffer_pool_pages_flushedinnodb ...

2019-03-07 16:13:00 196

原创 微信自定义菜单以及消息and事件通知

1.微信如果开启服务那么消息和事件通知(包括菜单)都会转到微信公众号后台配置的服务器URL.微信请求的消息结构参考:<xml> <ToUserName><![CDATA[toUser]]></ToUserName>//开发者微信号 <FromUserName><![CDATA[fromUser]]></...

2019-03-04 09:21:58 668

原创 测试策略

自动化测试金字塔 如图: 1.单元测试,这些测试由程序员使用与系统开发相同语言来编写,供程序员自己使用.编写这些测试的目的是在最低层次上来定义系统.开发人员这样定义待写代码规范:先写测试,再编写产品代码.这些单元测试将作为持续集成的一部分运行,用以确保程序员的代码意图没有遭到破坏. 单元测试应该做到接近100%的覆盖率,通常来说这个数字应该保持在90%以上.2.组件测试,通常它们是...

2019-02-03 16:26:45 437

原创 docker容器

docker概念:docker设想是交付运行环境如同海运,OS如同一个货轮,每一个在OS基础上的软件都如同一个集装箱,用户可以通过标准化手段自由组装运行环境,同时集装箱的内容可以由用户自定义,也可以由专业人员制造。这样,交付一个软件,就是一系列标准化组件的集合的交付,如同乐高积木,用户只需要选择合适的积木组合,并且在最顶端署上自己的名字(最后一个标准化组件是用户的app)。docker容器...

2019-02-01 19:55:50 158

原创 hadoop-hdfs

HDFS:HDFS即Hadoop的分布式文件系统,以流式数据访问模式来存储超大文件,运行于商用硬件集群上,是管理网络中跨多台计算机存储的文件系统。HDFS不适合用在:要求低时间延迟数据访问的应用,存储大量的小文件,多用户写入,任意修改文件。HDFS是Hadoop的应用用到的一个最主要的分布式存储系统一个HDFS集群主要由一个NameNode会和很多个Datanode的组成:Nameno...

2018-12-25 01:04:11 225

原创 生成词法分析器中使用的算法

生成词法分析器算法如下:RE:正则表达式NFA:非确定有限状态自动机DFA:确定有限状态自动机 Thompson算法:从正则表达式代码到NFA(非确定有限状态有限机)过程使用的Thompson算法基于对RE的结构作归纳对基本的RE直接构造 对复合的RE递归构造例如: 如下几种正则表达式规则进入状态转移过程时,会读取字符串中的起始字符,进行校验ε (空...

2018-12-16 19:15:01 1458

原创 判断字符串是否为回文串

 判断字符串是否为回文串题目:给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。说明:本题中,我们将空字符串定义为有效的回文串。示例 1:输入: "A man, a plan, a canal: Panama"输出: true示例 2:输入: "race a car"输出: false 思路:字符串转为小写字符串从字符串...

2018-12-14 00:26:05 4374

转载 Ubuntu安装deepin-wine-QQ

最近一段时间使用了一段时间的ArchLinux和KDE桌面但是发现还是Ubuntu比较好用,所以有切回Ubuntu系统,但是在日常使用中安装wine,经常比较麻烦,要么就是安装好了遇到各种奇怪的问题,在arch上也接连遇到几个,以及KDE桌面不兼容问题,特意写篇博客记录一下安装deepin-wine-QQ.(这个现在完美支持Ubuntu,arch的话KDE桌面还是不兼容,arch+KDE建议直接安...

2018-12-10 09:43:03 1990

原创 获取通过js代码获取ip

 代码如下:<script src="http://pv.sohu.com/cityjson?ie=utf-8"></script><script type="text/javascript"> function btn(){ alert(returnCitySN["cip"]); }</script&

2018-12-06 11:36:30 417

原创 MySQL存储过程

什么是存储过程:存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象。存储过程特点:1.重复使用。存储过程可以重复使用,从而可以减少数据库开发人员的工作量。2.减少网络流量。存...

2018-12-04 00:43:51 121

原创 有限状态自动机

介绍:有限状态自动机(FSM "finite state machine" 或者FSA "finite state automaton" )是为研究有限内存的计算过程和某些语言类而抽象出的一种计算模型。有限状态自动机拥有有限数量的状态,每个状态可以迁移到零个或多个状态,输入字串决定执行哪个状态的迁移(这个过程也就是 转移函数 )。有限状态自动机可以表示为一个有向图。有限状态自动机是自动机理论的...

2018-11-14 00:10:38 6570

原创 firefox缺少配置文件无法加载

firefox缺少配置文件无法加载问题:配置文件的问题 你是否删除了c盘的appdata文件夹? 这样就会出问题解决方法就是新建配置文件 在开始 运行里面输入firefox.exe -profilemanager 再新建一个...

2018-10-24 19:52:37 5686 6

原创 词法分词器-标识符转移图

标识符转移图(变量)标识符的转移图 记号流:编译器内部定义的数据结构,编码所识别出的词法单元Token 记号  nextToken() 读取标识符或者关键字 getChar()读取一个字符 输入原代码到词法分析器返回记号流:步骤从0开始对应表中操作,假设记号表中已经记录了id这个标识符一: 假设读取第一个 字符为i0.第一步 I/O 读取一个字符...

2018-10-23 21:57:48 853

转载 php对接微信公众号平台

执行流程:url2,用户授权获取code,这个code会跟在redirect_uri=url1后面,有用户发送到业务系统,业务系统拿到code后,可以获取用户openId.https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_typ...

2018-10-13 08:05:00 1063

原创 debug简单使用以及PhpStorm 如何开启xdebug

以前debug都是直接点下面的选项,最近发现这样太loser了,还是记录下快捷键,xdebug在mac环境下还是没有装好所以最近将PHP工作环境切换回windows下面了(主要是快捷键不习惯,当然windows下面软件较为丰富)一.debug快捷键:1.按F8 在 Debug 模式下,进入下一步,如果当前行断点是一个方法,则不进入当前方法体内,跳到下一条执行语句。2.按F7在 Debu...

2018-10-05 18:16:43 1769

原创 MySQL存储引擎

最近工作使用PHP操作MYSQL时遇到一个BUG 事务控制居然失效了,出现异常居然没有回滚数据.后面经过别人提示是MySQL存储引擎的原因:存储引擎:mysql的存储引擎包括:MyISAM、InnoDB、BDB、MEMORY、MERGE、EXAMPLE、NDBCluster、ARCHIVE、CSV、BLACKHOLE、FEDERATED等,其中InnoDB和BDB提供事务安全表,其...

2018-09-30 09:20:26 119

原创 简单的编译流程

简易编译器流程图:一个典型的编译器,可以包含为一个前端,一个后端。前端接收源程序产生一个中间表示,后端接收中间表示继续生成一个目标程序。所以,前端处理的是跟源语言有关的属性,后端处理跟目标机器有关的属性。复杂的编译器:词法分析器:1.词法分析器读入源代码,然后对字符流(源代码)做切分成记号流。举个例子:    这是一个程序员看到的字符流(源代码)2.词法分析器将字符...

2018-09-09 21:47:27 5587

原创 json解析数据

今天工作中遇到了 js 解析 后端php传递过来的json字符串错误使用alert查看数据 结果返回的是Undefined类型(未定义或者属性为null),去网上看了下关于js解析的资料发现现在有好几种解析的方式:第一种方式:使用eval函数。 var dataObj = eval(“(“+json+”)”);加上圆括号的目的是迫使eval函数在处理JavaScript代码的时候强制...

2018-09-06 22:23:48 237

原创 PHP环境搭建和Apache HTTP服务器配置

所需软件:需要准备Apache HTTP 服务器:http://httpd.apache.org/download.cgiPHP环境下载:http://www.php.net/downloads.phpApache HTTP服务器安装:由于最新的 Apache 已经不提供 Windows 的安装版本了,所以我们这里使用的是解压版。下载地址:https://www.apache...

2018-08-23 19:08:50 7248 2

原创 网络编程TCP/IP和UDP以及HTTP协议

OSI的七层模型和TCP/IP的四层模型:TCP/IP协议是从OSI的七层模型中简化出来的:四层模型的详图: 什么是HTTP协议:HTTP称为 超文本传输协议 是一种基于应用层的通信协议,它允许将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器,所有的WWW文件都必须遵守这个标准. 目前我们使用的是HTTP/1.1 版本.通常,由HTTP客户端发...

2018-08-22 11:46:49 5442 1

空空如也

空空如也

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

TA关注的人

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