E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
muduo源码笔记
muduo
源码剖析之AsyncLogging异步日志类
简介AsyncLogging是
muduo
的日志,程序如果直接让文件写日志可能会发生阻塞,
muduo
前端设计了2个BufferPtr,分别是currentBuffer_和nextBuffer_,还有一个存放
@新法
·
2023-10-22 21:18
源码剖析
muduo
linux
后端
服务器
c++
源码剖析
网络库
ClickHouse
源码笔记
5:聚合函数的源码再梳理
笔者在
源码笔记
1之中分析过ClickHouse的聚合函数的实现,但是对于各个接口函数的实际如何共同工作的源码,回头看并没有那么明晰,主要原因是没有结合Aggregator的类来一起分析聚合函数的是如果工作起来的
LeeHappen
·
2023-10-22 07:40
Muduo
学习笔记之Reactor框架源码解析
在上一篇博文中介绍了
muduo
的总体框架,本篇博文将会介绍Reactor的实现原理以及源码解析。
段长风
·
2023-10-20 18:05
Muduo网络库
Muduo源码解析
EventLoop
Poller
Channel
muduo
源码分析:Reactor模式的封装实现
关于
muduo
实现的Reactor模式,有三个关键的类:1.事件分发器类Channel2.封装I/O复用的Poller(主要研究EpollPoller)3.定时器接口类TimerQueue事件循环EventLoop
amoscykl
·
2023-10-20 18:30
moduo网络库
muduo源码分析
Reactor
muduo网络库
DispatcherServlet
源码笔记
开始假设已经云配好了web.xmlweb服务器在启动的时候会加载web.xml文件,则会调用配置在web.xml里的DispatcherServlet.init(),前提load-on-startup为正整数。初始化GenericServlet的initpublicvoidinit(ServletConfigconfig)throwsServletException{this.config=con
浅安an
·
2023-10-20 12:07
ChatServer-based-on-NginxTcpLoadBalance-RedisPubSub
文章目录项目地址和部署:技术栈:项目需求:项目目标:开发环境:准备工作:gcc升级:重新编译
muduo
库:CMake使用:查看cmake的版本:cmake的使用简介:静态库和动态库的编译控制:一个正式的工程构建
小白要努力sgy
·
2023-10-20 07:31
Linux
mysql
c++
中间件
nginx
redis
vue
源码笔记
之——响应系统
vue是一种声明式范式编程,使用vue者只需要告诉其想要什么结果,无需关心具体实现(vue内部做了,底层是利用命令式范式)1.reactive为什么只能操作对象,对于基本数据类型,需要用ref?因为vue3存储以来的对象用的是weakMap,其键必须为对象。源码位置如下。targetMap存放的是所有的依赖2.是怎么存放依赖?主要用了一个targetMap,结构为:{//weakMapkey:''
前端碎碎念
·
2023-10-18 21:52
vue
vue.js
笔记
javascript
vue3学习
源码笔记
(小白入门系列)------provide和 inject 跨层级数据传递原理
目录前言provideinject总结前言需要从父组件向子组件传递数据时,会使用props。对于层级不深的父子组件可以通过props透传数据,但是当父子层级过深时,数据透传将会变得非常麻烦和难以维护。而依赖注入则是为了解决prop逐级透传的问题而诞生的,父组件provide需要共享给子组件的数据,子组件inject使用需要的父组件状态数据,而且可以保持响应式。使用例子//父组件import{pro
我叫卷卷卷呀
·
2023-10-18 20:16
学习
笔记
vue.js
keep-alive
源码笔记
二-删除keep-alive缓存
1.App.vue中保存keep-alive的实例---html---homeabout---js---mounted(){//这里要注意keep-alive在父组件中的位置,也可以通过匹配tag属性来获取keep-alive的实例//也可绑定到vuex中window._keepAliveIns=this._vnode.children[0].componentInstanceconsole.lo
生命1昊
·
2023-10-18 20:43
vue
缓存
javascript
vue.js
vue3学习
源码笔记
(小白入门系列)------KeepAlive 原理
目录说明组件是如何被缓存的,什么时候被激活对于KeepAlive中组件如何完成激活的对于KeepAlive中组件如何完成休眠的总结说明Vue内置了KeepAlive组件,实现缓存多个组件实例切换时,完成对卸载组件实例的缓存,从而使得组件实例在来会切换时不会被重复创建。当动态组件在随着xxx变化时,如果没有KeepAlive做缓存,那么组件在来回切换时就会进行重复的实例化,这里就是通过KeepAli
我叫卷卷卷呀
·
2023-10-18 20:42
vue3源码学习
学习
笔记
1.15.C++项目:仿
muduo
库实现并发服务器之HttpRequest和HttpResponse模块的设计
文章目录一、HttpRequest模块二、HttpResponse模块三、实现思想(一)功能(二)意义四、代码一、HttpRequest模块二、HttpResponse模块三、实现思想(一)功能HttpRequest模块存储HTTP请求信息接收到一个数据,按照HTTP请求格式进行解析,得到各个关键要素放到Request中HttpResponse模块存储HTTP响应信息进行业务处理的同时,让使用者向
yolo0616
·
2023-10-17 09:48
CodeCrafters
c++
服务器
开发语言
1.16.C++项目:仿
muduo
库实现并发服务器之HttpContext以及HttpServer模块的设计
文章目录一、HttpContext模块二、HttpServer模块三、HttpContext模块实现思想(一)功能(二)意义(三)接口四、HttpServer模块实现思想(一)功能(二)意义(三)分析五、代码一、HttpContext模块要实现渐变的搭建HTTP服务器,所需要提供的要素和功能!要素:1.GET请求的路由映射表2.POST请求的路由映射表3.PUT请求的路由映射表4.DELETE请求
yolo0616
·
2023-10-17 09:41
CodeCrafters
c++
服务器
开发语言
Lua
源码笔记
--字符串连接
Lua
源码笔记
–字符串连接文章目录Lua
源码笔记
--字符串连接1Lua语法糖\.\.2table.concat3string.format4string.rep5.总结Lua字符串连接大概有四种方式:Lua
风神韵
·
2023-10-16 14:29
Lua
lua
字符串
连接
比较
源码
1.14.C++项目:仿
muduo
库实现并发服务器之Util模块的设计
一、Util模块二、实现思想(一)管理实现一些工具接口读取文件内容向文件写入内容URL编码URL解码通过HTTP状态码获取描述信息通过文件后缀名获取mime判断一个文件是不是目录判断一个文件是否是一个普通文件HTTP资源路径有效性判断(二)意义在协议支持模块中,当需要某些零碎功能的时候,便于使用!(三)功能设计classUtil{public://字符串分割函数size_tSpilt();//读取
yolo0616
·
2023-10-16 09:12
CodeCrafters
c++
服务器
safari
给大家介绍下,这是我的流程图软件 —— draw.io
公众号:liuzhihangs,记录工作学习中的技术、开发及
源码笔记
;时不时分享一些生活中的见闻感悟。欢迎大佬来指导!为什么需要画图?俗话说:“一图
程序员小航
·
2023-10-16 03:49
工具册
java
windows
macos
Muduo
网络编程示例之七:“串并转换”连接服务器及其自动化测试
Muduo
网络编程示例之七:连接服务器及其自动化测试陈硕(giantchen_AT_gmail)Blog.csdn.net/Solsticet.sina.com.cn/giantchen这是《
Muduo
weixin_33841503
·
2023-10-15 04:22
c/c++
java
测试
陈硕
Muduo
库源码学习:EventLoop
本人原本从事C++的学习的,现在进行即时通讯的网络开发学习,涉及到了
muduo
库顾
muduo
库进行深入学习,
muduo
库是给予reactor模型的并发处理的网络库,其广泛的利用了回调函数的特性。
蓝天巨人
·
2023-10-15 04:49
muduo
学习
muduo
muduo
概述
muduo
是基于Reactor模式的网络库,用于响应计时器和IO事件。
gnez-dd
·
2023-10-15 04:47
c++
socket网络库设计——
muduo
观后感
文章目录对《
muduo
》封面提出疑问的一些解答网络库设计思路代码复用事件处理模型Reatorvs.Proactor连接模型并发模型多线程安全主流语言网络库实现思路C/C++C#/JavaGolang/JavaScript
XIao_MinK
·
2023-10-15 04:16
编程
网络
架构
1.1.C++项目:仿
muduo
库实现并发服务器之any类的设计
文章目录一、思想二、框架三、代码一、思想每⼀个Connection对连接进行管理,最终都不可避免需要涉及到应用层协议的处理,因此在Connection中需要设置协议处理的上下文来控制处理节奏。但是应用层协议千千万,为了降低耦度,这个协议接收解析上下文就不能有明显的协议倾向,它可以是任意协议的上下文信息,因此就需要⼀个通⽤的类型来保存各种不同的数据结构。在C语言中,通用类型可以使用void*来管理,
yolo0616
·
2023-10-15 04:44
CodeCrafters
c++
服务器
网络
SpringBoot2
源码笔记
01、基础入门-SpringBoot2课程介绍SpringBoot2核心技术SpringBoot2响应式编程学习要求-熟悉Spring基础-熟悉Maven使用环境要求Java8及以上Maven3.3及以上学习资料SpringBoot官网SpringBoot官方文档本课程文档地址视频地址1、视频地址2源码地址02、基础入门-Spring生态圈Spring官网Spring能做什么Spring的能力Sp
阿秋噜噜噜
·
2023-10-15 02:43
JAVA
java
spring
boot
spring
1.11.C++项目:仿
muduo
库实现并发服务器之LoopThread的设计
文章目录一、LoopThread模块二、实现思想(一)功能(二)意义(三)功能设计三、代码一、LoopThread模块目标:将eventloop模块和线程整合起来!eventloop和线程是一一对应的!eventloop模块实例化的对象,在构造的时候就会吃实话!_thread_id;而后面当运行一个操作的时候判断是否运行在eventloop所对应的线程中,就是将线程ID与EventLoop模块中的
yolo0616
·
2023-10-14 21:37
CodeCrafters
c++
服务器
开发语言
1.12.C++项目:仿
muduo
库实现并发服务器之LoopThreadPool模块的设计
文章目录一、LoopThreadPool模块二、实现思想(一)功能(二)意义(三)功能设计三、代码一、LoopThreadPool模块1.线程数量可配置(0或多个)2.对所有的线程进行管理,其实也就是管理0个或多个LoopThread对象!3.提供线程分配的功能!二、实现思想(一)功能针对LoopThread设计一个线程池,便于管理。(二)意义对所有的LoopThread进行分配和管理!(三)功能
yolo0616
·
2023-10-14 21:37
CodeCrafters
c++
java
开发语言
1.13.C++项目:仿
muduo
库实现并发服务器之TcpServer模块的设计
文章目录一、LoopThreadPool模块二、实现思想(一)管理(二)流程(三)功能设计三、代码一、LoopThreadPool模块TcpServer模块:对所有模块的整合,通过tcpserver模块实例化的对象,可以非常简单的完成一个服务器的搭建。对前面所有子模块的整合模块,提供给用户用于搭建一个高性能服务器的模块!二、实现思想(一)管理Acceptor对象,创建一个监听套接字!EventLo
yolo0616
·
2023-10-14 21:37
CodeCrafters
服务器
c++
源码笔记
-ArrayList
ArrayList无参构造,默认创建长度为0的空数组;第一次扩容时,长度扩容至10;后续需要数组元素存满后再次扩容。核心方法:Arrays.copyOf()方法,涉及数组扩容时,用于copy数组。System.arraycopy(Objectsrc,intsrcPos,Objectdest,intdestPos,intlength)方法,Arrays.copyOf()方法底层也是调用该方法。src
柚子攻城狮
·
2023-10-14 08:22
笔记
Golang构建HTTP服务(一)--- net/http库
源码笔记
原文:Golang构建HTTP服务(一)---net/http库
源码笔记
-(jianshu.com)实现一个最简单HTTPserver需要多少代码?
祁小彬
·
2023-10-13 09:04
学习小马哥vue
源码笔记
原文:https://juejin.cn/post/6844904183938678798image.png自己的理解还未阅读订阅者和观察者设计模式从new实例开始,通过dom解析指令{{}}语法,并渲染,在渲染页面的时候,为data中每一个对象添加watcher观察者.在observer这里的功能包括为data中每一个数据设置defineProperty,get,set发表方法。并添加为每一个数
昊哇恰
·
2023-10-12 15:43
Muduo
库设计(7)——采用Buffer接收和发送数据
一、Buffer读取数据首先当channel有可读消息时,Channel会通知TcpConnection对象(当有新的连接时,channel会通知Acceptor对象),由此可见当有事件发生时,channel只负责通知上层调用者(TcpConnection,Acceptor、TimerQueue)voidChannel::handleEvent(TimestampreceiveTime){if(r
Magic11
·
2023-10-11 11:34
技术太菜,我很抱歉,阿里四面+蚂蚁金服四面全凉,金三银四再战
内容过多,不适合在文章全部阐述,**在文末分享了我为金三银四准备的备战资源库,包含了
源码笔记
类,大厂面试真题,跳槽解析,简历解析,项目实战源码+笔记+工具阿里一面1.JVM分区2.垃圾收集算法3.索引怎么优化
yyyy11119__
·
2023-10-10 06:46
面经
java
面试
经验分享
1.10.C++项目:仿
muduo
库实现并发服务器之Acceptor模块的设计
一、Acceptor模块:这是一个对于通信连接进行整体管理的一个模块,对一个连接的操作都是通过这个模块来进行!二、提供的功能Acceptor模块是对Socket模块,Channel模块的⼀个整体封装,实现了对⼀个监听套接字的整体的管理。三、实现思想(一)功能实现向Channel提供可读事件的IO事件处理回调函数,函数的功能其实也就是获取新连接。为新连接构建⼀个Connection对象出来。(二)意
yolo0616
·
2023-10-09 11:44
CodeCrafters
c++
服务器
开发语言
(
muduo
) 基础demo
文章目录介绍Code服务端codeMakefile简单讲解End介绍原项目:GitHub-chenshuo/
muduo
环境安装方式:C++
muduo
网络库知识分享01-Linux平台下
muduo
网络库源码编译安装陈硕
天赐细莲
·
2023-10-08 23:50
linux
C/C++
开发语言
c++
linux
AtomicInteger类
源码笔记
AtomicInteger类位于concurrent.atomic包下,它的主要用来支持对int或Integer类型进行的原子操作。原子操作可以保证线程安全性,因此,AtomicInteger类也常常用来做线程安全计数器,他的作用是int和Integer不可替代的。原子操作指一个操作不可被分割,也不可被重排序,执行的结果要么成功要么失败。这里的操作可以是一条或多条指令。AtomicInteger类
LuckyBuzz
·
2023-10-08 18:07
读TensorFlow
源码笔记
(1): tensorflow的多线程机制eigen::threadpool
读TensorFlow
源码笔记
(1):tensorflow的多线程机制eigen::threadpool线程池的概念大家都知道,就是事先创建固定数量或者不困定数量的线程,计算并行任务是直接调用线程池里的线程
老虎福
·
2023-10-08 13:10
TensorFlow
深度学习
人工智能
vue3学习
源码笔记
(小白入门系列)------computed是如何工作的
目录前言实现核心ComputedRefImpl的实现原理step1:step2:step3:step4:step5:总结:前言带着问题看源码:1.computed是如何实现响应式的?2.computed是如何实现计算结果缓存的?实现functioncomputed(getterOrOptions,debugOptions,isSSR=false){letgetterletsetter//判断第一个
我叫卷卷卷呀
·
2023-10-08 10:37
vue3源码学习
学习
笔记
HashMap
源码笔记
前言HashMap,应该所有java程序员都用过这个集合,是平时中很常用的一个集合。大部分人都知道怎么用它,也知道它不是线程安全的,HaspTable才是线程安全的。但很多人只是极限于此。并不知道Haspmap里面的构造是怎么样的,也不知道haspmap为什么线程不安全。所以我们今天就来看看HaspMap的源码构造吧。HashMap的类结构image.png可以看出,HashMap的结构是竖直方向
vison123
·
2023-10-07 15:05
ClickHouse
源码笔记
1:聚合函数的实现
由于工作的需求,后续笔者工作需要和开源的OLAP数据库ClickHouse打交道。ClickHouse是Yandex在2016年6月15日开源了一个分析型数据库,以强悍的单机处理能力被称道。笔者在实际测试ClickHouse和阅读ClickHouse的源码过程之中,对"战斗民族"开发的数据库十分欣赏。ClickHouse不仅是一个很好的数据库学习材料,而且同时应用了大量的CPP17的新特性进行开发
LeeHappen
·
2023-10-07 06:14
C++实现的RPC网络通信框架
C++语言实现的RPC网络通信框架目录项目概述环境
muduo
库protobufzookeeperRPC框架图代码1.proto文件2.RPC服务器端3.远程服务端4.RPC客户端5.用户端项目github
施瓦辛帝
·
2023-10-07 01:42
C++/Linux小项目
c++
网络
rpc
软件框架
RPC分布式网络通信框架项目
环境配置使用项目代码工程目录vscode远程开发Linux项目
muduo
网络库编程示例CMake构建项目集成编译环境Linux环境下搭建
muduo
网络库网络I/O模型介绍Protobuf安装配置ubuntuprotobuf
程序员小浩
·
2023-10-07 01:41
RPC分布式网络通信框架项目
rpc
分布式
网络协议
《Linux多线程服务端编程:使用
muduo
C++网络库》书摘6.6.2节
6.6.2常见的并发网络服务程序设计方案W.RichardStevens的《UNIX网络编程(第2版)》第27章“Client-ServerDesignAlternatives”介绍了十来种当时(20世纪90年代末)流行的编写并发网络程序的方案。[UNP]第3版第30章,内容未变,还是这几种。以下简称UNPCSDA方案。[UNP]这本书主要讲解阻塞式网络编程,在非阻塞方面着墨不多,仅有一章。正确使
weixin_30393907
·
2023-10-06 23:44
网络
python
c/c++
Linux多线程服务端编程:使用
muduo
C++网络库
《Linux多线程服务端编程:使用
muduo
C++网络库》(多年编写生产环境下多线程服务端程序经验之精华基本信息作者:陈硕出版社:电子工业出版社ISBN:9787121192821上架时间:2013-1
weixin_30475039
·
2023-10-06 23:44
网络
测试
c/c++
Muduo
多线程模型:一个 Sudoku 服务器演变
陈硕(giantchenATgmail)blog.csdn.net/Solstice
Muduo
全系列文章列表:http://blog.csdn.net/Solstice/category/779646.
apson_
·
2023-10-06 23:14
linux
编程库
分布式
服务器
c++
1.9.C++项目:仿
muduo
库实现并发服务器之Connection模块的设计
项目完整在:文章目录一、Connection模块:这是一个对于通信连接进行整体管理的一个模块,对一个连接的操作都是通过这个模块来进行!二、提供的功能三、实现思想(一)功能(二)意义(三)功能设计四、框架五、代码一、Connection模块:这是一个对于通信连接进行整体管理的一个模块,对一个连接的操作都是通过这个模块来进行!二、提供的功能Connection模块,一个连接有任何的事件怎么处理都是有这
yolo0616
·
2023-10-06 23:39
CodeCrafters
服务器
c++
网络
ClickHouse
源码笔记
2:聚合流程的实现
上篇笔记讲到了聚合函数的实现并且带大家看了聚合函数是如何注册到ClickHouse之中的并被调用使用的。这篇笔记,笔者会续上上篇的内容,将剖析一把ClickHouse聚合流程的整体实现。第二篇文章,我们来一起看看聚合流程的实现~~上车!1.基础知识的梳理ClickHouse的实现接口Block类前文我们聊到ClickHouse是一个列式存储数据库,在内存之中用IColumn接口来作为数据结构表示数
LeeHappen
·
2023-10-06 13:06
集群服务器
文章目录项目名:实现集群服务器技术栈通过这项目你学到(或者复习到)实现功能编码环境json环境
muduo
库+boost库MySql数据库登录mysql:查看mysql服务开启了没有?
踏过山河,踏过海
·
2023-10-05 15:25
Linux
c/c++知识二次稳固
服务器
运维
测量两台机器的的网络延迟和时间差
用于测量两台机器之间的网络延迟,即“往返时间(roundtriptime,RTT)”,其主要考察定长TCP消息的分包与TCP_NNODELY作用代码:https://github.com/chenshuo/
muduo
INGNIGHT
·
2023-10-03 00:08
Linux网络编程
muduo大并发服务器
1.8.C++项目:仿
muduo
库实现并发服务器之eventloop模块的设计
项目完整在:文章目录一、eventloop模块:进行事件监控,以及事件处理的模块二、提供的功能三、实现思想(一)功能(二)意义(三)功能设计四、框架五、代码一、eventloop模块:进行事件监控,以及事件处理的模块进行事件监控管理的模块这个模块就是我们所说的Onethreadoneloop中的loop,也就是我们所说的Reactor这个模块必定是一个模块对于一个线程二、提供的功能这个模块和线程是
yolo0616
·
2023-10-02 20:53
CodeCrafters
c++
服务器
1.7.C++项目:仿
muduo
库实现并发服务器之Poller模块的设计
项目完整在:文章目录一、Poller模块:描述符IO事件监控模块二、提供的功能三、实现思想(一)功能(二)意义(三)功能设计四、封装思想五、代码(一)框架(二)完整代码一、Poller模块:描述符IO事件监控模块二、提供的功能对任意的描述符进行IO事件监控。三、实现思想(一)功能对任意的描述符进行IO事件监控。(二)意义对epoll进行的封装,让对描述符进行事件监控的操作更加简单。(三)功能设计添
yolo0616
·
2023-10-02 20:52
CodeCrafters
c++
服务器
开发语言
ThreadPoolExecutor
源码笔记
首先放上ThreadPoolExecutor的继承实现图:ThreadPoolExecutor继承实现图代码如下:publicclassThreadPoolExecutorextendsAbstractExecutorService{}publicabstractclassAbstractExecutorServiceimplementsExecutorService{}publicinterfa
cheng南旧事
·
2023-10-02 07:37
String类
源码笔记
(一):成员变量和构造器
String类表示字符串,所有类似"abc"形式的字符串(或魔法字符串)都被看作是这个类的实例。String是不可变的,当一个字符串在常量池中被创建时,他的值就不会被改变。不可变类指的是其实例不能被修改的类。每个实例中包含的所有信息都必须在创建该实例的时候就提供,并且在对象的整个生命周期内固定不变。为了使类不可变,要遵循下面五条规则:1.不要提供任何会修改对象状态的方法。2.保证类不会被扩展。一般
LuckyBuzz
·
2023-10-01 12:06
Muduo
网络库之Channel、EPollPoller与EventLoop类【深度解析】
文章目录前言一、Channel类1、主要成员变量以及函数2、实现原理二、EPollPoller类1、实现原理二、EventLoop类1、功能实现SubReactorde的唤醒操作前言重新梳理一遍
muduo
UPUP小亮
·
2023-09-30 02:31
网络
服务器
c++
linux
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他