`
53873039oycg
  • 浏览: 825885 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

[简单]工作记录_多线程相关

 
阅读更多

     最近遇到多线程的问题,原来使用异步请求多个接口(n*3次请求)
     方案一 使用多线程一次返回数据,最开始是使用5个线程,一个线程顺序请求3个接口,超时终止返回
     缺点       测试发现必须3个接口全部成功才能取到数据,遇到部分接口失败数据拿不到
    
    方案二 使用6个线程,2个线程请求同一个接口,每个线程处理n/2个数据,超时终止返回
    缺点       测试发现,可能1个接口失败导致无法处理后面的数据

 

      以上方案都已失败告终,测试发现多线程取数据效果比异步请求差,异步请求显示是成功一个显示一个,多线程方案可能由于单个接口失败导致数据不完整

  

     方案三:由于瓶颈在数据接口部分,使用6个线程,一个线程处理一个请求,成功的请求继续处理其他未处理的数据,请求失败重试3次,超时终止返回
  

    方案四:优先使用多线程请求一次接口,失败后从缓存中取数据,本方案不能保证数据的实时性

分享到:
评论

相关推荐

    java多线程_java多线程下变量共享_

    一个简单记录java多线程下变量共享问题,分析多线程内部运行

    Delphi中用多线程实现日志文件的读写与管理

    Delphi中用多线程实现日志文件的读写与管理

    VB6实现多线程数据库大数据查询

    多线程在.net中实现是非常容易的。 VB6本身无法实现多线程编程,但是通过第三方控件,也可以很完美的实现多线程。 本例实现的是在主界面开一个新的线程在后台完成数据查询并根据提供的每页显示的数据行数计算出总...

    Python_多线程与多进程编程_part2

    上一节记录了多线程技术以及Python多线程的的简单上手.毫无疑问,多线程是为了充分利用硬件资源尤其是CPU资源来提高任务处理效率的技术。将任务拆分为多个线程同时运行,那么属于同一个任务的多个线程之间必然会有...

    QuartzSpringBatch多线程实现

    多线程有个问题就是数据安全性,那么加锁是解决这个问题的唯一方法,另外一个问题是对数据库里面数据的重复读取,那么只能对数据库表进行加锁,虽然这样做了,但是发现还会有一条记录重复读取,不过总比每条线程都...

    CESock类 多线程实现简单易用的套接字

    多线程方式实现简单易用的套接字,使用TCP协议 阻塞方式. 最大发送数据字节数不宜超过1KB. 同时实现了客户端及服务器端功能,可接收及发送数据. 版本: v1.0.0 第一版本发布时间: 20100823 第一作者: Jef ...

    QT 多线程服务器客户端通信程序

    QT写的多线程Socket服务器+多客户端,虽然用qt做socket服务器不太合适,但是毕竟客户要求就做了,本以为很简单,后来才发现QT的QTcpServer真的不太好用,参考了好多网上的教程才弄明白,顺便记录一下,有需要的可以...

    基于socket的多线程QQ聊天系统(代码+问题分析+解决方案)

    编写简单的多线程 web服务器 实现过程: 该实验我做的是一个聊天系统,实现的功能是: 服务端可以任意指定一个端口号建立服务器,等待的客户的连接,若有客户连接上,则有相应的提示,断开连接也有相应的提示,此外...

    Java多线程下载 超简单、详细的例子

    自己看着文档一步一步理解敲出来的代码。 代码很简洁,注释非常非常...使用纯 Java 实现的多线程下载。如果再配上数据库或者记录下载的进度。 就可以实现了断点下载了,但是我现在还没弄。 分享出来吧。让大家少走弯路

    java多线程学习.txt

    java多线程学习笔记,主要记录多线程的一些基础概念,多线程简单的使用方式

    java简易投票系统源码下载-StudyThread:学习多线程记录

    简介:个人学习多线程所记录; 1.Java多线程技能 1.1 进程和多线程的概念及线程的优点? 讲到多线程技术时,就不得不提及"进程"这个概念了。百度对进程的接受如下: 进程:是操作系统的基础,是一次程序的执行,是一...

    GDB 多线程调试基本命令

    一直对 GDB 多线程调试接触不多,最近因为工作有了一些接触,简单作点记录吧。 先介绍一下 GDB 多线程调试的基本命令。

    Qt下多任务和多线程资料

    记录了Qt下的多任务和多线程机制和原理,Qt的多线程虽然看起来比较简单,但是涉及到线程之间的消息传递就比较容易出问题。

    Java多线程与线程安全实践-基于Http协议的断点续传的实现.rar

    多线程下载:首先,需要实现多线程下载文件的功能。可以使用Java中的多线程技术,例如通过创建多个线程同时下载文件的不同部分,从而提高下载速度和效率。 断点续传设计:为了支持断点续传,需要在下载过程中记录已...

    模拟时钟(多线程)

    模拟实现一个时钟,可手动调整时间,到整点时,可提示该整点次的声音,半点时,仅提示一次声音,同时将用户手动调整过的时间记录到文本文件中。声音必须联网才可!

    C#多线程ping和DOS工具

    如192.168.1.1 - 192.168.1.254(处理的IP数254) 或者 192.168.1.1 - 192.168.254.244(像这处理的IP数6万多个) 1秒钟大约可以测出50个IP地址的连通性,用的是多线程技术,如果用单线就太慢了,对ping完的结果做了...

    c#多线程抓取网页内容

    爬虫作为特殊的下载工具,不具备多线程的能力何以有效率可谈?爬虫在信息时代的目的,难道不是快速获取信息吗?所以,爬虫需要有多线程(可控数量)同时下载网页。 好了,认识、分析完问题,就是解决问题了: 多...

    Java毕业设计-Java多线程与线程安全实践-基于Http协议的断点续传.rar

    1. 多线程下载:项目使用Java的多线程功能,将文件分成多个部分,每个部分由一个线程负责下载。这样可以充分利用网络带宽,提高下载速度。 2. 线程安全:项目中的多个线程需要共享资源,如文件、网络连接等。为了...

    多线程实现的Java爬虫程序

    以下是一个Java爬虫程序,它能从指定主页开始,按照指定的深度抓取该站点域名下的网页并维护简单索引。  参数:private static int...  本程序用到了多线程(静态变量和同步),泛型,文件操作,URL类和连接,Hashtabl

    C#线程锁介绍源码

    只有可以被多线程访问的共享资源才需要考虑锁定,比如静态变量,再比如某些缓存中的值,而属于线程内部的变量不需要锁定。 2)多使用lock,少用Mutex 如果你一定要使用锁定,请尽量不要使用内核模块的锁定机制,...

Global site tag (gtag.js) - Google Analytics