摘要:
SPDY协议 - v3 原文:SPDY Protocol - Draft 3 翻译:邱鹏滔(QQ: 95350530,主页:www.fireflysource.com) 1 概述 HTTP协议的瓶颈在于它需要靠很多链接来处理并发。造成这个原因的问题包括连接建立时额外的往返周期,慢启动延迟,以及有限的 阅读全文
posted @ 2024-08-13 20:32
鲸鱼的海老大
阅读(234)
评论(0)
推荐(0)
摘要:
在线版目录: 1.引言——WebSocket协议翻译 2.一致性要求——WebSocket协议翻译 3.WebSocket URI——WebSocket协议翻译 4.打开阶段握手——WebSocket协议翻译 5.数据帧——WebSocket协议翻译 6.发送和接收数据——WebSocket协议翻译 阅读全文
posted @ 2024-08-13 20:31
鲸鱼的海老大
阅读(95)
评论(0)
推荐(0)
摘要:
polling & long polling 参考:http://stackoverflow.com/questions/11077857/what-are-long-polling-websockets-server-sent-events-sse-and-comet 1、轮询(Polling)是 阅读全文
posted @ 2024-08-13 20:31
鲸鱼的海老大
阅读(69)
评论(0)
推荐(0)
摘要:
TCP的那些事儿(下) 这篇文章是下篇,所以如果你对TCP不熟悉的话,还请你先看看上篇《TCP的那些事儿(上)》 上篇中,我们介绍了TCP的协议头、状态机、数据重传中的东西。但是TCP要解决一个很大的事,那就是要在一个网络根据不同的情况来动态调整自己的发包的速度,小则让自己的连接更稳定,大则让整个网 阅读全文
posted @ 2024-08-13 20:31
鲸鱼的海老大
阅读(42)
评论(0)
推荐(0)
摘要:
TCP的那些事儿(上) 原文链接:http://coolshell.cn/articles/11564.html TCP是一个巨复杂的协议,因为他要解决很多问题,而这些问题又带出了很多子问题和阴暗面。所以学习TCP本身是个比较痛苦的过程,但对于学习的过程却能让人有很多收获。关于TCP这个协议的细节, 阅读全文
posted @ 2024-08-13 20:30
鲸鱼的海老大
阅读(20)
评论(0)
推荐(0)
摘要:
IP路由选择 IP协议提供了一种不可靠、无连接的数据传输服务: 1、不可靠(unreliable):不能保证IP数据报能成功到达目的地;如果发生某种错误,比如路由器的缓冲区已满,会直接丢弃该数据报,然后发送ICMP消息给信源端; 2、无连接(connectionless):每个数据报的处理是相互独立 阅读全文
posted @ 2024-08-13 20:30
鲸鱼的海老大
阅读(71)
评论(0)
推荐(0)
摘要:
TCP/IP协议栈概述 这篇文章虽然只是很粗浅的介绍了ISO/OSI 网络模型,但确实把握住了关键点,某种意义上,简单回顾一下就可以加深对TCP/IP协议栈的理解。 原作者:阮一峰 链接: http://www.ruanyifeng.com/blog/2012/05/internet_protoco 阅读全文
posted @ 2024-08-13 20:30
鲸鱼的海老大
阅读(104)
评论(0)
推荐(0)
摘要:
路由器和交换机 计算机网络往往由许多种不同类型的网络互连连接而成。如果几个计算机网络只是在物理上连接在一起,它们之间并不能进行通信,那么这种“互连”并没有什么实际意义。因此通常在谈到“互连”时,就已经暗示这些相互连接的计算机是可以进行通信的,也就是说,从功能上和逻辑上看,这些计算机网络已经组成了一个 阅读全文
posted @ 2024-08-13 20:29
鲸鱼的海老大
阅读(86)
评论(0)
推荐(0)
摘要:
TCP中的RST复位信号 在TCP协议中RST表示复位,用来关闭异常的连接,在TCP的设计中它是不可或缺的。 发送RST包关闭连接时,不必等缓冲区的包都发出去,直接就丢弃缓存区的包发送RST包。而接收端收到RST包后,也不必发送ACK包来确认。 TCP报文中有一个RST标志位,如下图: 产生RST的 阅读全文
posted @ 2024-08-13 20:29
鲸鱼的海老大
阅读(1458)
评论(0)
推荐(0)
摘要:
1、建立连接 accept int accept(int sockfd, struct sockaddr *addr, socklen_t *addrlen); TCP通过三次握手建立连接,如下图, 当服务器绑定、监听了某个端口后,这个端口的SYN队列和ACCEPT队列就建立好了(在内核中实现)。注 阅读全文
posted @ 2024-08-13 20:28
鲸鱼的海老大
阅读(54)
评论(0)
推荐(0)
摘要:
heapq内置模块位于./Anaconda3/Lib/heapq.py,提供基于堆的优先排序算法 堆的逻辑结构就是完全二叉树,并且二叉树中父节点的值小于等于该节点的所有子节点的值。这种实现可以使用 heap[k] <= heap[2k+1] 并且 heap[k] <= heap[2k+2] (其中 阅读全文
posted @ 2024-08-13 20:24
鲸鱼的海老大
阅读(231)
评论(0)
推荐(0)
摘要:
分布式文件系统介绍 分布式文件系统:Distributed file system, DFS,又叫做网络文件系统:Network File System。一种允许文件通过网络在多台主机上分享的文件系统,可让多机器上的多用户分享文件和存储空间。特点:在一个分享的磁盘文件系统中,所有节点对数据存储区块都 阅读全文
posted @ 2024-08-13 20:22
鲸鱼的海老大
阅读(169)
评论(0)
推荐(0)
摘要:
消息队列 MQ 的常见使用场景其实有很多,但是比较核心的有如下三个: 解耦 异步 削峰 解耦:A 系统发送个数据到 BCD 三个系统,接口调用发送,那如果 E 系统也要这个数据呢?那如果 C 系统现在不需要了呢? 现在 A 系统又要发送第二种数据了呢?而且 A 系统要时时刻刻考虑 BCDE 四个系统 阅读全文
posted @ 2024-08-13 20:21
鲸鱼的海老大
阅读(82)
评论(0)
推荐(0)
摘要:
Windows上报错 去计算机服务管理中关闭那个自己启动的RabbitMq服务,再手动启动的话就可以成功运行了,上面那个警告也可以将那个文件删除进行解决 为啥要使用MQ 以常见的订单系统为例,用户点击【下单】按钮之后的业务逻辑可能包括:扣减库存、生成相应单据、发红包、发短信通知。在业务发展初期这些逻 阅读全文
posted @ 2024-08-13 20:19
鲸鱼的海老大
阅读(64)
评论(0)
推荐(0)
摘要:
引子 我们定义变量会申请内存空间来存放变量的值,而内存的容量是有限的,当一个变量值没有用了(简称垃圾)就应该将其占用的内存给回收掉,而变量名是访问到变量值的唯一方式,所以当一个变量值没有关联任何变量名时,我们就无法再访问到该变量值了,该变量值就是一个垃圾会被Python解释的垃圾回收机制自动回收 什 阅读全文
posted @ 2024-08-13 20:18
鲸鱼的海老大
阅读(133)
评论(0)
推荐(0)
摘要:
StringIO 很多时候,数据读写不一定是文件,也可以在内存中读写。 StringIO顾名思义就是在内存中读写str。 要把str写入StringIO,我们需要先创建一个StringIO,然后,像文件一样写入即可: >>> from io import StringIO >>> f = Strin 阅读全文
posted @ 2024-08-13 20:17
鲸鱼的海老大
阅读(86)
评论(0)
推荐(0)
摘要:
main函数使用sys.argv传入多个参数 在运维过程中,有些时候需要向main函数中传递参数,以方便运维与测试,那么怎么向main函数中传入多个参数呢,下面以python3中的main函数为例,简单讲一下。首先我们需要import sys,sys是python3的一个标准库,也就是一个官方的模块 阅读全文
posted @ 2024-08-13 20:16
鲸鱼的海老大
阅读(55)
评论(0)
推荐(0)
摘要:
写博客的时候,经常碰到带有一些多余字符的引用文章,今天我就来介绍几种简单的文本处理方法 字符串切割 例如,我想将下面代码中,每行的开头处理一下,可以使用字符串的切分 样本 1 from selenium import webdriver 2 from selenium.webdriver impor 阅读全文
posted @ 2024-08-13 20:15
鲸鱼的海老大
阅读(42)
评论(0)
推荐(0)
摘要:
我们基本上都知道Python的序列对象都是可以用索引号来引用的元素的,索引号可以是正数由0开始从左向右,也可以是负数由-1开始从右向左。在Python中对于具有序列结构的数据来说都可以使用切片操作,需注意的是序列对象某个索引位置返回的是一个元素,而切片操作返回是和被切片对象相同类型对象的副本。如下面 阅读全文
posted @ 2024-08-13 20:15
鲸鱼的海老大
阅读(117)
评论(0)
推荐(0)
摘要:
端口转发 端口转发(Port forwarding),有时被叫做隧道,是安全壳(SSH) 为网络安全通信使用的一种方法。端口转发是转发一个网络端口从一个网络节点到另一个网络节点的行为,其使一个外部用户从外部经过一个被激活的NAT路由器到达一个在私有内部IP地址(局域网内部)上的一个端口。 在网吧通过 阅读全文
posted @ 2024-08-13 20:13
鲸鱼的海老大
阅读(3692)
评论(0)
推荐(1)
摘要:
命令速查表 命令历史 以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令。 启动vim 在命令行窗口中输入以下命令即可 vim 直接启动vim vim filename 打开vim并创建名为filename的文件 文件命令 打开单个文件 vim file 同时打开多个 阅读全文
posted @ 2024-08-13 20:13
鲸鱼的海老大
阅读(81)
评论(0)
推荐(0)
摘要:
Linux软件包分类 Linux 下的软件包众多,而且几乎都是经 GPL 授权的,也就是说这些软件都免费,振奋人心吧?而且更棒的是,这些软件几乎都提供源代码(开源的),只要你愿意,就可以修改程序源代码,以符合个人的需求和习惯。当然,你要具备修改这些软件的能力才可以。 源码包到底是什么呢?其实就是软件 阅读全文
posted @ 2024-08-13 20:12
鲸鱼的海老大
阅读(41)
评论(0)
推荐(0)
摘要:
1.Linux /etc/passwd2.Linux /etc/shadow文件3.Linux /etc/group4.Linux /etc/gshadow5.Linux useradd命令6.Linux passwd命令7.Linux usermod命令8.Linux chage命令9.Linux 阅读全文
posted @ 2024-08-13 20:12
鲸鱼的海老大
阅读(78)
评论(0)
推荐(0)
摘要:
1.Linux ACL访问控制权限2.Linux SetUID权限3.Linux SetGID权限4.Linux Stick BIT权限5.Linux文件特殊权限设置6.Linux chattr命令7.Linux lsattr命令8.Linux sudo命令 前面章节中,我们学习了文件的基本权限和 阅读全文
posted @ 2024-08-13 20:08
鲸鱼的海老大
阅读(72)
评论(0)
推荐(0)
摘要:
1.Linux数据备份2.Linux备份策略3.Linux dump命令4.Linux restore命令5.Linux dd命令 不知道大家有没有丢失过重要的数据呢? 丢失数据的理由是多种多样的,有人是因为重装系统时,没有把加密文件的密钥导出,重装系统后密钥丢失,导致所有的加密数据不能解密;也有人 阅读全文
posted @ 2024-08-13 20:02
鲸鱼的海老大
阅读(55)
评论(0)
推荐(0)
摘要:
1.Linux rsyslogd服务2.Linux日志文件及功能3.Linux日志文件的格式分析4.rsyslogd配置文件格式及其内容5.Linux日志服务器设置6.Linux日志轮替(日志转储)7.Linux logrotate命令8.Linux日志分析工具 系统日志详细地记录了在什么时间,哪台 阅读全文
posted @ 2024-08-13 20:01
鲸鱼的海老大
阅读(145)
评论(0)
推荐(0)
摘要:
本章,我们主要学习进程管理、工作管理和系统定时任务。同时解决一些问题,如什么是进程、进程的管理方式是什么、工作管理的作用是什么、系统定时任务如何实现。 Linux进程管理 进程管理在 Windows 中更加直观,它主要是使用"任务管理器"来进行进程管理的。 通常,使用"任务管理器"主要有 3 个目的 阅读全文
posted @ 2024-08-13 19:59
鲸鱼的海老大
阅读(106)
评论(0)
推荐(0)
摘要:
1.Linux系统服务2.linux端口3.Linux独立服务管理4.Linux基于xinetd服务的管理5.Linux源码包服务管理6.Linux常见服务类别及功能 什么是系统服务?服务是在后台运行的应用程序,并且可以提供一些本地系统或网络的功能。 那么,Linux 中常见的服务有那些,这些服务怎 阅读全文
posted @ 2024-08-13 19:58
鲸鱼的海老大
阅读(52)
评论(0)
推荐(0)
摘要:
1.Linux系统启动流程2.BIOS开机自检3.主引导目录(MBR)结构及作用4.Linux内核(内核模块)的加载5.Linux /sbin/init进程调用6./etc/rc.d/rc.sysinit初始化Linux7.Linux系统运行级别及/etc/inittab/文件8.Linux /et 阅读全文
posted @ 2024-08-13 19:57
鲸鱼的海老大
阅读(52)
评论(0)
推荐(0)
摘要:
1.磁盘配额是什么2.Linux磁盘配额查询3.磁盘配额测试4.Linux setquota命令5.Linux LVM(逻辑卷管理)6.Linux物理卷(PV)7.Linux卷组(VG)8.Linux逻辑卷(LV)9.磁盘列阵(RAID)10.RAID配置11.RAID 5配置方法 本章我们将学习高 阅读全文
posted @ 2024-08-13 19:51
鲸鱼的海老大
阅读(80)
评论(0)
推荐(0)
摘要:
1.硬盘结构2.Linux文件系统3.Linux df命令4.Linux du命令5.Linux mount命令6.Linux umount命令7.Linux fsck命令8.Linux dumpe2fs命令9.Linux fdisk命令10.Linux fdisk创建主分区11.Linux fdi 阅读全文
posted @ 2024-08-13 19:50
鲸鱼的海老大
阅读(61)
评论(0)
推荐(0)
摘要:
Linux命令基本格式 命令提示符 登录系统后,第一眼看到的内容是: [root@localhost ~]# 这就是 Linux 系统的命令提示符。那么,这个提示符的含义是什么呢? []:这是提示符的分隔符号,没有特殊含义。 root:显示的是当前的登录用户,笔者现在使用的是 root 用户登录。 阅读全文
posted @ 2024-08-13 19:49
鲸鱼的海老大
阅读(65)
评论(0)
推荐(0)
摘要:
1.VMware虚拟机安装Linux 2.U盘安装Linux系统 3.dd命令安装Linux 4.Linux远程管理工具 5.Linux使用注意事项 6.Linux服务器管理注意事项 本节介绍的虚拟机软件是 VMware,简单来说,VMware 可以使你在一台计算机上同时运行多个操作系统(如 Win 阅读全文
posted @ 2024-08-13 19:47
鲸鱼的海老大
阅读(65)
评论(0)
推荐(0)
摘要:
Kubernetes 介绍 Kubernetes是一个全新的基于容器技术的分布式架构领先方案, 它是Google在2014年6月开源的一个容器集群管理系统,使用Go语言开发,Kubernetes也叫K8S。K8S是Google内部一个叫Borg的容器集群管理系统衍生出来的,Borg已经在Google 阅读全文
posted @ 2024-08-13 19:42
鲸鱼的海老大
阅读(280)
评论(0)
推荐(0)
摘要:
四、kubernetes集群部署微服务 https://github.com/liuyi01/kubernetes-starter 1. 微服务部署方案 - 思路整理 我们有如下微服务: 消息服务:message-service 课程dubbo服务:course-dubbo-service 课程we 阅读全文
posted @ 2024-08-13 19:41
鲸鱼的海老大
阅读(26)
评论(0)
推荐(0)
摘要:
三、完整集群部署 - kubernetes-with-ca 1. 理解认证授权 1.1 为什么要认证 想理解认证,我们得从认证解决什么问题、防止什么问题的发生入手。防止什么问题呢?是防止有人入侵你的集群,root你的机器后让我们集群依然安全吗?不是吧,root都到手了,那就为所欲为,防不胜防了。其实 阅读全文
posted @ 2024-08-13 19:41
鲸鱼的海老大
阅读(39)
评论(0)
推荐(0)
摘要:
二、基础集群部署 - kubernetes-simple 1. 部署ETCD(主节点) 1.1 简介 kubernetes需要存储很多东西,像它本身的节点信息,组件信息,还有通过kubernetes运行的pod,deployment,service等等。都需要持久化。etcd就是它的数据中心。生产环 阅读全文
posted @ 2024-08-13 19:40
鲸鱼的海老大
阅读(24)
评论(0)
推荐(0)
摘要:
一、预先准备环境 1. 准备服务器 这里准备了三台ubuntu虚拟机,每台一核cpu和2G内存,配置好root账户,并安装好了docker,后续的所有操作都是使用root账户。虚拟机具体信息如下表: 系统类型IP地址节点角色CPUMemoryHostname ubuntu16.04 192.168. 阅读全文
posted @ 2024-08-13 19:39
鲸鱼的海老大
阅读(85)
评论(0)
推荐(0)
摘要:
线上部署了ELK+Redis日志分析平台环境, 随着各类日志数据源源不断的收集, 发现过了一段时间之后, ELK查看会原来越慢, 重启elasticsearch服务器节点之前同步时间也会很长, 这是因为长期以来ELK收集的索引没有删除引起的! 以下是ELK批量删除索引的操作记录: 1) 访问head 阅读全文
posted @ 2024-08-13 19:37
鲸鱼的海老大
阅读(186)
评论(0)
推荐(0)
摘要:
什么是 ElasticSearch Elasticsearch 是一个分布式可扩展的实时搜索和分析引擎,一个建立在全文搜索引擎 Apache Lucene(TM) 基础上的搜索引擎.当然 Elasticsearch 并不仅仅是 Lucene 那么简单,它不仅包括了全文搜索功能,还可以进行以下工作: 阅读全文
posted @ 2024-08-13 19:36
鲸鱼的海老大
阅读(29)
评论(0)
推荐(0)
摘要:
Django+nginx+uwsgi部署教程(centos7+ubuntu16.4) 项目部署教程 在线演示 1.1.原理介绍 django 一个基于python的开源web框架 uwsgi 一是一个web服务器,也可以当做中间件 nginx 常用高性能代理服务器 wsgi.py django项目携 阅读全文
posted @ 2024-08-13 19:14
鲸鱼的海老大
阅读(639)
评论(0)
推荐(0)
摘要:
到目前为止,启动Flask应用都是通过”app.run()”方法,在开发环境中,这样固然可行,不过到了生产环境上,势必需要采用一个健壮的,功能强大的Web应用服务器来处理各种复杂情形。同时,由于开发过程中,应用变化频繁,手动将每次改动部署到生产环境上很是繁琐,最好有一个自动化的工具来简化持续集成的工 阅读全文
posted @ 2024-08-13 19:10
鲸鱼的海老大
阅读(160)
评论(0)
推荐(0)
摘要:
抵不住朋友的诱惑,今天终于入手了一台阿里云服务器,是Ubuntu 1.4 32位版本,最初考虑是用来尝尝鲜只是买了个最低配的,价格算起来与在国外买个空间的价格相当吧(可能一年才贵100多),但用起来感觉就很不错,速度那是一个字:快。 自从倒戈向Linux世界后,对于一切大而全的开发框架与软件都有一种 阅读全文
posted @ 2024-08-13 19:10
鲸鱼的海老大
阅读(125)
评论(0)
推荐(0)
摘要:
之前分别介绍了LVS基础知识和Heartbeat基础知识, 今天这里简单说下LVS+Heartbeat实现高可用web集群方案的操作说明. Heartbeat 项目是 Linux-HA 工程的一个组成部分,它实现了一个高可用集群系统。心跳服务和集群通信是高可用集群的两个关键组件,在 Heartbea 阅读全文
posted @ 2024-08-13 19:10
鲸鱼的海老大
阅读(40)
评论(0)
推荐(0)
摘要:
MumPy:数组计算 1、NumPy是高性能科学计算和数据分析的基础包。它是pandas等其他各种工具的基础。2、NumPy的主要功能: ndarray,一个多维数组结构,高效且节省空间 无需循环对整组数据进行快速运算的数学函数 *读写磁盘数据的工具以及用于操作内存映射文件的工具 *线性代数、随机数 阅读全文
posted @ 2024-08-13 18:17
鲸鱼的海老大
阅读(79)
评论(0)
推荐(0)
摘要:
pandas简单介绍 1、pandas是一个强大的Python数据分析的工具包。 2、pandas是基于NumPy构建的。 3、pandas的主要功能 具备对其功能的数据结构DataFrame、Series 集成时间序列功能 提供丰富的数学运算和操作 灵活处理缺失数据 4、安装方法:pip inst 阅读全文
posted @ 2024-08-13 18:17
鲸鱼的海老大
阅读(27)
评论(0)
推荐(0)
摘要:
简单介绍Matplotlib 1、Matplotlib是一个强大的Python绘图和数据可视化的工具包 2、安装方法:pip install matplotlib 3、引用方法:import matplotlib.pyplot as plt 4、绘图函数:plt.plot() 5、显示图像:plt. 阅读全文
posted @ 2024-08-13 18:17
鲸鱼的海老大
阅读(34)
评论(0)
推荐(0)
摘要:
IPython的介绍 IPython:和Python一样 如何使用Python进行量化投资 自己编写:NumPy+pandas+Matplotlib+…… 在线平台:聚宽、优矿、米筐、Quantopian、…… 开源框架:RQAlpha、QUANTAXIS、…… 我们先来学习一下IPython,上面 阅读全文
posted @ 2024-08-13 18:16
鲸鱼的海老大
阅读(138)
评论(0)
推荐(0)
摘要:
Redis redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/rem 阅读全文
posted @ 2024-08-13 18:08
鲸鱼的海老大
阅读(85)
评论(0)
推荐(0)
摘要:
Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用C写的,但 阅读全文
posted @ 2024-08-13 18:07
鲸鱼的海老大
阅读(62)
评论(0)
推荐(0)
摘要:
原生操作数据库模块 Pymysql Pymsql是Python中操作MySQL的模块(其使用方法和MySQLdb几乎相同,在python3中,MySQLdb这个库已经不能继续使用了) 下载安装 pip3 install pymysql another way:用集成开发环境pycharm安装模块: 阅读全文
posted @ 2024-08-13 17:55
鲸鱼的海老大
阅读(63)
评论(0)
推荐(0)
摘要:
发展史 1、很久很久以前,Web 基本上就是文档的浏览而已, 既然是浏览,作为服务器, 不需要记录谁在某一段时间里都浏览了什么文档,每次请求都是一个新的HTTP协议, 就是请求加响应, 尤其是我不用记住是谁刚刚发了HTTP请求, 每个请求对我来说都是全新的。这段时间很嗨皮 2、但是随着交互式Web应 阅读全文
posted @ 2024-08-13 17:53
鲸鱼的海老大
阅读(57)
评论(0)
推荐(0)
摘要:
Base64编码由来 为什么会有Base64编码呢?因为有些网络传送渠道并不支持所有的字节,例如传统的邮件只支持可见字符的传送,像ASCII码的控制字符就 不能通过邮件传送。这样用途就受到了很大的限制,比如图片二进制流的每个字节不可能全部是可见字符,所以就传送不了。最好的方法就是在不改变传统协议的情 阅读全文
posted @ 2024-08-13 17:52
鲸鱼的海老大
阅读(89)
评论(0)
推荐(0)
摘要:
Go 目录索引 Go第一篇之轻松入门 Go第二篇之基本语法总结 Go第三篇之大话容器 Go第四篇之流程控制 Go第五篇之浅析函数 Go第六篇之结构体剖析 Go第七篇之规范的接口 Go第八篇之包的使用 Go第九篇之并发大攻略 Go第十篇之反射 Go第十一篇之编译与工具 Go第十二篇之避坑指南 阅读全文
posted @ 2024-08-13 17:46
鲸鱼的海老大
阅读(11)
评论(0)
推荐(0)
摘要:
Django源码目录 Django中自动重载机制的实现 Django 从入口到请求到响应 Django settings懒加载 Django app的加载过程 Django WSGI 初探 Django中服务器结构演变 Django 深入理解WSGI协议 阅读全文
posted @ 2024-08-13 17:41
鲸鱼的海老大
阅读(9)
评论(0)
推荐(0)
摘要:
起步 根据前面的分析实在是有太多太多 Handler ,绕来绕去,今天就从头整理,将一个最基础的服务器慢慢改成类似 django 的服务器结构。 从 simple_server 说起 根据 django 运行的服务器 django.core.servers.basehttp 的 run 函数,我们也 阅读全文
posted @ 2024-08-13 17:41
鲸鱼的海老大
阅读(48)
评论(0)
推荐(0)
摘要:
起步 在第一章说到,django 使用 WSGIServer 作为内置服务器软件,这个类的实现在 django/core/servers/basehttp.py 文件中定义,这个类继承自 wsgiref.simple_server.WSGIServer 。django中自带的各种 ServerHan 阅读全文
posted @ 2024-08-13 17:41
鲸鱼的海老大
阅读(86)
评论(0)
推荐(0)
摘要:
上一篇介绍到了 Settings 的懒加载机制,配置懒加载也就完成了,程序就回到 execute 函数,接下去就是运行 django.setup() 函数了。 django.setup() 启动程序 这个代码在 django/__init__.py 中: def setup(set_prefix=T 阅读全文
posted @ 2024-08-13 17:41
鲸鱼的海老大
阅读(95)
评论(0)
推荐(0)
摘要:
关于动态导入模块(importlib) 动态导入模块方法1: __import__ 说明: 1. 函数功能用于动态的导入模块,主要用于反射或者延迟加载模块。 2. __import__(module)相当于import module 举例说明: 首先创建一个模块目录lib,然后在目录内创建一个模块为 阅读全文
posted @ 2024-08-13 17:40
鲸鱼的海老大
阅读(109)
评论(0)
推荐(0)
摘要:
起步 在我研究完 django 的自动加载机制后,有了阅读 django 源码的想法。那就看看吧,也不知道能坚持到什么地方。我阅读的版本也是我正在使用的 1.10.5 版本,算是比较新的了。 一般运行 django 程序都是通过: python manage.py runserver 开始的,那我们 阅读全文
posted @ 2024-08-13 17:40
鲸鱼的海老大
阅读(82)
评论(0)
推荐(0)
摘要:
经过分析,它的流程大致是这样的,django 程序启动的时候,会启动两个进程(不是线程),在主线程上,监听文件的变化,当发现有文件变化时,重新启动子进程;而那个子进程就是具体的 web 服务。 两个进程 关于重载的实现方式在 django/utils/autoreload.py 中,重启的设置在 p 阅读全文
posted @ 2024-08-13 17:40
鲸鱼的海老大
阅读(180)
评论(0)
推荐(0)
摘要:
Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器。 Docker 容器通过 Docker 镜像来创建。 容器与镜像的关系类似于面向对象编程中的对象与类。 Docker面向对象 容器 对象 镜像 类 Docker 镜像(Images) Docker 镜 阅读全文
posted @ 2024-08-13 17:38
鲸鱼的海老大
阅读(23)
评论(0)
推荐(0)
摘要:
Ubuntu Docker 安装 Docker 支持以下的 Ubuntu 版本: Ubuntu Precise 12.04 (LTS) Ubuntu Trusty 14.04 (LTS) Ubuntu Wily 15.10 其他更新的版本…… 前提条件 Docker 要求 Ubuntu 系统的内核版 阅读全文
posted @ 2024-08-13 17:38
鲸鱼的海老大
阅读(206)
评论(0)
推荐(0)
摘要:
Docker Hello World Docker 允许你在容器内运行应用程序, 使用 docker run 命令来在容器内运行一个应用程序。 输出Hello world codercto@codercto:~$ docker run ubuntu:15.10 /bin/echo "Hello wo 阅读全文
posted @ 2024-08-13 17:38
鲸鱼的海老大
阅读(42)
评论(0)
推荐(0)
摘要:
Docker 安装 Nginx 方法一、docker pull nginx(推荐) 查找 Docker Hub 上的 nginx 镜像 codercto@codercto:~/nginx$ docker search nginx NAME DESCRIPTION STARS OFFICIAL AUT 阅读全文
posted @ 2024-08-13 17:37
鲸鱼的海老大
阅读(193)
评论(0)
推荐(0)
摘要:
容器生命周期管理 run start/stop/restart kill rm pause/unpause create exec 容器操作 ps inspect top attach events logs wait export port 容器rootfs命令 commit cp diff 镜像 阅读全文
posted @ 2024-08-13 14:07
鲸鱼的海老大
阅读(28)
评论(0)
推荐(0)
摘要:
阅读全文
posted @ 2024-08-13 14:04
鲸鱼的海老大
阅读(17)
评论(0)
推荐(0)
摘要:
前言 1 我在实例化一个user对象的时候,可以user=User(name='lqz',password='123') 2 也可以 user=User() user['name']='lqz' user['password']='123'3 也可以 user=User() user.name='l 阅读全文
posted @ 2024-08-13 14:03
鲸鱼的海老大
阅读(34)
评论(0)
推荐(0)
摘要:
起步 惭愧啊,惭愧啊,距离上一篇这个系列的文章已经是半年前的了,随着 Django2.0 的发布,感觉之前分析的 1.10.5 版本似乎有点老了,我看了一下,好在和我前面文章分析的内容差异不大,基本上也是可以就着前面的分析内容来品尝最新的 django 代码。 那我接下来阅读的版本就从当前能获取的 阅读全文
posted @ 2024-08-13 13:54
鲸鱼的海老大
阅读(149)
评论(0)
推荐(0)
摘要:
C 多线程 C 程序中经常同时执行多项任务。例如,一个程序可能: (1) 在执行程序过程中通过完成并行任务来提高性能。 (2) 在处理用户输入的同时,在后台进行耗时的数据通信和实时操作。 通过并行执行(concurrent execution)程序中的部分代码,可以实现不同任务同时进行。特别是在多处 阅读全文
posted @ 2024-08-13 13:38
鲸鱼的海老大
阅读(198)
评论(0)
推荐(0)
摘要:
C运行时库函数C运行时库函数是指C语言本身支持的一些基本函数,通常是汇编直接实现的。 API函数API函数是操作系统为方便用户设计应用程序而提供的实现特定功能的函数,API函数也是C语言的函数实现的。区别他们之间区别是:API函数是针对操作系统的,C语言运行时函数则是针对C语言本身的。 ·1、运行时 阅读全文
posted @ 2024-08-13 13:29
鲸鱼的海老大
阅读(285)
评论(0)
推荐(0)

浙公网安备 33010602011771号