Python 的 asyncio 类似于 C++ 的 Boost.Asio。 所谓「异步 IO」,就是你发起一个 IO 操作,却不用等它结束,你可以继续做其他事情,当它结束时,你会得到通知。 Asyncio 是并发(concurrency)的一种方式。对 Python 来说,并发还可以通过线程(th ...
分类:
编程语言 时间:
2018-08-10 10:54:10
阅读次数:
187
阻塞IO(操作系统支持的功能):应用程序的线程 调用操作系统的IO操作,操作系统默认会主动把应用程序的线程设为sleep状态,直到操作系统完成IO,准备好数据后才将应用程序的线程唤醒 阻塞状态下,这个线程会被操作系统强制挂起(设为sleep),无法执行后边的操作。 非阻塞IO(操作系统支持的功能): ...
分类:
其他好文 时间:
2018-08-05 14:25:45
阅读次数:
133
ceph + ceph是一个分布式存储系统 + Ceph提供了三种存储类型:块存储、文件存储和对象存储,本文主要介绍对象存储的RGW基本原理和应用场景。 CRUSH算法 + 一般的分布式系统都会采用一个或者多个中心服务用来控制数据的分布,这种机制使得每次IO操作都会先去一个地方查询数据在集群中的元数 ...
分类:
其他好文 时间:
2018-08-05 12:56:29
阅读次数:
132
摘要 尽管Java提供了一个可以处理文件的IO操作类。 但是没有一个复制文件的方法。 复制文件是一个重要的操作,当你的程序必须处理很多文件相关的时候。 然而有几种方法可以进行Java文件复制操作,下面列举出4中最受欢迎的方式。 1.使用File Streams复制 这是最经典的方式将一个文件的内容复 ...
分类:
编程语言 时间:
2018-08-05 10:27:00
阅读次数:
216
所谓超时,就是一段时间用户没有做出任何操作,这里需要了解 select select select 用法与 switch 语言非常类似,由 select 开始一个新的选择块,每个选择条件由 case 语句来描述 case 语句里必须是一个 IO 操作 select语句中,会按顺序从头至尾评估每一个发 ...
分类:
其他好文 时间:
2018-08-04 11:35:58
阅读次数:
149
一、概念 APM即异步编程模式的简写(Asynchronous Programming Model)。大家在写代码的时候或者查看.NET 的类库的时候肯定会经常看到和使用以BeginXXX和EndXXX类似的方法,其实你在使用这些方法的时候,你就再使用异步编程模型来编写程序。NET Framewor... ...
分类:
其他好文 时间:
2018-08-01 11:58:39
阅读次数:
175
1. Netty简介 Netty是一个高性能、异步事件驱动的NIO框架,基于JAVA NIO提供的API实现。它提供了对TCP、UDP和文件传输的支持,作为一个异步NIO框架,Netty的所有IO操作都是异步非阻塞的,通过Future-Listener机制,用户可以方便的主动获取或者通过通知机制获得 ...
分类:
Web程序 时间:
2018-07-31 23:35:13
阅读次数:
232
#!/usr/bin/env python # Author:Zhangmingda import gevent,time def func1(): print('第一个任务开始....') gevent.sleep(2) #模拟遇到IO操作,自动切换任务 print('第一个任务干完了!') de ...
分类:
其他好文 时间:
2018-07-31 17:17:29
阅读次数:
169
引语 作为工程师,不能仅仅满足于实现了现有的功能逻辑,还必须深入认识系统。一次请求,流经了哪些方法,调用了多少次DB操作,多少次API操作,多少次IO操作,多少CPU操作,各耗时多少 ? 开发者必须知道这些运行时数据,才能对系统的运行有更深入的理解,更好滴提升系统的性能和稳定性。 完成一次订单导出任 ...
分类:
其他好文 时间:
2018-07-28 00:15:16
阅读次数:
323
进程是不能无限开启的 如果必须要用多个进行 而且是高计算型 没有IO操作的程序 希望并行最充分的使用cpu ...
分类:
系统相关 时间:
2018-07-26 18:32:58
阅读次数:
153