RocketMQ原理学习--RocketMQ源码运行

版权声明:欢迎转载 https://blog.csdn.net/qq924862077/article/details/84502083 最近打算对RocketMQ相关的知识和源码进行学习一下,首先能把源码导入及运行能比较方便我们通过跟踪源码进行相关知识学习。 一、工程导入 git地址:https://github.com/apache/rocketmq.git 直接以maven工程的形式导入到IDEA中即可 二、运行配置 运行RocketMQ的namesrv和broker需要进行一些运行环境
分类: 其他 发布时间: 12-02 23:24 阅读次数: 0

RocketMQ原理学习--消息类型

版权声明:欢迎转载 https://blog.csdn.net/qq924862077/article/details/84574455 一、集群消息与广播消息 集群消费:当使用集群消费模式时,MQ 认为任意一条消息只需要被集群内的任意一个消费者处理即可。 广播消费:当使用广播消费模式时,MQ 会将每条消息推送给集群内所有注册过的客户端,保证消息至少被每台机器消费一次。 集群消费模式: 适用场景&注意事项 消费端集群化部署,每条消息只需要被处理一次。 由于消费进度在服务端维护,可靠性更高。 集
分类: 其他 发布时间: 12-02 23:24 阅读次数: 0

RocketMQ原理学习--RocketMQ整体架构窥探

版权声明:欢迎转载 https://blog.csdn.net/qq924862077/article/details/84592864 RocketMQ总体架构图: RocketMQ简单架构 角色简介: 1、Name Server:简单可以理解为注册中心,Broker相关信息会注册到Name Server集群中,维护Broker及Broker中相关Topic信息,这样生产者和消费者就可以从Name Server中定时(30秒)获取相关Broker信息。 2、Broker:集群最核心模块,主要
分类: 其他 发布时间: 12-02 23:23 阅读次数: 0

RocketMQ原理学习-- Name Server

版权声明:欢迎转载 https://blog.csdn.net/qq924862077/article/details/84672586 Name Server作为RocketMQ的一个组件,其作用就是一个注册中心,用于管理Broker相关的一些信息,生产者和消费者可以从Name Server中获取Broker中相关的Topic信息等,Name Server可以单台部署也可以多台部署,相互之间不存在联系。 Name Server主要有以下两个功能: 维护一份Broker信息(集群名称、Brok
分类: 其他 发布时间: 12-02 23:23 阅读次数: 0

http①网络基础

1.局域网(lan:local area network): 是在某一区域内由多台计算机互联成的计算机组;一般是方圆几千米以内;局域网可以实现文件管理、应用软件共享、打印机共享、工作组内的日程安排、电子邮件和传真通信服务等功能;局域网是封闭的,可以由办公室的两台电脑组成,也可以由公司的上千台电脑组成; 严格来说局域网是由计算机、外部设备和数据库等互相联结起来组成的计算机通信网;他可以通过数据通信网或专用数据电路和远方的局域网,数据库或处理中心相连接,构成较大范围的数据处理系统;局域网的技术要素
分类: 其他 发布时间: 12-02 23:22 阅读次数: 0

http②网络基础

1.什么是http协议: http协议处在应用层的网络协议,所以它面向的是客户端和服务器,HTTP是一个客户端和服务器端请求和应答的标准(TCP); 可以通过web浏览器或网络爬虫等发送http请求,客户端被称为客户代理,因为客户本身无法直接参与请求,只能由客户端工具代理发送;应答的服务器里存储着图片或HTML资源,这个应答服务器就叫做源服务器;客户端发送请求,和服务器指定端口(默认80)建立tcp连接(传输层);服务器在端口监听客户端发来的请求,收到请求之后则会返回一个状态行和消息体;消息体
分类: 其他 发布时间: 12-02 23:22 阅读次数: 0

lavarel的密码验证

lavarel框架的密码验证一般如下: $hasher = new BcryptHasher; return $hasher->check($password, $this->password); Illuminate\Hashing\BcryptHasher中有: public function check($value, $hashedValue, array $options = []) { if (strlen($hashedValue) === 0) {
分类: 其他 发布时间: 12-02 23:21 阅读次数: 0

dwz查询找回

今天使用dwz框架的查询找回,但是总是第三层查找结果页面覆盖在第二层操作页面,一开始以为是我的form的头写错了 <form method="post" action="{{ route('') }}" class="pageForm required-validate" onsubmit="return validateCallback(this,dialogAjaxDone)"> 最后找到原因:原来是第二层页面的rel属性值没有设置,导致页面总在一个窗口跳转,而不是弹出; <a clas
分类: 其他 发布时间: 12-02 23:21 阅读次数: 0

一句话

php在读写session时,session文件是被锁上的,读写期间,其他并发无法进行session操作。即从你调用session_start()开始,到脚本执行结束或者被主动移除为止,任何session操作只有等到读写锁被移除之后进行。文件驱动和memcached驱动的session都有这样的设置,而redis没有锁。 lavarel 在存储session的时,如果key的类型为int型,则存储之后key的值会根据session里已经存储的session进行自增改变,原来的key发生变化。
分类: 其他 发布时间: 12-02 23:21 阅读次数: 0

lavarel错误和日志记录

lavarel依托Monolog库对系统进行日志处理 配置: (1).是否显示错误信息:config/app.php文件debug选项,决定是否向用户显示错误信息 默认情况下设置在.env中的APP_DEBUG环境变量中。开发环境为true 生产环境false (2).日志存储:config/app.php文件log选项。 日志模式有:single: daily:每日一个日志文件,设置保存天数限制:在APP配置文件中添加’log_max_files’ => 30 syslog: errorlo
分类: 其他 发布时间: 12-02 23:20 阅读次数: 0

Linux-php-fpm进程管理

Linux-php-fpm进程管理
分类: 企业开发 发布时间: 12-02 23:20 阅读次数: 0

Mysql数据库大量删除操作及谈面向对象中的封装继承和多态原理(图)

摘要: Mysql数据库大量删除操作及谈面向对象中的封装继承和多态原理(图) 最近进行数据库操作,遇到一个问题,就是大量删除一个数据表中的数据后,由于设定了id是自增的,导致再插入时,默认生成的id会很大,这个时候想...
分类: 其他 发布时间: 12-02 23:20 阅读次数: 0

C++基础教程面向对象学习笔记及心得感悟[图]

摘要: C++基础教程面向对象学习笔记及心得感悟[图] 使用友元函数重载算术运算符: C ++中一些最常用的运算符是算术运算符 - 即加号运算符(+),减运算符( - ),乘法运算符(*)和除法运算符(/)。请注意,所有算术运...
分类: 其他 发布时间: 12-02 23:20 阅读次数: 0

cgi ,fastcgi,PHP-FPM和php-cgi

cgi ------协议接口 每个进到服务器的请求,cgi接口会对进行解析,比如一个PHP文件请求来了,cgi会知道这个是PHP文件,需要PHP进行运行,所以就启动PHP解析器解析php.ini文件和初始化PHP环境。当请求结束后,又会关闭PHP,当第二次有关PHP请求到来的时候重复上面的动作。所以cgi协议接口是低效的。 fastcgi----协议接口; 为了避免cgi接口的这些问题,有人写出了fastcgi接口。fastcgi接口不会想cgi接口那样每次接到请求都重新启动PHP,解析php
分类: 其他 发布时间: 12-02 23:20 阅读次数: 0

html的disabled属性

由于我操作在同一个dialog弹出层里,每次弹出页面都会通过ajax获取数据,然后根据数据特性来判断input的禁用或使用,由于使同一个页面,html属性会残留在页面上。之后网上的一些回答迷惑了我,让我以为disabled="true" 或disabled="disabled"表示禁用,disabled="false" 表示可使用。其实浏览器只要发现元素中有diasbled属性,不管属性值是什么,都会对元素进行禁用。 <input name="luck" type="text" placeho
分类: 其他 发布时间: 12-02 23:19 阅读次数: 0

json_encode不转译斜杠/

json_encode($array, JSON_UNESCAPED_SLASHES);
分类: 其他 发布时间: 12-02 23:19 阅读次数: 0

lavarel里Eloquent ORM自动维护的updated_at,created_at,deleted_at

Eloquent 会认为在你的数据库表有 created_at 和 updated_at 字段,如果不想自动维护,可以在模型中添加 public $timestamps = false; 虽然在添加和更新数据库的时候很方便,但是当我取出这三种时间数据的时候需要进行处理才能得到想要的Y-m-d H:i:s格式的数据。 通过类似: $order = Order::find(12); $create = $order->created_at; 这时 $order,获取到的并不是标准的时间格式,而是一
分类: 其他 发布时间: 12-02 23:19 阅读次数: 0

PHP变量在内存中的存储方式

原文转载自:http://www.phppan.com/tag/refcount/ 每门计算机语言都需要一些容器来保存变量数据。在一些语言当中,变量都有特定的类型,如字符串,数组,对象等等。比如C和Pascal就属于这种。 而PHP则没有这样的类型。在PHP中,一个变量在某一行是字符串,可能到下一行就变成了数字。变量可以经常在不同的类型间轻易的转化,甚至是自动的转 换。PHP之所以成为一个简单并且强大的语言,很大一部分的原因是它拥有弱类型的变量。但是有些时候这也会带来一些有趣的问题。 在PHP
分类: 其他 发布时间: 12-02 23:18 阅读次数: 0

WebSocket原理(通俗篇)

一、WebSocket是HTML5出的东西(协议),也就是说HTTP协议没有变化,或者说没关系,但HTTP是不支持持久连接的(长连接,循环连接的不算) 首先HTTP有1.1和1.0之说,也就是所谓的keep-alive,把多个HTTP请求合并为一个,但是Websocket其实是一个新协议,跟HTTP协议基本没有关系,只是为了兼容现有浏览器的握手规范而已,也就是说它是HTTP协议上的一种补充可以通过这样一张图理解 有交集,但是并不是全部。 另外Html5是指的一系列新的API,或者说新规范,新技
分类: 其他 发布时间: 12-02 23:18 阅读次数: 0

mysql字段类型和查询语句数据类型的关系

mysql字段类型和查询语句数据类型的关系 实验 根据数据库存储的字段类型和查询语句中的数据类型列出下表: 数据库 查询语句 结果 string string ① string int ② int string ③ int int ④ 结果 素材表: +-----------+------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Def
分类: 其他 发布时间: 12-02 23:18 阅读次数: 0