标签:ThreadPoolExecutor

编程技术

深入解析OkHttp3

2

wenming.gapo 发布于 2017-01-09

OkHttp是一个精巧的网络请求库,有如下特性: 1)支持http2,对一台机器的所有请求共享同一个socket 2)内置连接池,支持连接复用,减少延迟 3)支持透明的gzip压缩响应体 4)通过缓存避免重复的请求 5)请求失败时自动重试主机的其他ip,自动重定向 6)好用的AP...

阅读(16)评论(0)赞 (0)

编程技术

Java多线程(4):使用线程池执行定时任务

8

changyuan.xu 发布于 2017-01-07

在现实世界里,我们总是免不了要定期去做一件事情(比如上课)—— 在计算机的世界里,更是如此。比如我们手机每天叫我们起床的电子闹钟,某些网站会定期向我们发送一些推荐相关的邮件,集群中我们需要每隔一定时间检查是否有机器宕机等。 在 使用线程池 中已经介绍,JDK 1.5 时,标准类库...

阅读(13)评论(0)赞 (0)

编程技术

“MySQL server has gone away” in django ThreadPoolExecutor

xirruiqiang 发布于 2017-01-07

MySQL server has gone away报错 最近碰到 MySQL server has gone away 的报错,报错出现的现象是: 生产环境周末到周一上午会出现一些间断的报错,晚些恢复正常 测试环境每天上午会出现间断报错,晚些恢复正常 出错的场景都是通过 Thr...

阅读(18)评论(0)赞 (0)

编程技术

Python并发编程之线程池/进程池

1

邓龙华 发布于 2016-12-26

本文为作者原创,转载请先与作者联系。 首发于 我的博客 引言 Python标准库为我们提供了threading和multiprocessing模块编写相应的多线程/多线程代码,但是当项目达到一定的规模,频繁创建/销毁进程或者线程是非常消耗资源的,这个时候我们就要编写自己的线程池/...

阅读(24)评论(0)赞 (0)

编程技术

使用 Python 进行并发编程之 asyncio 篇(一)

3

puefu.he 发布于 2016-12-20

由于asyncio有非常多的内容,且对Python工程师非常重要,我将分为三篇文章来介绍它。本篇还不是 关于使用asyncio进行网络编程 的文章,而是继续并发主题,看看使用asyncio怎么实现高效的并发程序。 前言 在Python 2的时代,高性能的网络编程主要是使用Twis...

阅读(19)评论(0)赞 (0)

编程技术

每日一博 | 如何写一个 jstack 检测不到的死锁

2

puefu.he 发布于 2016-12-17

通常java程序排查死锁的办法是通过jstack 打印出线程信息,里面会直接显示发生死锁的情况。这里我们先解释下查死锁可以采用的两种办法。然后我们写一个用普通的方法检测不到的死锁。 这里我们先贴一个简单的发生死锁的代码。 //class A public class A impl...

阅读(23)评论(0)赞 (0)

编程技术

理解 Python 并发编程一篇就够了(PoolExecutor 篇)

1

zhuangli 发布于 2016-12-13

之前我们使用多线程(threading)和多进程(multiprocessing)完成常规的需求,在启动的时候start、jon等步骤不能省,复杂的需要还要用1-2个队列。随着需求越来越复杂,如果没有良好的设计和抽象这部分的功能层次,代码量越多调试的难度就越大。有没有什么好的方法...

阅读(346)评论(4)赞 (0)

编程技术

关于对象池的一些分析

zhuangli 发布于 2016-12-12

在日常的开发工作中,我们可能使用或者听说过对象池,线程池以及连接池。本文将介绍对象池的产生缘由,具体实现细节,以及需要注意的问题。 什么是对象池(模式) 对象池(模式)是一种创建型设计模式 它持有一个初始化好的对象的集合,将对象提供给调用者。 对象池的目的 减少频繁创建和销毁对象...

阅读(22)评论(0)赞 (0)

编程技术

ThreadPoolExecutor使用错误导致死锁

xiaoli.wang 发布于 2016-12-12

背景 10月2号凌晨12:08收到报警,所有请求失败,处于完全不可用状态 应用服务器共四台resin,resin之前由四台nginx做负载均衡 服务器现象及故障恢复步骤 登入服务器,观察resin进程,初看无任何异常,且占用资源正常,有非业务逻辑相关(一些schedule tas...

阅读(20)评论(0)赞 (0)

编程技术

OkHttp3 源码浅析

2

yanxinchi 发布于 2016-12-12

之前的底层网络库基本就是Apache HttpClient和HttpURLConnection。由于HttClient比较难用,官方在Android2.3以后就不建议用了,并且在Android5.0以后废弃了HttpClient,在Android6.0更是删除了HttpClien...

阅读(25)评论(0)赞 (0)

编程技术

每日一博 | 关于 jvm 分析的指令及 jprofiler 初体验

8

xiaoli.he 发布于 2016-12-03

介绍: 初步学习了一下linux相关获取jvm运行情况以及内存的对象状况的和获取dump文件的命令,以及利用jprofiler打开dump文件,利用jprofiler启动项目实时监控内存。但是只是模拟了一下,实际运用场景还是有待说明,感觉主要靠经验。 第一点,top命令 top命...

阅读(21)评论(0)赞 (0)

编程技术

AsyncTask 源码分析

xirruiqiang 发布于 2016-09-04

AsyncTask enables proper and easy use of the UI thread. This class allows to perform background operations and publish results on the UI thr...

阅读(119)评论(0)赞 (0)

编程技术

[原]将拥有一份更加整洁的代码并提高了MyBatis 的可用性

3

puefu.he 发布于 2016-08-22

【公告】博客系统优化升级 Unity3D学习,离VR开发还有一步 博乐招募开始啦 虚拟现实,一探究竟 将拥有一份更加整洁的代码并提高了MyBatis 的可用性 版权声明:本文为博主原创文章,未经博主允许不得转载。 命名空间(Namespaces)在之前版本的 MyBatis 中是...

阅读(142)评论(0)赞 (0)

编程技术

[原]实现异步可以采用多线程技术或者交给另外的进程来处理

3

likai 发布于 2016-08-21

【公告】博客系统优化升级 Unity3D学习,离VR开发还有一步 博乐招募开始啦 虚拟现实,一探究竟 实现异步可以采用多线程技术或者交给另外的进程来处理 版权声明:本文为博主原创文章,未经博主允许不得转载。 1、 并发: 在操作系统中,是指一个时间段中有几个程序都处于已启动运行到...

阅读(83)评论(0)赞 (0)

编程技术

用 Python 和 asyncio 来编写多人在线游戏(二)

尖兵 发布于 2016-08-18

本文作者为 Kyrylo Subbotin,是一家 IT 咨询公司的 Python 工程师。本文译者为 sleepyjoker,由编程派作者 EarlGrey 校对。 译者简介:sleepyjoker,东南大学电子科学与工程专业大二学生。虽然暂时还是python菜鸟,但喜欢通过代...

阅读(64)评论(0)赞 (0)

编程技术

Python网络爬虫4 – 多线程抓取

puefu.he 发布于 2016-08-13

之前的内容已经大致实现了如何获取网页、分析网页、获取目标内容。接下来的目标是如何让网页抓取进行得更效率些。在进行抓取的时候,时间的消耗主要是在请求等待的时间上,所以一个最容易想到的优化方式就是使用多线程。 多线程 多线程的实现还是比较简单的,下面是一个简单的线程实现方案: #!p...

阅读(71)评论(0)赞 (0)

编程技术

如何独立开发一个网络请求框架

邓龙华 发布于 2016-08-13

(原创出处为本博客:http://www.cnblogs.com/linguanh/) 目录: 前言 准备工作 开发模式 开发原则 线程 高并发 TCP/UDP 本类介绍 开发选择 功能列表 优点 拓展 完整代码 用法例子 前言: 已开源到 GitHub ,希望大家能够和我一起来...

阅读(54)评论(0)赞 (0)

编程技术

Java 并发学习笔记总结

尖兵 发布于 2016-08-11

并发 最近重新复习了一边并发的知识,发现自己之前对于并发的了解只是皮毛。这里总结以下Java并发需要掌握的点。 使用并发的一个重要原因是提高执行效率。由于I/O等情况阻塞,单个任务并不能充分利用CPU时间。所以在单处理器的机器上也应该使用并发。 为了实现并发,操作系统层面提供了多...

阅读(56)评论(0)赞 (0)