自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

catkin_ws的博客

在读研究生,智能机器人方向

  • 博客(156)
  • 资源 (5)
  • 收藏
  • 关注

原创 看这一篇就够了!ROS2入门学习:安装、测试、多机通信以及与ROS1的切换、通信

ROS2入门学习:安装、测试、多机通信以及与ros1的切换、通信为什么要写这篇blog1 ROS2优势欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入为什么要写这篇blog本人研究方向为多移

2021-06-02 19:43:31 4331 4

原创 使用Socket网络编程实现TCP/IP通信

TCP/IP通信详解基础函数基础函数

2020-08-31 20:28:46 2050

原创 基于.NET 框架的 C#停车场信息管理系统(C#/SQL)

摘自本人本科毕业设计论文,版权归知网,请勿转载。小区停车场出入管理系统主界面如图所示:基于.NET 框架的 C#停车场信息管理系统(C#/SQL)一、系统需求分析1 车辆出入管理系统分析2 系统管理员与停车用户分析3 停车系统安全性分析二、设计1 注册模块2 登录模块3 停车场主窗体模块3.1 车辆驶入模块3.2 车辆驶出模块3.3 费率设置模块3.4 用户管理模块5 公共类设计三、演示1 系统程序运行环境2 注册模块测试3 登录模块测试4 停车场主窗体测试4.1 驶入驶出测试4.2 用户管理测试4.

2020-08-21 15:38:43 5487 15

原创 C++通讯录管理系统设计(完整代码展示,可直接运行)

C++通讯录管理系统设计系统需求1、菜单设计2、退出功能实现3、添加联系人3.1、结构体设计3.2、功能设计4、显示联系人5、删除联系人5.1、检测联系人是否存在5.2、 删除功能实现6、 查找联系人7、 清空联系人代码注:系统需求本文主要通过利用C++实现一个通讯录管理系统系统需要实现的功能如下:添加联系人:向通讯录中添加新人,信息包括(姓名、性别、年龄、电话、家庭住址等),最多添加1000人显示联系人:显示所有联系人信息删除联系人:按照姓名进行删除指定人查找联系人:按照姓名查找联系人修

2020-06-06 22:06:44 8491 7

原创 死区特性函数以及MATLAB验算

死区特性为什么写该博文?死区代码死区解释matlab验算为什么写该博文?我在读一段代码时,对死区特性函数产生了好奇,因此写下该博文,仅代表个人理解。死区代码// 死区代码 c++double Dead(double input, double deadzone){ if (input>deadzone) return input - deadzone; else if ...

2019-05-08 16:32:09 7129 1

原创 快速低成本动画视频课

Adobe Animate和Character Animator

2023-02-18 16:11:08 937

转载 服务端高并发分布式架构演进之路

本文以淘宝作为例子,介绍从一百个到千万级并发情况下服务端的架构的演进过程,同时列举出每个演进阶段会遇到的相关技术,让大家对架构的演进有一个整体的认知,文章最后汇总了一些架构设计的原则。特别说明:本文以淘宝为例仅仅是为了便于说明演进过程可能遇到的问题,并非是淘宝真正的技术演进路径架构的调整是否必须按照上述演变路径进行?不是的,以上所说的架构演变顺序只是针对某个侧面进行单独的改进,在实际场景中,可能同一时间会有几个问题需要解决,或者可能先达到瓶颈的是另外的方面,这时候就应该按照实际问题实际解决。

2022-10-08 15:18:43 201

原创 Go设计模式学习——开闭原则

1 开闭原则对扩展开放、修改关闭 (Open Closed Principle)software entities (modules, classes, functions, etc.) should be open for extension , but closed for modification直译: 软件实体(模块、类、方法等)应该 “ 对扩展开放、对修改关闭 ”。白话: 添加一个新的功能应该是,在已有代码基础上扩展代码(新增模块、类、方法等),而非修改已有代码(修改模块、类、方法等)。.

2022-01-12 12:12:43 423

原创 Go设计模式学习——单一职责原则

1单一职责原则1.1 含义单一职责原则 (Single Responsibility Principle)(SRP)A class or module should have a single responsibility.一个类或者模块只负责完成一个职责(或者功能)。把模块看作比类更加粗粒度的代码块,模块中包含多个类,多个类组成一个模块1.2 理解一个类只负责完成一个职责或者功能。不要设计大而全的类,要设计粒度小、功能单一的类。单一职责原则是为了实现代码高内聚、低耦合,提高代码的复用性、可

2021-12-29 22:02:51 391

原创 业务学习笔记

学习笔记MVC框架和设计模式优点缺点ORMMVCMVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据可以分别用柱状图、饼图来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。V即View视图是指用户看到并与之交互的界面。比如由html元素组成的网页界面,或者软件的客户端界面。MVC的好处之一在于它能为应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,它

2021-08-03 10:36:00 246

原创 go语言实现设计模式—单例模式

go语言实现设计模式—单例模式1 背景2 什么是单例3 应用场景&优势4 如何创建单例4.1 饿汉式4.2 懒汉式-非线程4.3 懒汉式-线程安全4.4 双重检查4.5 once优雅写法5 其他1 背景2 什么是单例3 应用场景&优势4 如何创建单例4.1 饿汉式4.2 懒汉式-非线程4.3 懒汉式-线程安全4.4 双重检查4.5 once优雅写法5 其他...

2021-08-02 17:25:14 681

原创 go context实现多协程树型调用

背景在实际编程中goroutine会拉起新的goroutine,新goroutine又会拉出另一个新goroutine,单纯使用退出通知机制会比较复杂,采用context标准库的做法,对“树型”的goroutine调用,提供退出通知和元数据传递。实现例子package mainimport ( "context" "fmt" "time")type otherContext struct { context.Context}func work(ctx context.Conte

2021-06-18 20:37:07 235

原创 goroutine计算自然数的和——拆分task、channel、WaitGroup、线程池、done

goroutine计算自然数的和——拆分task、channel、WaitGroup功能程序逻辑代码功能计算100个自然数的和。程序逻辑InitTask函数构建task并发送到task通道。分发任务函数DistributeTask为每个task启动goroutine处理任务,并等待其处理完成,然后关闭通道。ProcessResult函数读取并统计所有的值。这几个函数在不同的goroutine中运行,它们通过通道和sync.WaitGroup进行通信与同步。整个流程如图:代码packa

2021-06-16 16:51:03 197

原创 总结之OLTP与OLAP

OLTP与OLAP的介绍数据处理大致可以分成两大类:联机事务处理OLTP(on-line transaction processing)、联机分析处理OLAP(On-Line Analytical Processing)。 OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。 OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。 OLTP 系统强调数据库内存效率,强调内存各种指标的命令率,强调绑定变量,强调并发操作; O

2021-04-27 10:43:16 416

转载 三种实现分布式锁的方式

一、为什么要使用分布式锁 我们在开发应用的时候,如果需要对某一个共享变量进行多线程同步访问的时候,可以使用我们学到的Java多线程的18般武艺进行处理,并且可以完美的运行,毫无Bug! 注意这是单机应用,也就是所有的请求都会分配到当前服务器的JVM内部,然后映射为操作系统的线程进行处理!而这个共享变量只是在这个JVM内部的一块内存空间! 后来业务发展,需要做集群,一个应用需要部署到几台机器上然后做负载均衡,大...

2021-04-25 16:15:02 120

原创 Makefile快速入门

Makefile快速入门1 什么是 Makefile2 命名规则3 工作原理4 变量5 模式匹配6 函数伪文件 .PHONY1 什么是 Makefile一个工程中的源文件不计其数,其按类型、功能、模块分别放在若干个目录中,Makefile 文件定义了一系列的规则来指定哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为 Makefile 文件就像一个 Shell 脚本一样,也可以执行操作系统的命令。Makefile 带来的好处就是“自动化编译” ,一旦

2021-04-06 16:13:22 404

原创 静态库和动态库

这里写目录标题1 什么是库2 静态库的制作3 动态库的制作4 工作原理5 编译过程6 静态库与动态库的优缺点1 什么是库库文件是计算机上的一类文件,可以简单的把库文件看成一种代码仓库,它提供给使用者一些可以直接拿来用的变量、函数或类。库是特殊的一种程序,编写库的程序和编写一般的程序区别不大,只是库不能单独运行。库文件有两种:静态库和动态库(共享库)区别:静态库在程序的链接阶段被复制到了程序中;动态库在链接阶段没有被复制到程序中,而是程序在运行时由系统动态加载到内存中供程序调用使用库

2021-04-06 11:59:24 114

原创 数据库2021题库

数据库2021题库数据库2021题库1 主键,外键,超键,候选键2 数据库事务的四个特征及含义3 视图的作用,可以更改吗4 游标5 drop,delete和truncate6 连接的种类7 数据库范式8 触发器的作用9 存储过程10 存储过程与触发器的区别11 分表与分区12 数据库隔离级别13 MYSQL的两种存储引擎14 索引的工作原理和其种类15 索引的优缺点16 数据库索引的底层实现?17 哪些情况下索引会失效?18 在那些地方适合创建索引?19 创建索引需要注意什么?20 使用索引查询一定能提高

2021-01-23 12:58:57 1523

原创 计算机网络2021题库

计算机网络太难?了解这一篇就够了一、简介二、OSI体系1、谈下你对五层网络协议体系结构的理解?2、简单说下每一层对应的网络协议有哪些?3、ARP 协议的工作原理?4、谈下你对 IP 地址分类的理解?5、TCP 的主要特点是什么?6、UDP 的主要特点是什么?7、TCP 和 UDP 的区别?8、TCP 和 UDP 分别对应的常见应用层协议有哪些?9、详细说下 TCP 三次握手的过程?10、为什么两次握手不可以呢?11、为什么不需要四次握手?12、Server 端收到 Client 端的 SYN 后,为什么还要

2021-01-23 12:49:54 830

原创 操作系统2021基础知识

操作系统2020面试一、操作系统引论1 什么是操作系统?2 什么系统调用? 用户态和系统态。3 操作系统的特性(并共虚异)4 并发,并行,同步,异步的区别?5 中断的分类6 操作系统的主要功能7 各种操作系统的区别8 动态链接库与静态链接库的区别一、操作系统引论1 什么是操作系统?是管理计算机硬件和软件的资源的程序,是计算机系统的内核与基石本质上是计算机软件程序为用户提供了与系统交互的操作界面操作系统分为内核和外壳,外壳主要是运行在系统上的其他的应用程序,内核则包括管理与配置内存,决定系统资源

2021-01-21 22:34:39 455

转载 Redis面试题(2020最新版)

文章目录 概述什么是RedisRedis有哪些优缺点为什么要用 Redis /为什么要用缓存为什么要用 Redis 而不用 map/guava 做缓存?Redis为什么这么快 数据类型Redis有哪些数据类型Redis的应用场景 持久化什么是Redis持久化?Redis 的持久化机制是什么?各自的优缺点?如何选择合适的持久化方式Redis持久化数据和缓存怎么做扩容? 过期键的删除策略Redis的过期键的删除策略Redis key...

2021-01-21 22:28:27 229

转载 MySQL数据库面试题(2020最新版)

文章目录 数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别? 数据类型mysql有哪些数据类型 引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4大特性存储引擎选择 索引什么是索引?索引有哪些优缺点?索引使用场景(重点)索引有哪几种类型?索引的...

2021-01-21 22:26:53 301 1

转载 消息中间件MQ与RabbitMQ面试题(2020最新版)

文章目录 为什么使用MQ?MQ的优点消息队列有什么优缺点?RabbitMQ有什么优缺点?你们公司生产环境用的是什么消息中间件?Kafka、ActiveMQ、RabbitMQ、RocketMQ 有什么优缺点?MQ 有哪些常见问题?如何解决这些问题?什么是RabbitMQ?rabbitmq 的使用场景RabbitMQ基本概念RabbitMQ的工作模式如何保证RabbitMQ消息的顺序性?消息如何分发?消息怎么路由?消息基于什么传输?如何保证消息不被重...

2021-01-21 22:25:10 344

转载 超全的git使用【狂神git】

视频同步笔记:狂神聊Git 版本控制! 什么是版本控制 版本控制(Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。 实现跨区域多人协同开发追踪和记载一个或者多个文件的历史记录组织和保护你的源代码和文档统计工作量并行...

2021-01-20 22:21:43 481 1

转载 Elasticsearch 方法论

人工智能、大数据快速发展的今天,对于 TB 甚至 PB 级大数据的快速检索已然成为刚需。Elasticsearch 作为开源领域的后起之秀,从2010年至今得到飞跃式的发展。 Elasticsearch 以其开源、分布式、RESTFul API 三大优势,已经成为当下风口中“会飞的猪”。 阿里云2018年2月5日已开价50-200W...

2021-01-15 20:57:04 140

原创 多个单列索引和联合索引的区别详解

背景: 为了提高数据库效率,建索引是家常便饭;那么当查询条件为2个及以上时,我们是创建多个单列索引还是创建一个联合索引好呢?他们之间的区别是什么?哪个效率高呢?我在这里详细测试分析下。 一、联合索引测试 注:Mysql版本为 5.7.20 创建测试表(表记录数为63188)...

2021-01-14 11:38:47 212

转载 ZooKeeper学习笔记

教学视频 源码 文章目录 01.课程介绍02.概述03.特点04.数据结构05.应用场景统一命名服务统一配置管理统一集群管理服务器动态上下线软负载均衡 06.下载地址07.本地模式安装Linux下安装Windows下安装安装前准备配置修改操作 Zookeeper 08.配置参数解读09.选举机制10...

2021-01-13 22:24:10 145

转载 常见Mysql的慢查询优化方式

这篇文章主要是就在公司实习的时候,对SQL优化工作作出的一些整理。     在公司实习的时候,导师分配了SQL慢查询优化的任务,任务是这样的:每周从平台中导出生产数据库的慢查询文件进行分析。进行SQL优化的手段也主要是修改SQL写法,或者新增索引。     现在从记录项目中的一点点做起。     (1)数据库中设置SQL慢查询       一、第一步.开启my...

2021-01-12 21:46:06 294

原创 Apache Bench的安装与使用

一、Apache Bench简介 ApacheBench 是 Apache 服务器自带的一个web压力测试工具,简称ab。ab又是一个命令行工具,对发起负载的本机要求很低,根据ab命令可以创建很多的并发访问线程,模拟多个访问者同时对某一URL地址进行访问,因此可以用来测试目标服务器的负载压力。总的来说ab工具小巧简单,上手学习较快,可以提供需要的基本性能指标,但是没有图形化结果,不能监控。 二、Apache B...

2021-01-12 21:44:37 162

原创 数据库设计三大范式和事务ACID

数据的概念 对象object,也称为实体型。在现实世界中具有相同性质、遵循相同规则的一类事物的抽象称为对象。对象是实体集数据化的结果,比如学生、老师、课程等是对象。 实例instance 是指对象中的每一个具体的事物,例如学生张三、李四。 属性attribute 是实体的某一方面特征的抽象表示,例如学生的姓名、性别、班级、年龄等。 主码primary key 能够唯一标识一个实体。 次码secondary...

2021-01-12 21:01:45 276

原创 GoWeb开发优化—MySQL*Redis*CDN*OSS*Nginx*分布式session验证&rabbitMQ&秒杀

GoWeb网站优化——数据库优化1 架构与查询流程2 项目中优化2.1 表结构设计2.1.1 范式与反范式2.1.2 表结构与数据类型的优化2.2 索引优化2.2.1 建立索引2.2.2 独立索引&多列索引2.3 查询优化2.3.1 切分查询,limit重要性2.3.2 分解关联查询1 架构与查询流程2 项目中优化2.1 表结构设计2.1.1 范式与反范式2.1.2 表结构与数据类型的优化2.2 索引优化2.2.1 建立索引2.2.2 独立索引&多列索引2.3 查询优

2021-01-12 20:25:30 367

原创 大型Web架构设计

参考:大型Web架构设计概述初始阶段应用服务器与数据服务器分离数据库读写分离使用缓存改善性能使用搜索引擎使用反向代理和CDN改善响应时间网站集群改善并发能力业务快速迭代,不能一味追求冰山下的建设概述初始阶段应用服务器与数据服务器分离数据库读写分离使用缓存改善性能使用搜索引擎使用反向代理和CDN改善响应时间网站集群改善并发能力业务快速迭代,不能一味追求冰山下的建设...

2021-01-12 17:42:21 92

原创 RabbitMQ详解(基于go语言)

参考文档RMQ的安装和端口基础概念交换器类型默认交换器创建交换器创建队列队列绑定交换器绑定发送消息接受消息 – 推模式接受消息 – 拉模式手动回复消息关闭连接Publish – mandatory参数Publish – immediate参数备用交换机&TTL+...

2021-01-10 18:56:05 943

原创 VMware安装Centos7超详细过程(图文)

原文:https://www.jianshu.com/p/ce08cdbc4ddb?utm_source=tuicool&utm_medium=referral   本篇文章主要介绍了VMware安装Centos7超详细过程(图文),具有一定的参考价值,感兴趣的小伙伴们可以参考一下 1.软硬件准备 软件:推荐使用VMwear,我用的是VMwear 12 镜像:CentOS7 ,如果没有镜...

2021-01-10 12:38:45 826

原创 【docker入门】10分钟,快速学会docker

10分钟,快速学会docker1 总体框图2 快速入门2.1 获取镜像2.2 查看本地镜像2.3 运行镜像2.4 查看正在运行的容器2.5 修改容器2.6 删除容器2.7 提交容器2.8 通过dockerfile构建镜像跑成容器2.9 保存文件和重新加载2.10 其他摘抄小狐狸的笔记入门操作31 总体框图2 快速入门2.1 获取镜像docker pull nginxdocker pull nginx:latest2.2 查看本地镜像docker images2.3 运行镜像docke

2021-01-09 16:15:37 341

转载 Redis学习笔记

教学视频Redis官网Redis中文网本文用到的Java源码 ------01.NoSQL入门概述-上02.NoSQL入门概述-下03.当下NoSQL应用场景简介04.NoSQL数据模型简介05.NoSQL数据库的四大分类06.分布式数据库CAP原理07.安装08.HelloWor...

2021-01-06 20:24:28 223

转载 第 5 章 主从复制

第 5 章 主从复制 1、复制的基本原理 复制的基本原理 slave会从master读取binlog来进行数据同步,主从复制的三步骤 master将改变记录到二进制日志(binary log)。这些记录过程叫做二进制日志事件(binary log events)sl...

2020-12-29 21:01:05 75

转载 第 4 章 MySQL 锁机制

第 4 章 MySQL 锁机制 1、概述 1.1、锁的定义 锁的定义 锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所...

2020-12-29 11:11:14 128

转载 第 3 章 查询截取分析

第 3 章 查询截取分析 1、查询优化 1.1、MySQL 优化原则 mysql 的调优大纲 慢查询的开启并捕获explain+慢SQL分析show profile查询SQL在Mysql服务器里面的执行细节和生命周期情况SQL数据库服务器的参数调优 永远小表...

2020-12-28 20:43:54 182

转载 第 2 章 索引优化分析

第 2 章 索引优化分析 1、慢 SQL 性能下降、 SQL 慢、执行时间长、等待时间长的原因分析 查询语句写的烂索引失效: 单值索引:在user表中给name属性建个索引,create index idx_user_name on user(name)复合索引:在user表中给name、email属性建个索引,...

2020-12-27 21:56:47 200

first.tar.gz

MIT6.824代码

2021-04-30

大型Web架构设计总结

大型Web架构设计总结,适合后端开发优化

2021-01-17

Web架构设计的演进

web开发,后端开发

2021-01-12

Linux高性能服务器的入门教程.zip

学习完之后,整个人都通透了,打通服务器编程的任督二脉。 学习完之后,整个人都通透了,打通服务器编程的任督二脉 学习完之后,整个人都通透了,打通服务器编程的任督二脉 学习完之后,整个人都通透了,打通服务器编程的任督二脉 学习完之后,整个人都通透了,打通服务器编程的任督二脉

2020-08-05

C++讲义(pdf) (2).zip

此文件为视频课程 的文档资料,里面有《C++基础入门》、《C++提高编程》、《C++核心编程》、《通讯录管理系统》、《基于STL的演讲比赛流程管理系统》、《职工管理系统》、《机房预约系统》七大部分,为 pdf文件。

2020-06-07

空空如也

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

TA关注的人

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