一.Scrapy五大核心组件工作流程 1.核心组件 2.工作流程 1. spider中的url被封装成请求对象交给引擎(每一个url对应一个请求对象); 2. 引擎拿到请求对象之后, 将其全部交给调度器; 3. 调度器拿到所有请求对象后, 通过内部的过滤器过滤掉重复的url, 最后将去重后的所有ur ...
分类:
其他好文 时间:
2019-03-25 20:41:14
阅读次数:
201
客户端 请求 apiserver > shceduler node(kubelet或kube-proxy) 请求 apiserver 来进行pod和service创建,iptable和ipvs规则改写 调度器 先进行预选再进行优选 ,最后进行select 调度器: 预选策略: CheckNodeCo ...
分类:
其他好文 时间:
2019-03-25 01:21:01
阅读次数:
165
对负载均衡来讲,最关键的就是调度器了网络传输层数:下四层由内核来管理及实现,被称为通信子网,最上面三层,叫应用层,在用户空间实现,叫做资源子网lvs是四层的负载均衡器,而且是真正附着在netfilter(内核通信过滤或操作框架)不需要向内核监听注册某一端口,不再受套接字文件数量的限制,直接修改报文扔给后端,不需要自己扮演任何角色tcp协议栈有65536个端口,主机只要向外发请求,就会用ip打开一个
分类:
其他好文 时间:
2019-03-16 23:32:34
阅读次数:
233
写在前面在上一篇关于Kubernetes资源限制的文章我们讨论了如何通过ResourceRequirements设置Pod中容器内存限制,以及容器运行时是如何利用LinuxCgroups实现这些限制的。也分析了requests是用来通知调度器Pod所需资源需求和limits是在宿主机遇到内存压力时帮助内核限制资源二者的区别。在本文中,我会继续深入探讨CPU时间的requests和limits。你是
分类:
Web程序 时间:
2019-03-15 10:35:44
阅读次数:
261
redis分布式部署 1.scrapy框架是否可以自己实现分布式? - 不可以。原因有二。 其一:因为多台机器上部署的scrapy会各自拥有各自的调度器,这样就使得多台机器无法分配start_urls列表中的url。(多台机器无法共享同一个调度器) 其二:多台机器爬取到的数据无法通过同一个管道对数据 ...
分类:
其他好文 时间:
2019-03-06 20:42:10
阅读次数:
194
1、scrapy框架是否可以自己实现分布式? 答:不可以。原因有二: 其一:因为多台机器上部署的scrapy会各自拥有各自的调度器,这样就使得多台机器无法分配start_urls列表中的url。(多台机器无法共享同一个调度器) 其二:多台机器爬取到的数据无法通过同一个管道对数据进行统一的数据持久出存 ...
分类:
其他好文 时间:
2019-03-05 21:36:52
阅读次数:
139
问题: 为什么原生的scrapy不能实现分布式? 调度器不能被共享 管道无法被共享 scrapy-redis组件的作用是什么? 提供了可以被共享的调度器和管道 调度器不能被共享 管道无法被共享 提供了可以被共享的调度器和管道 实现分布式爬虫的流程? 【需求】爬取抽屉网中的标题和作者 代码部分: ch ...
分类:
其他好文 时间:
2019-03-05 19:55:24
阅读次数:
163
典型Linux操作系统结构图、IO调度器在内核栈中的位置图
分类:
系统相关 时间:
2019-03-01 17:05:46
阅读次数:
206
MariaDB安装方式:包管理器(rpm,deb)通用二进制格式;源码编译安装;SQL:数据库、表、索引、视图、存储过程、存储函数、触发器、事件调度器、用户和权限;元数据数据库:库名为mysqlMYSQL语句:有2种DDL,DMLDDL:CREATE,ALTER,DROPDML:INSERT,DELETE,UPDATE,SELECTDCL:GRANT(授权),REVOKE(撤销授权)MariaDB
分类:
数据库 时间:
2019-02-27 23:28:07
阅读次数:
350
Thread.sleep()1.静态方法是定义在Thread类中。2.Thread.sleep()方法用来暂停当前执行的线程,将CPU使用权释放给线程调度器,但不释放锁(也就是说如果有synchronized同步快,其他线程仍然不能访问共享数据),进入sleeping状态 的线程不能被notify方 ...
分类:
其他好文 时间:
2019-02-20 10:09:14
阅读次数:
176